Tired of dealing with writing long messages in a <textarea> on a web page?
Usually, I'll copy out whatever draft I'm working on, fire up a new terminal window, paste the text into vim, edit it, and copy it back.
Copying it back is something of a pain at times. If it's a long bit of text that doesn't fit into a window, I scroll to the top, and copy it back in chunks. About as smooth as coarse grit sandpaper.
Of course, there is a better way -- just filter the entire buffer through pbcopy, and paste it back in one big chunk. (In vim, that translates into ESC H !G pbcopy <CR>)
(If only this hack would work as smoothly in Win* or my Ubuntu config...)
There are some Firefox extensions which make this even easier. Currently I'm using ViewSourceWith, which doesn't just do what it says but also provides a way of loading the contents of text areas into external editors.
You right-click in a text area and select a menu item to fire up the editor, then save stuff in the editor and it gets reflected in the browser. I'm using it on Linux with Vim (gvim
).
Note also that the Vim keystroke H
only moves to the top line currently being displayed; to move to the first line of the document (even if it's scrolled off the top) use gg
. But actually the simplest way to filter an entire document (which doesn't depend on where you currently are in it) is to do:
On Linux the selection in Vim is automatically also the X selection, and the clipboard is accessible as the +
register. So you can highlight an entire document with ggVG
and then copy that to the clipboard with "+y
. I haven't used a Mac, so I don't know if that also applies there.
(Finally, don't think of Esc
as being a prefix needed before normal-mode commands in Vim; it's the last step to finish an insert, not the first step of the following command, that is it's not needed when you use several normal-mode commands in a row. Vim becomes much easier to deal with once your mental model of its modes matches how it does things!)
Smylers