Как я могу временно создать окно, над которым я работаю, чтобы быть полноэкранным в vim?
Я использую vim и обычно открываю более одного вертикального/горизонтального окна, обычно редактируя файлы заголовков С++ вместе с файлами cpp. Как временно создать окно, над которым я работаю, в полноэкранном режиме, отредактировать то, что я хочу, а затем выйти из полноэкранного режима?
В полноэкранном режиме я хотел бы установить только окно vim, а не мой общий экран.
Ответы
Ответ 1
Если я понимаю, о чем вы спрашиваете, я думаю, вы найдете полезный плагин ZoomWin (GitHub). Если у вас есть куча разбитых окон, и вы хотите временно сделать текущее окно единственным видимым, вы можете нажать <C-w>o
. Когда вы хотите вернуться к предыдущему состоянию разделения, нажмите <C-w>o
еще раз.
[Изменить] Примечание по сопоставлениям клавиш:
Сопоставление клавиш по умолчанию для этого плагина <C-w>o
, но конфликтует с отображением ключа Vim по умолчанию. По умолчанию это делает :only
, что делает текущее окно единственным окном. Если вы хотите сохранить эту функциональность, вы можете переназначить ZoomWin на другой ключ. Я перенаправляю его на <C-w>w
, потому что мне нравится использовать параметр :only
. Здесь мое отображение:
nnoremap <silent> <C-w>w :ZoomWin<CR>
Обратите внимание, что это также отменяет сопоставление Vim по умолчанию, связанное с перемещением в другие видимые окна (:help CTRL-W_w
), но я никогда не использовал его.
Ответ 2
Ctrl+W _ будет увеличивать окно по вертикали.
Ctrl+W | будет увеличивать окно горизонтально.
Насколько мне известно, после этих действий восстановить предыдущий макет невозможно, но Ctrl+W = изменит размер всех окон на равные размеры.
Ответ 3
Можно было бы продолжить редактирование на новой вкладке. Следующая команда открывает активный буфер на новую вкладку, позволяя вам видеть буфер в окне окна vim.
:tab split
И закройте вкладку, когда вы закончите:
:tabc
Edit:
Вы всегда можете использовать следующую команду, чтобы использовать tt
в качестве ярлыка (или лучше добавить его к .vimrc
):
:noremap tt :tab split<CR>
и закрыть, когда вы закончите:
:wq
Ответ 4
ctrl-w_ - увеличить текущее окно
надеюсь, что это поможет вам.:)
И вот некоторые из полезных команд могут быть реализованы с помощью редактора VIM
: e filename - отредактируйте другой файл
: split filename - разделить окно и загрузить другой файл
ctrl-w стрелка вверх - перемещение курсора вверх по окну
ctrl-w ctrl-w - переместить курсор в другое окно (цикл)
ctrl-w = - сделать все равные размеры
10 ctrl-w + - увеличить размер окна на 10 строк
: файл vsplit - вертикальный сплит
: файл sview - то же, что и split, но readonly
: скрыть - закрыть текущее окно
: только - откройте только это окно
: ls - показывать текущие буферы
: b 2 - открыть буфер # 2 в этом окне
Ответ 5
Отличный плагин для переключения полноэкранного режима Windows - это vim-maximizer.
После установки вы можете просто использовать <F3>
(ярлык по умолчанию), чтобы переключать полноэкранный режим в окне.
Вы также можете настроить сочетания клавиш, например, если вы хотите использовать <Cw> z
(аналог ярлыка tmux):
nnoremap <silent><C-w>z :MaximizerToggle<CR>
vnoremap <silent><C-w>z :MaximizerToggle<CR>gv
inoremap <silent><C-w>z <C-o>:MaximizerToggle<CR>
Ответ 6
Я пробовал ZoomWin и несколько других. Проблема в том, что все они разрушают и пытаются воссоздать окна. Это особенно проблематично для пользовательских плагинов, таких как NERDTree, Tagbar и некоторых других. Иконки и шрифты нарисованы неправильно, размеры перепутаны и т.д.
zoomwintab.vim - простой плагин для окна масштабирования, использующий функцию вкладок vim для увеличения окна, вдохновленного плагином ZoomWin, но не разрушающим образом.
https://github.com/troydm/zoomwintab.vim
Я использую Tmux, поэтому я сопоставил его с <leader> z
чтобы синхронизировать его с tmux <prefix> z
nnoremap <leader>z :ZoomWinTabToggle<CR>