Подтвердить что ты не робот

Как увеличить в vim под окнами (где CTRL-A не работает...)

Пока Ctrl X отлично работает в vim под окнами, Ctrl A выбирает все (duh).

Есть ли способ увеличить число с нажатием клавиши под окнами?

4b9b3361

Ответ 1

Попробуйте Ctrl-NumPad +?

(отсюда)

Ответ 2

Вы можете сделать Ctrl A для увеличения в окнах, открыв файл mswin.vim в каталоге vim и найдя раздел, который выглядит следующим образом:

" 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

Прокомментируйте все эти строки следующим образом:

" 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

а нажатие клавиши Ctrl A будет увеличиваться.

Это довольно хороший вариант, когда на клавиатуре нет реальной цифровой клавиатуры.

Ответ 3

Я понимаю, что это старый вопрос, но сегодня я столкнулся с другим вариантом, основываясь на следующем вопросе. Создание gvim, как и в Linux, позволит CTRL-A работать так, как вы ожидаете:

Как заставить gvim на windows вести себя как linux console vim?

Существует раздел _vimrc, который имеет следующие элементы. Это приводит к тому, что многие управляющие символы действуют так же, как в Windows.

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

Я прокомментировал (с ") линии mswin и строку set nocompatible. Оттуда я добавил set compatible. Это приводит к тому, что gvim действует так же, как на linux. Таким образом, мой выглядит примерно так:

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

Я только что узнал этот трюк сегодня, поэтому, если я не полностью прав в своей информации, пожалуйста, дайте мне знать.

Ответ 4

Я модифицировал решение TMealy, так что Ctrl A все еще выбирает все (я считаю это полезным), в то время как Ctrl I увеличивается (также полезно).

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

Ответ 5

Аналогичная проблема возникает при использовании GNU/Linux при использовании Vim с mswin.vim. Повторное нажатие Alt + X до Ctrl + A до вызова mswin.vim решило мою проблему.

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

Теперь Alt + X и Ctrl + X соответственно увеличивают и уменьшают числа в Vim.

Сопоставление с комбинациями клавиш Alt часто не проявляется в Vim; подробнее об этом .

Ответ 6

Я использую терминал cygwin terminal +, поэтому < c-a > захватывается терминальным мультиплексором. Я использовал это отображение:

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