User:JamieCooper

About me
Hi there! My name is Jamie Cooper, and I started using Vim around May 2007. I immediately fell in love with it. I really view it as my text editor, with all the customizations I've done. I previously used Notepad++ as my editor of choice, but it just can't compare to Vim. I mean, not at all. Notepad++ is a decent editor...I prefer it over many other highly acclaimed editors such as UltraEdit. But, Notepad++ (and pretty much all similar editors) aren't even in the same league as Vim. The limitless customizability, the modal editing paradigm, the speed and efficient use of system resources...I really can't picture myself using anything else ever again.

I'm a bit unique in that I use a Dvorak keyboard layout, but have absolutely nothing in my vimrc file to map keys, etc. for it. I had been putting off trying Vim for a long time, because some people told me it would be really hard to learn, since it was designed for QWERTY. As it turns out, I think Dvorak made it easier to learn Vim. Almost all the commands are simply mnemonic letters - 'a' for append, etc. The only ones I've found that aren't are the movement commands: hjkl. Dvorak actually helped me on these commands. Up and down are with the left hand, and right and left are the right hand in Dvorak. This separation lessened the learning curve. In addition, to move around, my fingers can stay in the normal typing position (although not on the home row) instead of shifting my right hand over by one position to have all four fingers on the movement keys. I've found that using Dvorak does change my usage of Vim, however. I use a lot of commands that others probably don't, just because they are easier to reach! For example, on Dvorak, the _ is on the home row. I use it all the time as a replacement for ^.

Vim expertise
Some things I'm currently playing with and would love to see tips on:


 * 'formatexpr'
 * The interaction between formatting with tw/gq, and auto-indentation

Some things I've played with in the past and might be able to help out with:


 * indentexpr stuff
 * formatexpr stuff
 * ftplugin files for my own custom file types
 * Adding things (like syntax folding) to an existing syntax file (using the 'after' directory)
 * Mappings and abbreviations (regular and expression-type)
 * Regular expressions (I consider myself quite skilled with these, but I still occasionally learn something new!)
 * Creating a new file type and syntax file
 * Filetype detection
 * Autocmds
 * Creating text objects

To do
These are mainly reminders to myself, but someone else can feel free to step in and do them, or give me suggestions. I'm pretty busy so it will probably be a while before I can find time for all of these.

On the wiki:
 * Re-work Syntax folding of Vim scripts to make fold groups contain built-in constructs instead of vice-versa. The vimNoFold cluster is nice, but it is growing out of control.
 * Vim command line options tip?

Off the wiki:
 * Make batch file to find and update specific Vim version in file associations in the Windows registry when upgrading Vim
 * Make patch for optwin.vim that doesn't switch windows (use getwinvar and getbufvar instead)
 * Make a C preprocessor debugger plugin, unless I can find an existing one somewhere (or an existing external application).

Done:
 * Make patch for syntax/perl.vim to fold blocks that do not meet the exact coding style of the maintainer, and highlight as many quote-like delimiters as possible in regexes, etc. I'm really annoyed that perl files that do not match the coding style of the maintainer are highlighted and/or folded improperly. Done: see patch

Where you'll see me
I try to be fairly active on this wiki, and I'll also sometimes post to the vim_use mailing list. Occasionally you may even see me in #vim on Freenode.