commands - Mejorando en Vim
vim commands (19)
He estado usando Vim durante bastante tiempo, pero estoy en un nivel en el que utilizo el modo de inserción la mayor parte del tiempo, y sigo usando las teclas de flecha para moverme (!).
Siento que no estoy sacando lo mejor de mi adorable editor, particularmente en lo que respecta a la navegación (especialmente el código), copiar y pegar, y hacer otras manipulaciones del código existente. (aunque estoy bastante cómodo con complicados patrones de búsqueda / reemplazo).
- ¿Cómo debo aprender más?
- ¿Qué recursos recomendaría la gente?
¿Cómo debo aprender más?
Lea el manual de vim por completo (escriba :h
; puede navegar desde allí). Así es como puedes conocer todos los movimientos y comandos. Eso es más útil si ya sabes lo básico y quieres mejorar.
¿Qué recursos recomendaría la gente?
vim.org, mira a través de los scripts más populares de vim . Verifique las fuentes de ellos si encuentra algo de interés. O simplemente instálalos y disfruta. Ese sitio incluye una gran cantidad de enlaces a scripts que ayudan a navegar por el código fuente en diferentes idiomas; y es relativamente fácil encontrarlos allí.
.com también podría ser de ayuda .
Todavía uso las teclas de flecha para moverme (!).
No veo un problema con esto.
Francamente, ¿cuál es la probabilidad de que tengas que usar vim y un teclado que carece de teclas de flecha?
Ya sabes, la mayoría de las personas usa vim porque hace el trabajo (bueno, porque lo dominaron a un nivel cuando hace el trabajo por ellos), no por ser elitistas (como no usar las teclas de flecha).
Un par de consejos para mejorar tu conocimiento de vim:
- Abra periódicamente la ayuda de vim en un lugar aleatorio y lea sobre una característica distinta al azar. Te llevará un par de minutos. Es posible que no use esta función durante los próximos X años. Pero si tienes suerte, estarás en una situación en la que verás que puedes aplicar tu conocimiento sobre esa característica para lograr una determinada tarea. Volverás a abrir la ayuda para refrescar tu memoria. Después de usar la función en práctica por un par de veces, se quedará. En este punto, tu conocimiento vim será mejorado.
- use: helpgrep para buscar en lugares aleatorios de documentación. Si necesita hacer algo y encuentra el lugar que lo explica en los documentos, no se quede allí. Lee el fragmento de doc una vez más. Encuentra las palabras clave Para cada palabra clave, use: palabra clave helpgrep para descubrir los enlaces lógicos con otras partes de la documentación de vim.
- Escriba
vimtutor
en la línea de comando - entre en vim, escriba: help o
<F1>
- suscribirse a la lista de correo
- documentos oficiales de vim
Aquí hay algunos screencasts geniales que deberían darle una idea de lo que debe aprender a continuación. También hay videos para temas intermedios y avanzados, pero los novatos son de hecho los más importantes.
Además, cuando sentí que estaba estancado y no estaba realmente aprendiendo "el modo Vim", opté por desactivar las teclas de flecha tanto en modo normal como en modo insertar. Esto te obliga a usar ESC para llegar a algún lugar, y te hace pensar que es más parecido a Vim. Finalmente, habilité las teclas de flecha nuevamente en el modo de inserción, pero casi nunca las uso. Hay, a menudo, mejores formas de moverse.
map <up> <nop>
map <down> <nop>
map <left> <nop>
map <right> <nop>
Y especialmente
imap <up> <nop>
imap <down> <nop>
imap <left> <nop>
imap <right> <nop>
Así es como aprendí a Vim (y un montón de otras cosas). Es bastante fácil.
Explore los documentos de ayuda y encuentre un comando para algo que hace todo el tiempo. Eliminar una palabra completa, por ejemplo. Haga un punto para recordar esto.
Ahora, la próxima vez que se encuentre presionando ''xxxxx'' para eliminar una palabra, deténgase, vuelva a colocarla y use el nuevo comando. Búscalo si es necesario. Entonces, en lugar de presionar ''xxxxxx'', regresas y pulsas ''dw''.
Haga esto una y otra vez, será lento al principio, pero finalmente se mantendrá.
Una vez que tengas ese comando, comienza desde la parte superior. Encuentra otro comando para una acción que haces todo el tiempo ...
Te sorprendería lo rápido que puedes aprender nuevos comandos y técnicas de esta manera.
Creo que los videos son muy útiles para aprender.
Dos consejos más:
Use Vim para editar todo (correo electrónico, formularios web, código, ...). Cuando algo se siente lento, probablemente exista una forma más rápida de hacerlo.
:helpgrep
es tu amigo.Dirígete a http://vimgolf.com/ y compite. Aprendí muchos consejos y trucos de esa manera. [ Descargo de responsabilidad : no se acepta responsabilidad por los largos períodos de tiempo que "desaparecen" mientras compiten en http://vimgolf.com/ ].
Echo un vistazo a esta lista de los mejores consejos de VIM de vez en cuando y todavía recojo nuevos trucos de forma regular.
Hice este juego para ayudar a mi sobrino a aprender, pero solo funciona en Firefox y Chrome>. < http://kikuchiyo.org
Por ahora, solo se trata de movimiento y entrar en modo insertar. La versión beta te permite atacar a los enemigos con sables de luz, ''i'' a la izquierda y ''a'' a la derecha: P
Sigue tratando de aprender Vim, ¡vale la pena el esfuerzo!
:)
Un interesante artículo del propio Bram Moolenaar: Siete hábitos de edición de texto efectiva .
Ver este hilo: ¿Cuál es tu atajo más productivo con Vim?
Especialmente la primera respuesta.
Volver a asignar / deshabilitar las teclas de flecha como se ha sugerido es una excelente manera de obligarse a no usarlas.
Otra cosa a tener en cuenta: si presionar Esc en su teclado no es nada cómodo, es posible que desee reasignar Bloq Mayús a Esc en su sistema operativo. Para mí, este fue un paso muy útil, ya que Esc tiene un alcance incómodo en mi KB y ese fue otro obstáculo que me mantuvo en modo Insert (porque era difícil salir). Tener Esc en Mayúsculas hace que sea un alcance pequeño y saltando dentro y fuera del modo Insertar es muy rápido.
Para aprender cosas avanzadas en Vim, el mejor recurso es la: ayuda, pero para obtener los conceptos básicos solo tienes que hacerlo; es memoria muscular más que nada. Usted dice que sabe buscar. Conscientemente usarlo como una herramienta de navegación. Las búsquedas [/,?] Y las búsquedas basadas en caracteres en línea [f, F, t, T] son algunas de las herramientas clave de navegación de Vim. Solo utilícelos; comboed con las teclas del cursor desactivadas, estarás navegando solo en la memoria muscular en muy poco tiempo.
Objetos de texto. Fácilmente una de las mejores características del editor. Esta es la otra cosa para practicar conscientemente de inmediato. Cosas como ''yiw'', ''dit'', etc. son tan poderosas y rápidas; aprender y hacer uso de ellos solo te hará sentir como un usuario de Vim.
Una vez que tenga los objetos de texto y la navegación básica desactivada, es momento de pasar a la lectura y al aprendizaje de: ayuda regularmente y recorriendo la web en busca de plugins increíbles. En serio, puedes usar Vim por años y tener un "¡ah, ja!" momento accidentalmente tropezando con algún bocado oscuro en el: ayuda que nunca habías sabido.
la forma en que dejé de usar las teclas de flecha no fue deshabilitarlas (todavía las uso en el modo Insertar) pero si lo piensas bien si quieres usar el dedo meñique que es la tecla l
, ve a la izquierda. , y el anillo de dedo arriba ("ring up") la tecla k
y "recoger" la tecla j
.
Entonces, primero de los cuatro dígitos en su mano (olvídese del pulgar), el índice uno está a la izquierda y el Pinky está a la derecha. Use la expresión "timbre" como en una llamada telefónica para subir con su dedo anular y el dedo medio no tiene otro lugar donde ir, excepto hacia abajo.
También me ayuda mucho olvidar que las claves se nombran (h, j, k, l). No hay una buena frase mnemotécnica para recordarlos de esa manera que he encontrado y tampoco hay demasiadas asignaciones que usen esas teclas.
http://www.vi-improved.org/tutorial.php <- deberías leer y transmitir este chat, es muy útil para principiantes. Happy vimmer
"¿Por qué, oh POR QUÉ, esos #? @! Nutheads usan vi?" es una buena introducción a "la forma de Vim", especialmente sobre los objetos de texto que son una de las características más definitorias de Vim.