2010-01-25 8 views
18

Una de las características más agradables de MacVim es que es posible utilizar los comandos del sistema operativo habituales para copiar y pegar texto (a saber, comando + C y comando + V).Usar Mayús + Flechas para seleccionar texto en vim/MacVim

Esto es especialmente bueno en situaciones en las que has trabajado en otro editor un minuto antes y tu cerebro aún no está listo para aconsejarte cómo teclear la cosa real.

Sin embargo, hay algo en lo que mi cerebro necesita pensar un poco: es el modo de selección de texto. En los editores no vi, usaría Shift + Arrow para esto y probar esto en MacVim no funciona. Pero, por otro lado, no me parece que Shift + Arrow se esté utilizando para nada más tampoco. ¿Es posible reasignar las claves para que esto sea posible?

(Idealmente, el editor todavía estaría en el modo de inserción después de haber seleccionado el texto, eso sería prescindir de algunas pulsaciones de teclas adicionales.)

+1

Buena pregunta, pero estoy tentado de sugerir que se mueva a Superusuario como una pregunta de configuración del programa. Problemas muy similares para emacs como se discuten aquí: http://meta.stackexchange.com/questions/36017/what-site-should-host-questions-about-emacs-keybinding en meta. – dmckee

+0

¿Desea estar en el modo de inserción después de la selección porque está reemplazando la selección (como cuando presionaría 'c' para borrar la selección y entrar al modo de inserción), o por alguna otra razón? Me parece que si tiene una selección, está en modo visual y, por lo tanto, no puede estar en modo de inserción. – Jay

+0

Quería permanecer en modo de inserción porque no quiero abandonar el modo de inserción a menos que sea realmente necesario. En un editor de texto 'normal' cuando selecciona texto, también permanecerá en modo insertar. Es más por razones de "transición"; y como dije, copiar y pegar (e incluso guardar) a través de la tecla Comando también funciona en el modo de inserción. – Debilski

Respuesta

25

Del manual:

Editores de texto en Mac OS X permite al usuario mantener presionada la tecla Mayús + movimiento para ampliar la selección. Además, presionar una tecla imprimible mientras selecciona reemplaza la selección actual con ese carácter. MacVim puede emular este tipo de comportamiento (proporcionando enlaces de teclas y configurando 'keymodel' y 'selectmode' a valores no predeterminados de ) aunque no está habilitado por por defecto. Para hacer MacVim se comportan más como edición de textos y menos como Vim, añadir las siguientes líneas a su archivo "~/.vimrc" (no .gvimrc):

if has("gui_macvim") 
    let macvim_hig_shift_movement = 1 
endif 
+0

Genial. Muchas gracias. Parece que es exactamente lo que he estado buscando. – Debilski

+3

Sin embargo, una pequeña molestia es que ahora necesitaré presionar shift incluso en el modo visual cuando use las teclas de flecha. Tiempo para acostumbrarse a 'hjkl' ... – Debilski

6

Como nota a la libre y una pista ordenada por los demás:

Desde SHIFT + Flecha selección y la selección del ratón ahora se inicia automáticamente SELECT modo, esto significa que, aparentemente, no es tan fácil hacer una selección VISUAL utilizando las teclas de flecha o el ratón. (Incluso cuando ya está en el modo VISUAL, la selección del mouse todavía activará el modo SELECT). Por lo tanto, siempre que uno quiera aplicar comandos a la selección, el siguiente método ayuda.

  • Seleccione el texto a través del ratón o Mayús + Flecha
  • Unselect pulsando ESC
  • Prensa gv volver a seleccionar automáticamente la selección anterior y desencadenar VISUAL modo

Editar: mismo se puede hecho usando simplemente CTRL + g.

+2

Puede agregar 'set selectmode =' para evitar ingresar al modo SELECT por defecto. Use Ctrl + g para alternar entre SELECT y el modo VISUAL. – kennytm

+0

Personalmente, me gusta estar en modo select cuando uso MAYÚS + flecha la mayoría del tiempo; pero Ctrl + g es una buena idea de todos modos. Un poco más simple que 'ESC, g, v'. – Debilski

Cuestiones relacionadas