* autocomplete - say that I've declared a constant variable in Perl
named MY_CONSTANT, later, to have the editor fill it in, I type in
MY_, and some other key-stroke, and "CONSTANT" gets typed in for you
Well, I usually just use ^N and ^P in insert mode to cycle
through available completion options. There are other features
for autocompletion as well, but I've not needed to use them.
Likely, others will address this.
* goto when compiling - when compiling with make for example, and
there is a problem in the code identified by a line, can vim somehow
know to go to that line? this would be especially useful with 'make'
:help make
:help 'errorformat'
* rectangular cut/pastes - if I have a column (multi-row) of text
that I'd like to paste on several lines, can I do this without a regex?
Usually just control+V (as "v" is characterwise selections and
shift+v is line-wise selecting). However, if you've got
mswin.vim being sourced, it might be remapped to control+Q
* ctags variable name references - assuming I'm using ctags, how can
I replace the name of a variable throughout my code base?
Not sure on this one. One can add the files in question to the
argument/buffer list and then use
:argdo %s/foo/bar/g
or
:bufdo %s/foo/bar/g
to change "foo" to "bar" across the files in question. Others
may know more here.
* regional undo - can I select a region, and perform an undo for all
of the changes only in that region?
Not as far as I know.
* cvs/diff mode - what support does vim offer for these two apps,
internal to the editor.
Vim has an internal diff mode (or at least makes use of some sort
of external diff tool):
vimdiff file1.txt file2.txt
or
vim -d file1.txt file2.txt
Alternatively, you can open the two files normally:
vim file1.txt file2.txt
and then use
:diffthis
:vert sn
:diffthis
or
:vert sn
:windo diffthis
to open them both and configure them with "diff" settings.
I'll be glad to RTFM for all of these things, however I don't know
where to look them up - any pointers would be appreciated!
Additionaly entry-points in the help would be
:help complete
:he complete-items
:he compl-generic
:he argdo
:he windo
:he bufdo
:he blockwise-visual
:he diff.txt
:he diffthis
:he diff
:he :vert
Hope this helps,
-tim