Comandos de desasignación en Vim

16

Así que estaba buscando una forma de sangrar varias líneas en vim y alguien sugirió hacer

:map <Tab> <

y todo lo que hace es insertar el <carácter cada vez que presiono la pestaña (¿Cómo no lo vi?). Traté de hacer :map <Tab> <Tab>y :map <Tab> \trecuperar sangría regular, sin éxito. Soy nuevo en el vimmapeo de claves, así que realmente agradecería ayuda. Además, si alguien pudiera señalar cómo sangrar varias líneas vim, sería increíble.

¡Gracias por adelantado!

Grigor
fuente
1
:unmap vim.wikia.com/wiki/Mapping_keys_in_Vim_-_Tutorial_(Part_1) Google es tu amigo.
Adam Liss
1
@AdamLiss Google ha sido mi amigo, mi amigo, durante tanto tiempo.
Grigor

Respuestas:

25

:unmap <Tab> para recuperar el comportamiento predeterminado.

use :x>>para sangrar x número de líneas (desde donde está el cursor)

ennuikiller
fuente
: unmap <Tab> no hace el truco ... por alguna razón: /
Grigor
esto funciona para mi
doubleDown el
66
@Grigor En su pregunta, afirmó que utilizó map <Tab> <. De hecho, deshacer este comando correcto es unmap <Tab>, pero el siguiente texto ("todo lo que hace es insertar el <carácter") significa que el reclamo original es falso . No hay forma de que pueda insertar <con dicha asignación, pero sería cierto si ha escrito imap <Tab> <. Este comando se deshace usando iunmap <Tab>(tenga ien cuenta en ambos comandos). Para obtener respuestas correctas debes ser preciso.
ZyX
Una nota en caso de que alguien tuviera la misma dificultad que yo, si el mapeo original es local en el búfer, entonces el desmapeado también debe ser:iunmap <buffer> <Tab>
cristoper
0

Esto resolvió el problema de revertir las pestañas.

:imap <Tab> <C-t>
:imap <S-Tab> <C-d>

Al presionar Tabsangra el código, Shift-Tabrevierte la sangría del código.

Grigor
fuente
3
También puedes usar :iunmap <Tab>. Si <Tab>está mapeado por :imap, debe usar :iunmappara desasignarlo. :unmap <Tab>No funciona en este caso.
Hai Feng Kao