¿Cómo pasar al último carácter del archivo en vim?


26

Archivo:

i am someone1.
i am someone2.
i am someone3
~
~

La documentación dice que Gme lleva al final del archivo, pero solo me lleva al comienzo de la última línea. Quiero poder llegar al último carácter del archivo, 3 en este caso, y presionar ay escribir un punto.

¿Cómo puedo hacer eso?


Respuestas:


32

Si escribe Adespués G, ingresará al modo de inserción al final de la última línea.

Si solo quieres ir al último personaje, entonces G-Endserá suficiente


Aentonces Gestá bien para mí Pero si no quiero editar, ¿es G-Endla única opción? ¿Hay una sola clave para hacer esto en lugar de dos?
Animesh

3
No es que yo sepa, pero eso no es garantía. Siempre puede crear su propio mapa si lo desea.
Bernhard


5

Ctrl + Fin también funciona, tanto en modo normal como de inserción. :help <C-End>


Esto solo mueve el cursor al último carácter de la línea actual.
sebix

@sebix: No, consulte la ayuda.
Kurt Hutchinson el

No funciona para mí con vim 7.4
sebix

@sebix: Me funciona bien y el texto de ayuda es bastante claro. Tal vez tenga algún mapeo o complemento que anule el comportamiento incorporado.
Kurt Hutchinson

0
  • Mover a la última línea en el archivo: G
  • Mover a la primera línea del archivo: 1G
  • Mover al final de la línea: $
  • Mover al comienzo de la línea: ^

1
Bienvenido a U&L, esto casi no agrega nada a la respuesta existente y aceptada.
Archemar

0

La mayoría de las respuestas aquí suponen una última línea del archivo que no está en blanco, que es probablemente el caso más común. También hay suposiciones sobre la disponibilidad de una tecla END en el teclado. Sin embargo, las teclas END no están disponibles universalmente y las líneas en blanco son posibles al final de un archivo. Por lo tanto, se puede aprovechar lo siguiente para todos los casos para encontrar el último carácter (sin fin de línea) de un archivo:

G?.

Esta es simplemente una de las pocas (o quizás varias) combinaciones de comandos que pueden lograr el resultado deseado. El patrón es:

"Set Cursor Position" + "Search Method" + "Pattern"

En el caso de la secuencia de comandos anterior, va al final del archivo y realiza una búsqueda inversa de cualquier carácter (pero no un carácter de "final de línea").


-1

puede usar números grandes como 99 o 999 y $. como 999 $


Esto es más pulsaciones de teclas que G$y menos seguro. Muchos archivos tienen más de 1000 líneas.
Comodín el

De acuerdo, pero esta solución abre la posibilidad de que pueda posicionarse hasta el final de cualquier línea, digamos que puede posicionarse hasta el final de la línea 13. Puede hacer 13 $.
Fred Yang
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.