Как мне повторить команду «изменить размер окна» в vim? - PullRequest
2 голосов
/ 05 августа 2011

Я знаю, как изменить размер окна (CTRL_W +).Но когда я хочу повторить ту же команду, . бесполезен.Набирать CTRL_W + неоднократно скучно.Есть ли что-нибудь еще, что я могу сделать?

В моей системе:

if bufwinnr(1)
  map + <C-W>+
  map - <C-W>-
endif

не работает.

if bufwinnr(1)
  map <kPlus> <C-W>+
  map <kMinus> <C-W>-
  map <kDivide> <c-w><
  map <kMultiply> <c-w>>
endif

работает.

Ответы [ 2 ]

5 голосов
/ 05 августа 2011

Сочетание Ctrl-W + занимает предыдущий счет. Команда Ctrl-W _ максимизирует окно без счетчика или устанавливает абсолютную высоту с предшествующим счетом. Используя счетчики, вы редко должны делать повторные команды изменения размера окна.

Если вам часто хочется вносить небольшие повторные корректировки размеров окна, возможно, вы могли бы воспользоваться повторяемостью экс-команд (с помощью @:) и изменить размер с помощью :resize +1 вместо сочетания клавиш. Если вы все время изменяете размеры окон, я бы пошел с отображением + и - , как Zsolt предложил . Если вы просто восстанавливаете один и тот же макет окна снова и снова, посмотрите на использование сохраненного файла сеанса (:help sessions).

4 голосов
/ 05 августа 2011

Я бы порекомендовал сопоставление клавиш + и - следующим образом (в вашем .vimrc):

if bufwinnr(1)
  map + <C-W>+
  map - <C-W>-
endif    

И, пожалуйста, прочитайте это, есть несколько хороших советов: http://vim.wikia.com/wiki/Fast_window_resizing_with_plus/minus_keys

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...