:!mv in fact seems to be the canonical way to rename a file (in plain command-line mode. The built-in netrw browser (:Explore) has R for this, NERDTree probably some similar)

Just in case – do you know this wonderful compilation:
http://www.rayninfo.co.uk/vimtips.html

And many, many thanks for all your CakePHP work! Wish you a lot of fun with the Vim – you certainly deserve it ;-)

Stefan on 5/27/11

P.S. / Remembering commands:

while aforementioned Best of Vim Tips is full of fun, but rather LARGE, imho this VIMQUICKREFERENCECARD is a nice compilation of basic commands:

http://tnerual.eriogerg.free.fr/vimqrc.html

Stefan on 5/27/11

I don’t know if it’s cheating or not, but I guess I lean on profile settings in .bashrc, .vimrc, and so forth pretty heavily. Well, just today I discovered that Eclipse’s Remote System Monitor group of views are actually amazingly easy to deal with – at least, for me. I was able to shell into both my dev and my production boxes with absolutely 0 muss / fuss / bother, and open terminals on both. Silly as it may sound to pop open something like Vi in an IDE like Eclipse, the ability to tinker with config settings, scripts and the metric ton of stuff that’s not checked out into my workspace? Made of win.

PS. CakePHP 2.0 Stable – codename: Made of Win. And, I follow this blog like a puppy. That is all.

Are you using Fugitive for working with Git? It’s a little hard to get used to buts it’s fantastic!

Inside of a file that is under git source control, type :Gstatus and it will bring up a split window with the output of the git status command. The magic starts when you move down to a file in the git status. You can type – (hyphen) and it will interactively add that file to the staging area (or unstage if it’s already staged).

Then you can do :Gcommit to write a commit message in a split window.

You can also do :Gdiff and it will create a vertical split window of the file showing you the diff. Which you can then edit in real time and have both panes change so as you add to the file the diff is showing you the additions.

I highly recommend it (it comes with Janus I believe). I highly recommend any plugin written by Tim Pope.

Brandon Cordell: I am using fugitive, its pretty fantastic as are most of Tim Pope’s plugins.

mark story on 6/21/11

Hey Mark,
I do allot of terminal work myself, have only tried vim in passing but seems like a few enthusiast’s based on all the comments.

Generally use emacs or jed as its called on some Linux platforms, most platforms have a version of it, even mac not that I’ve tried it yet.

I have just moved over to the mac world but use VM’s extensively like yourself. Would love to hear some other useful tools you use in both the mac and linux world. I use putty many times a day still, have you found a good replacement for the mac side i.e. login profile storing ?

Firstly, use pathogen for plugins. It makes them simple, compact, and easy. A lot of vim plugins are on github in pathogen-compatible form (clone, and you’re done. It’s really that simple).

https://github.com/tpope/vim-pathogen
video on installing pathogen and another plugin:
http://www.youtube.com/watch?v=ptsjhRTb19s

tpope, as other people have mentioned, also makes a shitload of awesome vim plugins on github, check them out as well.

Secondly, these tutorial videos are AWESOME. Simply second to none.

http://www.derekwyatt.org/vim/vim-tutorial-videos/

Thirdly, (a bit subjective) ALWAYS make sure you know what all the instructions in your .vimrc do. It makes you much more knowledgeable of vim. I have constructed mine myself and thoroughly commented everything. I don’t think using another person’s distribution is a good idea, unless you know you understand everything it’s doing.

Fourthly, syncing with dropbox IS easy: make a folder in it called ‘vim’ or whatever, and place your .vimrc and .vim folders in it. Then just symlink those two things to ~. Done.

Fifthly, this is much more my personal opinion, I don’t think it’s useful to use plugins which try to get vim to ‘emulate’ other things. It’s modus operandi is really quite alien to almost everything else (any other editor, or OS), and this modus operandi is the reason it is fast. Converting it to other methods of operation just makes you not as fast as you could be doing it natively in vim.

By example, I don’t agree with MacVim helping out with shortcuts for the mac (apart from mayyybe global copy and paste…) [but also MacVim is vim’s main distribution on the mac, so can’t be helped to an extent], I don’t agree with a plugin trying to emulate Textmate (although there are a few, including in the video I linked, that do snippets), and also I much prefer to extend vim’s functionality, rather than modify it.

Last tip: always work with one vim instance. you can do this by having an alias to ‘ —remote-silent’ to start editing. You can pass that as many files as you want.

Ivo on 9/14/11

Thanks for all the tips Ivo. I’m thinking of giving Pathogen a try. I agree with knowing what all the various parts of of your vim config files do. I found Janus to be great for a beginner as you can get started easily, and dig into the details as you learn more.

Mark is a designer and web-developer, working with standards compliant HTML and CSS. He has been building websites since 2000. Currently he is employed at Freshbooks as a developer, and actively contributes to open source projects specifically CakePHP. He uses this site as a place to share what he has learned and made.