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!



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)


: 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.


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
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.