Открываем

Открыть вкладку можно тремя разными способами, самый простой и интуитивный
:tabnew в нормальном режиме, он откроет новую вкладку с пустым буфером. Можно сразу открыть вкладку с файлом, передав его имя как параметр:tabnew futuri.coВкладки можно также открыть сразу после запуска, если добавить ключ
-p перед списком имен файлов — для каждого откроется своя вкладка.vim -p habra.sh habr.pyКонечно, открывать табы до бесконечности не получится, по-умолчанию стоит ограничение в 10 вкладок. Устанавливается оно параметром
tabpagemax, например::set tabpagemax=15Ограничение работает только для открытия вкладок при помощи ключа
-p. И если вы собираетесь открыть больше вкладок, чем разрешено, то файлы откроются, но вкладки не отобразятся и перемещаться по ним можно будет при помощи команд :next и :prev.И еще один способ открыть вкладку
:tabf. Параметром ему передается шаблон и если файл найден, то он откроется в новой вкладке. Например::tabf index*Если шаблону соответствует больше, чем один файл, то вим просто выругается и ничего не сделает. Полезная особенность
:tabf в том, что с ним работает автодополнение по <tab>.Перемещаемся
Переключаться по табам можно командами
:tabn и :tabp, для следующего и предыдущего таба, или в нормальном режиме gt и gT соответственно, причем можно использовать 5gT и т.п.Когда вкладок открыто много, могут пригодиться команды
:tabfirst или :tabfir открывающие первую вкладку и :tablast, открывающие последнюю.По-умолчанию полоска с табами показывается только, когда открыта хотя бы одна вкладка, включить постоянное отображение можно при помощи:
:set showtabline=2Посмотреть все открытые табы можно при помощи
:tabs.Конечно же, всем этим командам можно назначить свои сочетания клавиш, я использую следующее:
nmap ,t :tabnew<CR>Перемещаем
Перемещать вкладки можно командой
:tabm n, где n это номер позиции, на которую мы хотим ее переместить, конечно же, по правилам хорошего тона, нумерация вкладок начинается с 0.:tabm 2Кстати, использование вкладок никак не ограничивает другие возможности вима, по этому никто не запрещает разделить одну вкладку на несколько областей видимости, например (
:sp, :vsp).Командуем
Выполнять команды над содержимым всех табов можно при помощи
:tabdo command, например, можно поменять всюду имя переменной::tabdo %s/шило/мыло/gПодсматриваем
| :tabnew [filename] | Открыть новую вкладку |
| :tabf pat*ern | Открыть вкладку по шаблону |
| :tabs | Список открытых вкладок |
| gt или :tabn | Следующая вкладка |
| gT или :tabp | Предыдущая вкладка |
| :tabfirst или :tabfir | Первая вкладка |
| :tablast | Последняя вкладка |
| :tabm n | Переместить вкладку в n (от 0) |
| :tabdo command | Выполнить над всеми вкладками |
И если этого недостаточно
:help tab-page-intro