1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
local theme = {
fill = 'TabLineFill',
-- Also you can do this: fill = { fg='#f2e9de', bg='#907aa9', style='italic' }
head = 'TabLine',
current_tab = 'TabLineSel',
tab = 'TabLine',
win = 'TabLine',
tail = 'TabLineTail',
close_sel = 'TabLineCloseSel',
close = 'TabLineClose',
}
require('tabby.tabline').set(function(line)
return {
{
{ ' ', hl = theme.head },
line.sep(' ', theme.head, theme.fill),
},
line.tabs().foreach(function(tab)
local hl = tab.is_current() and theme.current_tab or theme.tab
return {
line.sep(' ', hl, theme.fill),
tab.is_current() and '' or '',
tab.number(),
tab.name(),
tab.close_btn({' ', hl = tab.is_current() and theme.close_sel or theme.close}),
line.sep(' ', hl, theme.fill),
hl = hl,
margin = ' ',
}
end),
line.spacer(),
line.wins_in_tab(line.api.get_current_tab()).foreach(function(win)
return {
line.sep(' ', theme.win, theme.fill),
win.is_current() and '·' or ' ',
win.buf_name(),
line.sep(' ', theme.win, theme.fill),
hl = theme.win,
margin = ' ',
}
end),
{
line.sep(' ', theme.tail, theme.fill),
{ ' ', hl = theme.tail },
},
hl = theme.fill,
}
end)
|