Pregunta

Mientras ControlX funciona bien en vim bajo windows, ControlA selecciona todo (duh).

¿Hay alguna manera de incrementar un número presionando una tecla en Windows?

¿Fue útil?

Solución

Pruebe Ctrl-Teclado numérico +?

(de aquí)

Otros consejos

Puedes hacer ControlA para incrementar en Windows abriendo el archivo 'mswin.vim' en su directorio vim y buscando la sección que se parece a:

" CTRL-A is Select all
noremap <C-A> gggH<C-O>G
inoremap <C-A> <C-O>gg<C-O>gH<C-O>G
cnoremap <C-A> <C-C>gggH<C-O>G
onoremap <C-A> <C-C>gggH<C-O>G
snoremap <C-A> <C-C>gggH<C-O>G
xnoremap <C-A> <C-C>ggVG

Comente todas estas líneas de la siguiente manera:

" CTRL-A is Select all
"noremap <C-A> gggH<C-O>G
"inoremap <C-A> <C-O>gg<C-O>gH<C-O>G
"cnoremap <C-A> <C-C>gggH<C-O>G
"onoremap <C-A> <C-C>gggH<C-O>G
"snoremap <C-A> <C-C>gggH<C-O>G
"xnoremap <C-A> <C-C>ggVG

y el ControlA La pulsación de tecla aumentará.

Esta es una opción bastante buena cuando tu teclado no tiene un teclado numérico real.

Me doy cuenta de que esta es una vieja pregunta, pero hoy me encontré con otra opción basada en la siguiente pregunta.Hacer que gvim actúe como lo hace en Linux permitirá que CTRL-A funcione como usted espera:

¿Cómo hacer que gvim en Windows se comporte exactamente como vim de la consola de Linux?

Hay una sección de _vimrc que tiene los siguientes elementos.Esto hace que muchos de los caracteres de control actúen como lo hacen en Windows.

set nocompatible
source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin

Comenté (con ") las líneas mswin y el set nocompatible línea.A partir de ahí agregué set compatible.Esto hace que gvim actúe como lo hace en Linux.Por lo tanto, el mío se parece a:

set compatible
source $VIMRUNTIME/vimrc_example.vim
"set nocompatible
"source $VIMRUNTIME/mswin.vim
"behave mswin

Acabo de aprender este truco hoy, así que si mi información no es completamente correcta, hágamelo saber.

Modifiqué la solución de TMealy para que ControlA todavía selecciona todo (esto me parece útil), mientras que ControlI incrementos (también útil).

noremap <C-I> <C-A>

" CTRL-A is Select all
noremap <C-A> gggH<C-O>G
inoremap <C-A> <C-O>gg<C-O>gH<C-O>G
cnoremap <C-A> <C-C>gggH<C-O>G
onoremap <C-A> <C-C>gggH<C-O>G
snoremap <C-A> <C-C>gggH<C-O>G
xnoremap <C-A> <C-C>ggVG

Un problema similar ocurre bajo GNU/Linux cuando se usa Vim con mswin.vim.Reasignación Alt.+X a Control+A antes de evocar mswin.vim resolvió mi problema.

execute "set <A-x>=\ex"
noremap <A-x> <C-A>
source $VIMRUNTIME/mswin.vim
behave mswin

Ahora, Alt.+X y Control+X respectivamente aumentan y disminuyen los números en Vim.

Mapeo a Alt. las combinaciones de teclas a menudo no son evidentes en Vim;leer más sobre esto aquí.

Estoy usando cygwin terminal + pantalla, por lo que <c-a> es capturado por el multiplexor de terminal.Usé este mapeo:

:noremap <c-i> <c-a>

Parece que el ControlA se mapeó en algún lugar durante el inicio.Como se sugirió antes, use:

desasignar <c-x>

Yo usaría unmap, no nunmap.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top