Mi vimrc a octubre de 2010
" Lista de plugins que hay que poner en el directorio plugins.
" ($HOME/.vim/plugins en Linux, $VIMRUNTIME/plugins en Windows)
"
" Los plugins se pueden bajar casi todos de:
" http://www.vim.org/scripts
"
" yankring para copypegar entre ventanas de vim y ver el clipboard con ,y
" project.vim, gestor de proyectos (F12, \C para añadir, \R para refrescar)
" pythoncomplete => si tenemos modo Python
" taglist => lista de tags (miembros, funciones, etc) con F5
" tohtml => convierte un fichero vim en HTML coloreado (comando :tohtml)
" vimballPlugin => lo usan otros plugins
" zipPlugin => para ver el contenido de zips
" ack => para usar ack como buscador de ficheros en lugar de grep (http://github.com/mileszs/ack.vim))
" NERD_commenter => ,cc comentar ,cu descomentar
" NERD_tree => arbol de ficheros (F3)
" mru => most recently used files (:MRU)
" bufexplorer => explorador de buffers (F4)
" gzip => abrir ficheros gzip
" matchparen => concordar parentesis
" netrwplugin => abrir ficheros de red (SSH, FTP, http, etc)
" spellfile => no se muy bien que es...
"
" spellchecking: bajar ficheros de idioma de ftp://ftp.vim.org/pub/vim/runtime/spell/ e instalar en spell/
"                · Para poner idioma: set spelllang=en|es
"                · Para activar/quitar: set spell/set nospell
"                · Para ver sugerencias: "z=" cuando estamos sobre la palabra
"                · Para añadir palabra a diccionario: "zg"
"
" no quiero compatibilidad con Vi
set nocompatible
" Activar estas dos en Windows:
source $VIMRUNTIME/mswin.vim
behave mswin
" cargar syntax y demás según el tipo de fichero
filetype plugin on
imap <f2> <c-x><c-o>
" Mi modificador leader es la coma
let mapleader = ","
" Mis settigns de tabs: con 4 carácteres de espacio
set expandtab
"set textwidth=79 => obsoleto
set tabstop=8
set softtabstop=4
set shiftwidth=4
set autoindent
" Atajos para pestañas como los de Firefox/Chrome/Opera/etc
" Control N nueva pestaña (la cerramos con :q o :bd)
map <c-n> <esc>:tabnew<cr>
" Control PageUp/PageDown cambiar de pestaña
map <c-pageup> :tabp<cr>
map <c-pagedown> :tabn<cr>
map <f10> :set paste<cr>
map <f11> :set nopaste<cr>
" Colores que no te dejan ciego (al gusto del consumidor, se puede escribir
" :color e ir dando a tab para ver las combinaciones existentes, hay más en
" vim.org)
colors torte

" Que no haga la ventana de gvim demasiado pequeña
au GUIEnter * set lines=80 columns=160
" Encoding UTF8
set encoding=utf-8
" Mostrar numeros de linea de distancia con respecto a la actual; muy útil
" para salta a una línea (15+fecha abajo para bajar 15) o para borrar cierto 
" número de líneas
set relativenumber
" empezar a hacer scroll cuando nos acercamos estas líneas a los bordes
set scrolloff=5
" mostrar el comando
set showcmd
" mostrar barra
set ruler
" muestra barra con completados de linea de comandos
set wildmenu
" no backups (ficheritos con ~)
set nobackup
" buscar nocase salvo que tenga mayusculas
set ignorecase
set smartcase
" sustitucion global siempre (para no tener que escribir la "g" de
" :%s/polompos/pok/g
set gdefault
" leader + space limpia los resultados de busqueda
nnoremap <leader><space> :noh<cr>
" desactivar la ayuda con F1 para no darle cuando nos confundimos con ESC
" (podemos sacarla con :help)
inoremap <F1> <ESC>
nnoremap <F1> <ESC>
vnoremap <F1> <ESC>
" Justificar parrafos con leader-j
nnoremap <leader>j gqip

" leader + y muestra los buffers de YankRing
nnoremap <leader>y :YRShow<CR> 
" raton
if has('mouse')
set mouse=a
endif
  " When editing a file, always jump to the last known cursor position.
  " Don't do it when the position is invalid or when inside an event handler
  " (happens when dropping a file on gvim).
  " Also don't do it when the mark is in the first line, that is the default
  " position when opening a file.
autocmd BufReadPost *
    \ if line("'\"") > 1 && line("'\"") <= line("$") |
    \ exe "normal! g`\"" |
    \ endif
" ===============================
" Shortcuts y opciones de plugins
" ===============================
" Taglist: F5 muestra el frame de tags
map <f5> :TlistToggle<cr>
" Taglist: Poner el frame en la derecha que el Project ya lo pone a la izquierda
let Tlist_Use_Right_Window = 1
" Taglist: Tamaño mínimo de frame de tags
let Tlist_WinWidth = 40
" Project: Nuestros valores por defecto para el plugin Project
:let g:proj_flags="imstvg"
" Buffer explorer con F4
map <f4> :BufExplorer<cr>
" Nerdtree (navegador de ficheros) con F3
map <F3> :NERDTreeToggle<cr>
" Python
" autocmd FileType python set omnifunc=pythoncomplete#Complete