17

Скажем, у меня в Vim открыта куча вкладок, с табличкой выглядит примерно так:

1 v/file1.py 2 t/file.py 1 t/file.py 1 o/otherfile.py

Посмотрите, как на двух вкладках написано "t/file.py"? Это разные файлы, они просто превращаются в одну метку вкладки.

В моем рабочем процессе заголовки вкладок часто бывают неоднозначными (да, шеф-повар называет все «default.rb») или бесполезными («Я знаю, что на одной из этих 8 вкладок с 4 буферами есть файл, который я ищу ...»).

Я хотел бы переименовать вкладки, чтобы указать, что они логически представляют:

1 homepage_view 2 tests 1 homepage_template 1 o/otherfile.py

У меня все в порядке с вкладками по умолчанию для метки на основе имени файла, если я свободен менять их после создания вкладки.

Как я могу сделать это в Vim?

2 ответа2

14

Есть хороший плагин под названием Taboo, который делает это легко. Просто установите его, а затем вы можете изменить заголовок вкладки с помощью:

:TabooRename My Tab Title

Вы можете посмотреть исходный код этого плагина, если вы заинтересованы в написании собственного решения.

7

Для gvim смотрите

:help 'guitablabel'
:help setting-guitablabel

Задайте для выражения выражение t:mytablabel (локальная переменная табуляции), если оно существует, или для пустой строки (то есть для использования по умолчанию):

:set guitablabel=%{exists('t:mytablabel')?t:mytablabel\ :''}

Может быть, это уже слишком сложно, или, может быть, вы хотите, чтобы полюбить. В этом случае определите функцию:

function! GuiTabLabel()
  return exists('t:mytablabel') ? t:mytablabel : ''
endfunction
:set guitablabel=%{GuiTabLabel()}
:set go+=e

Затем в любой вкладке, где вы хотите переопределить значение по умолчанию, сделайте что-то вроде

:let t:mytablabel = 'homepage_template'

Если вы используете vim в терминале, а не в gvim, вам нужно установить 'tabline' вместо 'guitablable' . Это немного сложнее, так как вам нужно одно выражение, включающее метки для всех открытых вкладок. Полный пример под

:help setting-tabline

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .