2012-07-25 26 views
8

¿Cómo puedo reasignar alt+backspace para eliminar palabras como manipulación de texto nativa * NIX? Revisé este hilo: Using alt+backspace key in vim command line to delete by wordsalt + retroceso para eliminar palabras en vim

Y los ejemplos como: cmap <a-bs> <c-w> y :imap <A-BS> <C-W> no hacen nada. Y la respuesta aceptada fue, en realidad, ni siquiera volver a asignarla, sino usar ctrl+w. Como el alt+backspace de VIM no hace nada, preferiría volver a asignarlo a algo a lo que estoy acostumbrado.

estoy usando VIM basada en el terminal (específicamente en iTerm)

+3

El primer paso es averiguar qué hace su terminal con la combinación de teclas. Inicie vim, entre en modo insertar, escriba Ctrl-V seguido de retroceso, luego otra Ctrl-V seguida de Alt-retroceso. Si imprime lo mismo para ambos, no tienes suerte. De lo contrario, el comando de mapa debería funcionar si escribe Ctrl-V Alt-Retroceso en el comando ': map' en lugar de' '. –

+1

modo visual, luego retrocede resalta 1 carácter. Modo visual, luego 'alt + backspace' sale del modo visual, por lo que no hacen lo mismo. Además, no quiero estar en modo visual para hacer 'alt + backspace'. Eso derrota la facilidad de eliminación que estaba buscando (como 'dd'), entonces, ¿ahora qué? –

+0

No quería que estuvieras en modo visual tampoco. Ctrl-V en el modo de inserción no debe pasar al modo visual. Debe tener una asignación extraña (': imap ') o no estaba en modo insertar cuando lo hizo. –

Respuesta

3

La tecla Alt/Meta es problemático en Vim y la mayoría de terminales, consulte this answer of mine para una visión general de la situación (la situación es la misma para Meta y Alt).

En resumen, Vim no recibe Alt en absoluto: golpear Alt+Backspace es exactamente lo mismo que golpear Backspace.

De todos modos, será mejor para usted a largo plazo aprender y acostumbrarse a las asignaciones de teclas predeterminadas de Vim.

+0

Ya lo soy, pero como con todas las asignaciones personalizadas, es para hacerlo más fácil o de lo contrario no habría una forma de hacer asignaciones y anulaciones personalizadas :) –

+0

Sí y no. Veo mapeos personalizados como formas de aumentar Vim, principalmente. De todos modos, la tecla Alt no existe para Vim, por lo que tendrás que buscar otra asignación (que derrota tu propósito) o acostumbrarte a ''. – romainl

+0

Estoy acostumbrado a tener que usarlo, es solo una colocación de los dedos muy incómoda en una computadora portátil Mac. –

0

Si está en OSX, macvim utiliza las asociaciones de teclas estándar, por lo que al presionar Alt+Backspace se eliminará la palabra completa. Lo mismo aplica para navegar entre palabras con Alt+RightArrow y Alt+LeftArrow.

0

en MacOS con iTerm2, tengo las claves de opción asignada a + Esc (como mucha gente), y me encontré con que al presionar Opción + Retroceso realidad fue interpretada por vim como prensa escape seguido por una Retroceso presione, por lo que el siguiente enlace funcionó perfectamente para mí; Recomiendo probarlo incluso si su configuración es diferente a la mía, ¡por si acaso le funciona!

:imap <Esc><BS> <C-w> 
Cuestiones relacionadas