Estoy tratando de asignar Ctrl+ spara guardar mi archivo, sin embargo, no funciona.
Mis mapeos:
map <C-s> :w <CR> :echo "Saved" <CR>
imap <C-s> <Esc> :w <CR> :echo "Saved" <CR> i
Cuando estoy en modo de inserción, veo /:echo "Saved"
en la esquina inferior en lugar de saved
y cuando estoy en modo normal, veo lo mismo. ¿Qué estoy haciendo mal?
Esto está en la parte superior de mi vimrc, por lo que mi otro código no debería estar causando un problema. Estoy ejecutando Vim dentro de la Terminal OSX.
key-bindings
terminal
iProgram
fuente
fuente
I am also running vim inside the Mac terminal.
' Sí, estoy ejecutando vim a través de la terminal. ¿Sería mejor usar Alt en lugar de Ctrl o Cmd?<D-s>
aunque no estoy seguro de si eso funciona en el terminal Vim, ¡y de todos modos ya es un valor predeterminado en MacVim!Respuestas:
Para garantizar que esta solución alternativa se ejecute incluso cuando Vim se inicia con una herramienta separada (como git), tengo esto en mi
~/.vimrc
:Esto me ha funcionado en Linux, GVim, Mac OS X y MacVim.
Advertencias:
En Windows, o en cualquier otro sistema operativo que no tenga el
stty
comando, lo anterior probablemente arrojará errores cada vez que se inicie Vim. (silent!
podría silenciar eso)Si su shell ya tenía esta configuración TTY deshabilitada, ¡por supuesto, el
VimLeave
comando automático lo volverá a encender! Detectar y restaurar la configuración actual es una ventaja con el enfoque de @ aPyDeveloper.¡Una combinación de esto y la solución de @ aPyDeveloper, que maneja las preocupaciones de compatibilidad bajo OS X y Windows, sería genial para publicar aquí y / o en el Wiki!
Para evitar elegir entre
stty -g
ystty --save
, puede probar la siguiente prueba solo para laix
opción.fuente
Gracias a @Carpetsmoker por los enlaces.
Agregar este script en
bash_profile
funcionó para mí.Aquí hay un enlace para eso. http://vim.wikia.com/wiki/Map_Ctrl-S_to_save_current_or_new_files
También tuve que eliminar el espacio antes de:
fuente