Vim позволяет вам иметь несколько горизонтальных или вертикальных разделений в вашей активной рабочей области.
Когда вы освоитесь с основами Vim и начнете изучать его еще глубже, вы откроете для себя новые вещи.
Новые функции, такие как разделение экрана при использовании Vim в терминале. Нет необходимости в tmux или экране. Просто сделайте это под Vim, изначально.
Да, Vim позволяет вам иметь несколько горизонтальных или вертикальных разделений в вашей активной рабочей области.
Позвольте мне показать вам, как разделить Vim и все необходимые сочетания клавиш для навигации между разделенными окнами.
Создать разделенное окно
Предположим, вы открыли файл в Vim. Теперь вы хотите разделить рабочее пространство на несколько окон для повышения производительности. Давайте рассмотрим, как создать разделенное окно в Vim.
Есть два способа разделить рабочее пространство Vim — по горизонтали и/или по вертикали.
Вы можете узнать, какое окно активно, основываясь на том, в каком окне находится ваш курсор.
Разделить окно по вертикали
Предположим, вы открыли файл в Vim и хотите разделить экран по вертикали.
Чтобы сделать вертикальное разделение, войдите в обычный режим и выполните следующую команду:
:vsplit [file_path]
Если вы укажете путь к файлу, он откроет файл во вновь разделенном окне, в противном случае во вновь разделенном окне откроется тот же файл.
Более короткая команда vsplitis vs(вы также можете указать путь к файлу vs).
В качестве альтернативного способа создания вертикального разделения вы можете нажать комбинацию клавиш Ctrl + w и, наконец, нажать букву « v » (v для вертикального разделения).
Разделить окно по горизонтали
Vim также позволяет разделить окно по горизонтали.
Чтобы сделать горизонтальное разделение, войдите в обычный режим и выполните следующую команду:
:split [file_path]
Если вы укажете путь к файлу, он откроет файл во вновь разделенном окне, в противном случае во вновь разделенном окне будет открыт тот же файл.
Более короткая команда для выполнения горизонтального разделения — использовать spкоманду. Он также принимает путь к файлу.
Если вам интересно, существует ли какая-либо комбинация клавиш для создания горизонтально разделенного окна, то да. Это «Ctrl+w», а затем нажмите букву «s».
Закрыть разделенные окна
Есть несколько способов закрыть/выйти из активного разделенного окна.
- :q[uit]- закрыть текущее окно и буфер
- :bd[elete]- выгрузить текущий буфер, а затем закрыть текущее окно
- :on[ly]- закрыть все остальные окна, но оставить открытыми все буфера
Навигация по разделенным окнам
Рассмотрим следующий сценарий: у меня есть рабочее пространство Vim, разделенное на четыре квадранта.
Ниже приведены четыре операции, которые вы можете выполнять, и комбинации клавиш.
- Перейдите к разделенному окну слева: нажмите Ctrl + w и нажмите h
- Перейдите к разделенному окну вниз: нажмите Ctrl + w и нажмите j
- Перейдите к разделенному окну вверху: нажмите Ctrl + w и нажмите k
- Перейдите к разделенному окну справа: нажмите Ctrl + w и нажмите l
Изменение размера разделенных окон
По умолчанию Vim создает разделения одинаковой ширины/высоты. Это хорошо для моего обсессивно-компульсивного расстройства, но не очень продуктивно, когда у меня есть файл, который я редактирую большую часть времени, и другой файл, который я редактирую редко.
Итак, давайте рассмотрим, как изменить размер разделенных окон в Vim.
Изменить размер окна
Чтобы изменить размер окна, используйте один из следующих способов:
- Нажмите комбинацию клавиш Ctrl + w [опционально укажите число], а затем нажмите символ «+» (плюс), чтобы увеличить высоту текущего окна.
- Нажмите комбинацию клавиш Ctrl + w [опционально укажите число], а затем нажмите символ «-» (минус), чтобы уменьшить высоту текущего окна.
- Нажмите комбинацию клавиш Ctrl + w [при желании укажите число], а затем нажмите символ «<» (больше), чтобы уменьшить ширину текущего окна.
- Нажмите комбинацию клавиш Ctrl + w [необязательно укажите число], а затем нажмите символ «>» (меньше), чтобы увеличить ширину текущего окна.
Максимально разверните окно
Ниже приведены комбинации клавиш, которые вы можете нажать, чтобы развернуть окно, разделенное по вертикали, по вертикали или окно, разделенное по горизонтали, по горизонтали.
- Расширить по вертикали — нажмите Ctrl + w , а затем нажмите символ вертикальной черты « | » (символ, который вводится, когда вы нажимаете клавишу обратной косой черты, удерживая нажатой клавишу Shift)
- Развернуть по горизонтали — нажать Ctrl+w и затем нажать «_»
Сбросить размер всех измененных окон
Чтобы сбросить размер всех разделенных окон, нажмите Ctrl + w , а затем « = ». Это изменит размер всех окон и сделает их одинаковыми.
Дополнительные советы по улучшению вашего рабочего процесса
Давайте рассмотрим несколько советов, которые, как мне кажется, могут оказаться полезными для рабочего процесса, включающего создание нескольких разделенных окон в рабочей области Vim.
Открыть новый файл/буфер
Это откроет тот же файл в новом разделенном окне. Чтобы открыть другой файл в новом окне, используйте команду :eили :open, за которой следует имя файла, чтобы сделать разделение окна действительно пригодным для использования.
Скопировать и вставить
На самом деле это не совет, но когда вы копируете или вырезаете что-то из разделенного окна, переходите в другое окно и пытаетесь вставить, это сработает. Дополнительная настройка не требуется.
Переназначить ключи
Если вы внимательно посмотрите на навигацию между активными окнами, это похоже на перемещение курсора. За исключением того, что необходимо каждый раз нажимать «Ctrl + w», а затем нажимать клавиши h,j,k,l.
Ниже то, чем я лично пользуюсь. Вместо того, чтобы нажимать «Ctrl + w», а затем нажимать клавиши h, j, k, l, вы можете просто нажать «Ctrl + [h, j, k, l]».
Если вы хотите использовать эти комбинации клавиш, добавьте следующие ключи в ваш ‘vimrc’:
nnoremap <C-J> <C-W><C-J> nnoremap <C-K> <C-W><C-K> nnoremap <C-L> <C-W><C-L> nnoremap <C-H> <C-W><C-H>
Разделение настроек
По умолчанию, когда вы создаете вертикально разделенное окно, оно открывается слева. Чтобы изменить это поведение по умолчанию, добавьте следующую строку в файл ‘vimrc’.
set splitright
Точно так же, если вы создадите новое горизонтально разделенное окно, оно откроется в самой верхней части рабочей области Vim. Чтобы новое горизонтально разделенное окно открывалось в нижней части текущего окна, добавьте следующую строку в файл ‘vimrc’.
set splitbelow
Вывод
В этой статье рассказывается, как создать одно или несколько горизонтальных или вертикальных разделений в активной рабочей области Vim. Мы также рассмотрим, как изменить размер разделенных окон, закрыть активное разделенное окно и как перемещаться между открытыми окнами.
Заинтересованы в более продвинутых темах Vim? Пройдите этот рекомендуемый курс Vim.