Sé que vim (como emacs) es un editor muy potente para programadores, siempre que sepa cómo usarlo, sus accesos directos, etc. ¿Qué pasos puedo seguir y qué tutoriales puedo leer para convertirme en un usuario avanzado de vim?
Paso 0: aprende a tocar el tipo. En serio: si tus dedos no saben dónde están las teclas, entonces vim será un dolor. E incluso si rechaza vim, la escritura táctil mejorará su programación (pregunte Steve Yegge ) al hacer que la mente monitoree el enlace sin fricción. Hay un lote de software que puede ayuda usted mejorar su escritura.
Paso 1: Usa las preferencias del teclado para intercambiar Caps Lock y Escape. En serio, ¿con qué frecuencia usas Caps Lock? Usando vim estarás usando Escape todo el tiempo, y tenerlo disponible en la fila de inicio hace una gran diferencia. Con el escritorio estándar de Ubuntu, vaya a los menús: Sistema -> Preferencias -> Teclado -> pestaña Diseños. Luego presione el botón "Opciones de diseño", haga clic en el triángulo junto a "Comportamiento de la tecla Bloq Mayús" y seleccione "Cambiar ESC y Bloq Mayús". (Observe cómo ha cambiado esto - vea esto para saber cómo hacerlo en 14.04 .
Paso 2: use vimtutor para comenzar. Está en gvim (en el menú de ayuda, creo) o simplemente puede escribir 'vimtutor' en la línea de comando. Tomará 30-45 minutos de su tiempo y luego sus dedos conocerán los conceptos básicos de vi/vim y debería poder editar archivos sin querer lanzar su teclado por la ventana.
Paso 3: usa vim en todas partes. Ver esta pregunta de StackOverflow para obtener consejos y enlaces para usar las combinaciones de teclas vim y vi en la línea de comandos, desde su navegador web, para redactar correos electrónicos, en su IDE ... Debe usar vim para incrustar las combinaciones de teclas en su músculo memoria.
Paso 4: aprenda más sobre vim. Solo habrá arañado la superficie con vimtutor. Usted puede
Aprender un poco a menudo sería mi consejo: hay tanto por ahí que apegarse a trozos del tamaño de un bocado será la mejor manera de hacer que el conocimiento se mantenga.
Paso 5: Beneficio :)
El paquete de formulario "vimtutor" "vim" es probablemente el mejor lugar para comenzar.
Dos cosas:
Aprende la escritura táctil. Realmente no hay otra manera. Luego vincule ESC a ";;" para que nunca tenga que abandonar su fila de inicio: inoremap ;; <esc>
Busque github para .vimrc
s de otras personas
Y un tercero: VimCasts
http://www.linuxconfig.org/Vim_Tutorial
Ese es un muy buen tutorial. Tiene videos y tal.
Esto sonará tonto, pero conozca el comando de ayuda de vim. El sistema de ayuda es notablemente intuitivo y fácil de navegar.
La ayuda está disponible escribiendo :help
. Puede obtener información sobre un tema específico si lo incluye en la línea de comandos (por ejemplo, :help insert
). Puede recorrer los temas presionando la pestaña después de escribir uno o más caracteres del tema.
La ayuda está hipervinculada, con enlaces indicados en texto en negrita o color. Puede seguir los enlaces presionando <Ctrl -]> cuando el cursor esté sobre él, y <Ctrl-t> para regresar. Para salir de la ayuda, escriba :q
.
Algunas buenas respuestas. Definitivamente intente integrarlo en la vida diaria y asegúrese de no intentar inundar demasiado su cerebro a la vez. Hay demasiadas cosas para aprender todo en una semana.
Al principio, solo comience con uno/dos comandos/teclas nuevos por semana. Úsalos e introdúcelos en tu cerebro. No quiere tener que consultar una hoja de trucos todo el día.
Tengo una configuración de configuración de vim de muestra que está muy bien documentada. Publico para personas: http://github.com/mitechie/pyvim
Sin embargo, no solo copie/pegue. Asegúrese de comprender lo que está pasando en su configuración de vim para no olvidar/malinterpretar lo que está haciendo por usted.
y comencé a hacer algunos screencasts de vim: http://lococast.net/archives/111
PeepCode's Smash into VIM 1 & 2 son un gran recurso. También puede consultar Rob Conery's blog , tiene buena información relacionada con VIM/blogs disponibles allí.
Usé un libro que encontré en sitio web de Vim
Sé que podría recibir comentarios negativos para esta respuesta, ya que puede perjudicar a los fanáticos y usuarios de vim: Primero pregúntese qué que desea hacer. Y solo si vim es la mejor herramienta para esa tarea específica, haga lo que le dicen todas las otras respuestas.
O para decirlo con más imágenes: puede intentar obtener el doble de rápido o mejor con un martillo de lo que es ahora. Pero dependiendo de la situación, un destornillador puede ayudar más que el martillo. :)
Realmente no he aprendido Vim todavía, pero creo que haciendo toda mi navegación con la extensión Pentadactyl para Firefox, será menos difícil cuando pueda hacerlo.
Cualquier campo de texto y la línea de comando se pueden tratar como el modo normal de Vim con un Ctrl T (o automáticamente, si cambia una configuración); sin embargo, aquí es donde cae en este momento para mí, ya que muchas acciones se interpretan como globales por ejemplo intentando pegar con p = abre una url con el texto que está en el búfer e intenta sobrescribir el texto con r vuelve a cargar la página. Pero puede abrir el campo de texto en Gvim presionando Control I, por lo que no es realmente un problema.
Otro problema es que hace que sitios web como Gmail o Remember the Milk sean más difíciles de usar, ya que tienes otro modo con el que lidiar.
Ver las respuestas sobre los consejos para principiantes para aprender Vim de los Programadores SE
Para reiterar mi respuesta a esa pregunta:
Aprendí mucho del libro O'Reilly "Learning the Vi and Vim editors" . Es el mejor libro de Vim que he leído.
También recomiendo echar un vistazo: