-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 - ----------=CHORRADA SOBRE EL USO DEL VIM=-------------------- INSTALACION Paquetes minimos: vim Vi IMproved - enhanced vi editor vim-rt Vi IMproved - runtime support files CONFIGURACION .vimrc set tabstop=3 set sw=3 para usar tabuladores de 3 espacios set ai Auto sangrado set sm Showmatch.. = que lisp con los parentesis set ruler regla set nocompatible Estilo VIM no VI set novisualbell para que no se vean flashes en errores set noerrorbells activa el pitido o el flash en error set background=dark Colorines de fondo... con esto se hace "transparente" set ttyfast Para mandar caracteres mas deprisa a Xterm's en general syntax on Para activar los colorines de la sintaxis au BufNewFile,BufRead * set tw=76 au Hace los comandos descritos a contic¡nuacion al producirse un evento... por ejemplo al cargar un archivo *.asm carga el realzado de sintaxis de los archivos de ese tipo En este caso define el ancho de linea en 76 caracteres con lo que si te pasas de los 76 pasa a la siguiente linea introduciendo un retorno de carro COMANDOS Resumen de teclas: ------------------ ESC Pasar a modo comando. i Pasar a modo inserción. h,j,k,l Teclas de movimiento. :q! Salir sin grabar los cambios realizados. :x Salir grabando los cambios. :w Grabar fichero. :new fichero Abrir fichero nuevo en otra ventana :r fichero Insertar fichero en la posición del cursor. :r !comando Insertar salida del comando de shell. :!comando Ejecutar comando. /cadena Buscar cadena en el fichero.Admite expresiones regulares !% !comando Aplicar comando al texto completo. v Modo visual: CTRL +v Modo visual en bloque SHIFT+v Modo visual en linea y Copiar texto seleccionado. c Cortar texto seleccionado. p Pegar texto copiado. supr Borramos el texto seleccionado. !comando Aplicar filtro al texto seleccionado. (ej !par70j sort grep wc etc..). INSERT Cambiar entre inserción/sobreescritura. J Subir la línea actual a la anterior. dd Borrar línea actual. u Undo (deshacer). Útil en nuestros inicios :). CTRL+r Redo (rehacer). Lo que antes deshiciste dd Borrar líneas: ej 6dd :help Ayuda (igual que F1). :help topic Ayuda para el topic especificado. Probad también a seleccionar un texto con 'v' y cuando esté seleccionado hacer : !sort (aparecerá algo como :'<,'>!sort ) y el comando se aplicará sólo al texto seleccionado. Como sabeis, dado que Linux tiene gran cantidad de mini-comandos que se aplican a la entrada estándar, con este método podeis hacer al texto LO QUE SEA, justificarlo, corregirlo con ispell, cualquier cosa que se os ocurra. MACROS DE SUSTITUCION ab MACRO CADENA Se activa despues de pulsar el espacio Se pueden usar caracteres "especiales" para emular las pulsaciones de teclas como ESC y pasar a modo comando sin tocar nada.. Esto se hace pulsando CTRL+V y despues la combinacion de teclas... mezclado con ESC :r! es genial ab qeu que ab date :r!date [2~ ab _hora =strftime("%H:%M") ab _fecha =strftime("%a %b %d %T %Z %Y") ab _ecoli es.comp.os.linux.instalacion ab _ecolr es.comp.os.linux.redes ab _ecolm es.comp.os.linux.misc ab _ecolp es.comp.os.linux.programacion ab qeu que Para dislexicos como yo MACROS DE TECLAS map TECLA TECLAS Autenticas macros para asignar al teclado hay que recordar que se deben usar con CTRL+V para meter las teclas "especiales" Si estamos definiendo macros podemos usar y en vez de usar CTRL+V... -=ejemplos=- "Abre una ventana pulsando F9 map ^[[20~ ^Wn "Cierra la ventana actual pulsando F12 map ^[[24~ ^Wc "Cambia de ventana pulsando F8 map ^[[19~ ^Ww "Iguala los tamaños de las ventanas pulsando F11 map ^[[23~ ^W= "Maximiza la ventana actual pulsando F10 map ^[[21~ ^W_ "Da una linea mas a la ventana actual pulsando F7 map ^[[18~ ^W+ "Mete comentarios en C++ map ^[c ^[^I//^[j map 1 :r!gcc map 2 :r!./a.out>/tmp/ejecucion 2> /tmp/ejecucion map 3 :new /tmp/ejecucion map q :q! au BufNewFile,BufRead * set tw=76 MACROS PRECARGADAS Pues que con :so MACRO.... casi que mejor un ejemplo con el juego de la vida /usr/doc/vim-rt/macros/life -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE8A/+dSVUr3RkU/IMRAgYmAJwJ3TY9mewiInbyr/MVOmcOJuXwqQCfQJB7 BtL/jva6j+zm8H0DLtN0zG4= =yOgA -----END PGP SIGNATURE-----