Параметр «tabline» указывает, как выглядит строка с метками вкладок.
Он используется только при отсутствии строки вкладки GUI.
Вы можете использовать опцию 'showtabline', чтобы указать, когда вы хотите строку с
метки закладок: никогда, если имеется более одной вкладки или
всегда.
Подсветка строки вкладок задается группами TabLine.
TabLineSel и TabLineFill. | Гектолитров-TabLine | | Гектолитров-TabLineSel | | Гектолитров-TabLineFill |
«+» будет показано для вкладки, которая имеет измененное окно. Номер
окна на вкладке также отображается. Таким образом, «3+» означает три окна и одно из
у них есть модифицированный буфер.
Параметр «tabline» позволяет вам определять предпочитаемый способ перехода на вкладки
этикетки. Это не легко, поэтому пример будет приведен здесь.
Для ознакомления с основами см. Опцию statusline. Те же самые предметы могут быть использованы в
опция 'tabline'. Кроме того, | tabpagebuflist () |, | tabpagenr () | а также
| Tabpagewinnr () | функции полезны.
Так как количество ярлыков вкладок будет различным, вам нужно использовать выражение для
весь вариант. Что-то вроде:>
: установить tabline =%! MyTabLine ()
Затем определите функцию MyTabLine () для вывода списка всех ярлыков вкладок.
Удобный способ разделить его на две части: сначала переберите все вкладки
страницы и определить ярлыки для них. Затем получите ярлык для каждой вкладки. >
function MyTabLine()
let s = ''
for i in range(tabpagenr('$'))
" select the highlighting
if i + 1 == tabpagenr()
let s .= '%#TabLineSel#'
else
let s .= '%#TabLine#'
endif
" set the tab page number (for mouse clicks)
let s .= '%' . (i + 1) . 'T'
" the label is made by MyTabLabel()
let s .= ' %{MyTabLabel(' . (i + 1) . ')} '
endfor
" after the last tab fill with TabLineFill and reset tab page nr
let s .= '%#TabLineFill#%T'
" right-align the label to close the current tab page
if tabpagenr('$') > 1
let s .= '%=%#TabLine#%999Xclose'
endif
return s
endfunction
Теперь функция MyTabLabel () вызывается для каждой вкладки, чтобы получить ее метку. >
function MyTabLabel(n)
let buflist = tabpagebuflist(a:n)
let winnr = tabpagewinnr(a:n)
return bufname(buflist[winnr - 1])
endfunction
Это просто упрощенный пример, который приводит к строке вкладки, которая
напоминает значение по умолчанию, но без добавления + для модифицированного буфера или
усечение имен. Вы хотите уменьшить ширину меток в
умный способ, когда не хватает места. Проверьте опцию «столбцы» для
свободное место.