usar tutorial texto rapido insertar español editar copiar con como comandos vim

tutorial - Cambio rápido de buffers en modo normal Vim



tutorial rapido vim (11)

Agrega esto a tu .vimrc

map gn :bn<cr> map gp :bp<cr> map gd :bd<cr>

Tenga en cuenta que está reasignando gp y gd , pero tal vez no le importe eso ( :help gp :help gd ).

Para obtener más información sobre cómo asignar :help map.txt teclas, consulte :help map-overview y :help map.txt .

Por cierto, personalmente uso <leader> lugar de g en el mapeo. Mi <leader> se establece en ; . Esto coloca mi tecla <leader> en la fila de inicio, lo que me permite mapear todo tipo de cosas usando <leader> . :help mapleader si desea cambiar su clave <leader> .

Recientemente descubrí que estoy "usando pestañas incorrectamente" en Vim . He estado tratando de usar solo buffers en Vim desde entonces, asistido a través de MiniBufExplorer , pero me resulta doloroso debido a la cantidad de pulsaciones necesarias para cambiar los buffers del modo normal. Con las pestañas, solo puedo hacer g t o g T para saltar de una a otra en el modo normal, y también puedo hacer NÚMERO g t para ir a una pestaña específica.

Con buffers, tengo que ingresar al modo de comando con :bn ,: :bp , o con MiniBufExplorer, usar Ctrl + k o Ctrl + Up para saltar a la ventana del buffer, desplazarme hacia la izquierda o hacia la derecha con h y l y luego presionar Enter para Selecciona el búfer que quiero. O puedo hacer algo que involucre una secuencia líder, pero siempre requiere quitar varios dedos de la fila de casa. Eso es un verdadero dolor.

¿Cómo puedo obtener algo equivalente al cambiar las pestañas en el modo normal para cambiar los buffers en el modo normal, por lo que puedo hacer algo como g n / g p para :bn / :bp y NUMBER g n para :buf NUMBER ?


Ampliando la respuesta de Rumple Stiltskin , si sabe que el archivo al que desea acceder está en el búfer 4 , por ejemplo, puede llegar rápidamente con

4Ctrl-^

En mi teclado del Reino Unido, puedo hacer 4Ctrl-6 , como se explica en

:help CTRL-^

Por cierto, puedes ver los números de búfer con

:buffers


Creo que bufexplorer es un buen complemento para usar. <leader> b e muestra un explorador de búfer interactivo que enumera todos los buffers abiertos. Puede moverse rápidamente a través de la lista e Ingresar lo coloca en el búfer seleccionado. A diferencia de LustyExplorer , no tiene dependencia de ruby.


Esto se basa en la respuesta de Nick Knowlson , pero quería ampliar mi comentario allí ...

Escriba :b <Tab> (anote el espacio), luego recorra los buffers abiertos con Tab o / .

... lo que nos acerca a Ctrl + Tab en todos los demás editores y navegadores que uso.

De hecho, es incluso mejor de alguna manera, luego puede retroceder y avanzar con las flechas / . Evita que el pulgar + dedo fu escriba Ctrl + Shift + Tab para retroceder a través de las pestañas en los editores y navegadores.

NB Shift + Tab solo hace lo mismo que Tab

Esto es realmente algo como Win + Tab en Windows 10, donde una vez que abres la ventana por primera vez y luego puedes moverte con las teclas de flecha.

Edición : tengo dos trucos más que aprendí para usar buffers:

  1. De esta respuesta tengo esto en mi .vimrc :

    nnoremap <leader>bb :buffers<cr>:b<space>

    abre el :ls / :buffers y teclea previamente :b para que solo tenga que escribir el número del búfer ya que verá una lista con todos los búferes y sus números.

  2. tambien tengo

    nnoremap <leader><tab> :b#<cr>

    que alterna entre los buffers actuales y los más recientemente utilizados, es un poco como hacer cd - al alternar entre directorios


La forma en que usualmente cambio entre buffers es usar el comando :buffer con el autocompletado incorporado, por ejemplo :b prof<Tab> para cambiar a folder/path/LoginProfileFactory.php .

Puede comenzar a escribir cualquier parte del nombre de archivo del búfer que necesita, lo que es bueno.

Con menos frecuencia, realmente recuerdo los números de los buffers que quiero y uso algo como :b 3 o :3b . Veo que mencionas que no te gusta :buf 3 , así que Rumple Stiltskin tiene una alternativa al estilo :3b que quizás prefieras.


Tengo las siguientes líneas en .vimrc:

nnoremap <silent> <tab> :if &modifiable && !&readonly && &modified <CR> :write<CR> :endif<CR>:bnext<CR> nnoremap <silent> <s-tab> :if &modifiable && !&readonly && &modified <CR> :write<CR> :endif<CR>:bprevious<CR>

Ahora, una pestaña le permite ir al siguiente búfer y una tecla Shift a la anterior.


Utilizo LustyExplorer : LustyExplorer <leader>b para abrir una lista de buffers, luego un par de letras del nombre del buffer que quiero abrir y luego enter . Fácil.

Pero, no está "utilizando pestañas incorrectamente", está utilizando las pestañas de la manera que desee. Si funcionó para ti, ¿por qué pasar por el dolor de desaprender tu manera de aprender "la manera correcta"?


Utilizo F9 y F10 para moverme entre el búfer anterior / siguiente con este mapeo:

map <F9> :bprevious<CR> map <F10> :bnext<CR>

Para mí esta es la forma más rápida de cambiar los buffers.


Yo uso el plugin unimpaired.vim

define las asignaciones [b y ]b que saltan al búfer anterior y siguiente en la lista.

Para saltar a un búfer específico, la mejor opción que conozco es la que mencionaste :b<number>

Si ingresa en otro búfer, puede regresar rápidamente escribiendo <c-^>



fzf.vim es otra forma rápida de cambiar los buffers utilizando la coincidencia fzf.vim . Este complemento se envía con el comando predeterminado:

:Buffers

que abre la lista de todos los búferes abiertos similares a: ls pero se puede buscar (fuzzy) y seleccionar un búfer. La apertura del búfer en la ventana actual es a través de enter, pero también se puede abrir en una nueva división (h o v) o pestaña con ^ X ^ V o ^ T respectivamente.

Notable es también:

:Lines

Lo que permite buscar a través del contenido de todos los buffers abiertos. Esto puede ser útil si olvida el nombre de un búfer pero sabe lo que debe contener.