2010-09-17 18 views

Respuesta

23

G va a la última línea, sino que se mueve el cursor a la primera posición de no blanco si se establecen la startofline o compatible (que permite startofline) opciones. Si desea mantener la misma columna, configure nosol antes de pasar al modo de bloque visual, y luego presione G.

partir de la entrada manual para startofline:

Cuando "sobre" los comandos que aparecen a continuación mover el cursor a la primera no esté en blanco de la línea. Cuando está apagado, el cursor se mantiene en la misma columna (si es posible). Esto se aplica a los comandos: CTRL-D, CTRL-U, CTRL-B, CTRL-F, "G", "H", "M", "L", gg, y a los comandos "d", "< < "y" >> "con un operador de línea, con"% "con un conteo y para almacenar temporalmente los comandos de cambio (CTRL- ^,: bnext,: bNext, etc.).

+4

Bonito, "set nosol" va directamente a mi .vimrc. También me gustó la respuesta eliminada, para un archivo de longitud desconocida 9999j o un gran número hace el truco para la misma selección de columna. –

+0

Si su .vimrc también establece 'compatible', asegúrese de que' set nosol' aparezca después de esa línea. –

+0

Esto me ha estado molestando por años, ¡gracias! Directamente en .vimrc como dice Gökhan Sever :) – KomodoDave

35

CTRL-V entra en el modo de selección de bloques (que le permite seleccionar bloques rectangulares de texto). En gvim, esto entra en conflicto con el atajo de pegado de Windows, por lo que puede usar CTRL-Q en su lugar.

Desafortunadamente, CTRL-Q [G] no hace lo que desea ya que el [G] movimiento se mueve linealmente a través del archivo, por lo que aún es necesario contar con un con un movimiento contado [j] . Puede evitar tener que saber exactamente qué tan grande es el archivo usando un conteo obscenamente grande, como 9999. Entonces, el comando completo es CTRL-Q [9999j].

Desgraciadamente, no sé de qué manera se evitará el feo hack fuera de control.

EDITAR: Oh, leí su pregunta demasiado rápido y eché de menos que ya mencionó que es nuevo sobre el modo de bloque visual. Supongo que esta es una respuesta bastante inútil, ¡entonces, lo siento!

+0

Sin preocupaciones :) una respuesta es una respuesta. Gracias por su tiempo para leer y responder en cualquier caso. –

4

La manera más fácil para seleccionar la columna puede utilizar plug-in vis.vim

ir a modo visual, seleccione la columna ctrl+v, entonces usted puede hacer lo que quiera con él

Uso V, v o Ctrl + V visualmente marcar algún tipo region.Then :B cmd (aparecerá este comando como: :'<,'>B cmd)

El comando se aplicará solo a la región seleccionada visualmente.

Por ejemplo:

Uso ctrl-v para seleccionar una columna y luego hacer un sustituto en apenas esa columna.

Ctrl-V ..move .. :B s/pattern/becomes/

Uso Ctrl-V para seleccionar una columna, a continuación, aplicar un filtro externo a poco esa columna:

Ctrl-V. .move .. :B !sort

+0

E492: No es un comando del editor: B s/123123123/asdasd/g – Ilja

+1

No lo entiendo ... –

Cuestiones relacionadas