![Las teclas de flecha, incluso cuando están deshabilitadas en vimrc, escriben ABCD y luego entran en modo de inserción. ¿Por qué?](https://rvso.com/image/1518624/Las%20teclas%20de%20flecha%2C%20incluso%20cuando%20est%C3%A1n%20deshabilitadas%20en%20vimrc%2C%20escriben%20ABCD%20y%20luego%20entran%20en%20modo%20de%20inserci%C3%B3n.%20%C2%BFPor%20qu%C3%A9%3F.png)
Cuando presiono las teclas de flecha vim
obtengo el comportamiento ilustrado en
este gif ilustrado.
Me gustaría usarlo solo hjkl
para navegar. Cada vez que presiono las teclas de flecha (arriba, abajo, izquierda o derecha), quiero que me diga una de las hjkl
teclas. Por ejemplo, cuando presiono la tecla de flecha hacia arriba, quiero que diga: Use k
y no ponerme en modo insertar o escribir A
.
Agregué lo siguiente a mi .vimrc
archivo:
noremap <up> <nop>
noremap <down> <nop>
noremap <left> <nop>
noremap <right> <nop>
nnoremap <Left> :echoe "Use h"<nop>
nnoremap <Right> :echoe "Use l"<nop>
nnoremap <Up> :echoe "Use k"<nop>
nnoremap <Down> :echoe "Use j"<nop>
Lo que he probado
He configurado no compatible en mi ~/.vimrc
(vimrc pastbin).
Estoy usando vim-plug
para administrar mis complementos vim.
Aquí hay una lista de mis directorios de complementos vim en ~/.vim/bundles/
:
ctrlp.vim/
emmet-vim/
fzf.vim/
gulp-vim/
git_status.vim/
gist-vim/
nerdtree/
nerdtree-git-plugin/
scss-syntax.vim/
syntastic/
tComment/
vim-autoformat/
vim-bundler/
vim-coffee-script/
vim-coloresque/
vim-endwise/
vim-eunuch/
vim-fugitive/
vim-go/
vim-mkdir/
vim-multiple-cursors/
vim-projectionist/
vim-pug/
vim-rails/
vim-rake/
vim-rhubarb/
vim-ruby/
vim-run-interactive/
vim-slim/
vim-surround/
vim-test/
vim-tmux-navigator/
webapi-vim/
Respuesta1
Después de horas de trabajo. Supongo que he encontrado estos tiempos, al menos para mí. Si esto no funciona para usted, estoy seguro de que el problema tiene que ver con los comandos del mapa. Intente desactivarlos todos uno por uno. Mira si puedes hacer algo.
Eliminar esta línea:
map <esc> :noh
Esto me causa el problema y no sé por qué. Puedes hacerlo :let @/=""
en su lugar.