mirror of
https://github.com/stevearc/aerial.nvim
synced 2024-09-16 14:34:08 +02:00
feat: different guide hl group per-level (#41)
This commit is contained in:
parent
6a425ba8b2
commit
0c5c346e88
3 changed files with 30 additions and 11 deletions
|
@ -469,6 +469,12 @@ hi AerialFunctionIcon guifg=#cb4b16 guibg=NONE guisp=NONE gui=NONE cterm=NONE
|
|||
|
||||
" There's also this group for the cursor position
|
||||
hi link AerialLine QuickFixLine
|
||||
|
||||
" You can customize the guides (if show_guide=true)
|
||||
hi link AerialGuide Comment
|
||||
" You can set a different guide color for each level
|
||||
hi AerialGuide1 guifg=Red
|
||||
hi AerialGuide2 guifg=Blue
|
||||
```
|
||||
|
||||
## FAQ
|
||||
|
|
|
@ -39,29 +39,33 @@ M.update_aerial_buffer = function(buf)
|
|||
local kind = config.get_icon(item.kind, conf.collapsed)
|
||||
local spacing
|
||||
if config.show_guides then
|
||||
spacing = ""
|
||||
local last_spacing = 0
|
||||
local guides = {}
|
||||
for i = 1, item.level do
|
||||
local is_last = conf.is_last_by_level[i]
|
||||
if i == item.level then
|
||||
if is_last then
|
||||
spacing = spacing .. config.guides.last_item
|
||||
table.insert(guides, config.guides.last_item)
|
||||
else
|
||||
spacing = spacing .. config.guides.mid_item
|
||||
table.insert(guides, config.guides.mid_item)
|
||||
end
|
||||
else
|
||||
if is_last then
|
||||
spacing = spacing .. config.guides.whitespace
|
||||
table.insert(guides, config.guides.whitespace)
|
||||
else
|
||||
spacing = spacing .. config.guides.nested_top
|
||||
table.insert(guides, config.guides.nested_top)
|
||||
end
|
||||
end
|
||||
local hl_end = last_spacing + string_len[guides[i]]
|
||||
table.insert(highlights, {
|
||||
group = string.format("AerialGuide%d", i),
|
||||
row = row,
|
||||
col_start = last_spacing,
|
||||
col_end = hl_end,
|
||||
})
|
||||
last_spacing = hl_end
|
||||
end
|
||||
table.insert(highlights, {
|
||||
group = "AerialGuide",
|
||||
row = row,
|
||||
col_start = 0,
|
||||
col_end = string_len[spacing],
|
||||
})
|
||||
spacing = table.concat(guides, "")
|
||||
else
|
||||
spacing = string.rep(" ", item.level)
|
||||
end
|
||||
|
|
|
@ -48,6 +48,15 @@ highlight default link AerialLine QuickFixLine
|
|||
|
||||
" The guides when show_guide = true
|
||||
highlight default link AerialGuide Comment
|
||||
highlight default link AerialGuide1 AerialGuide
|
||||
highlight default link AerialGuide2 AerialGuide
|
||||
highlight default link AerialGuide3 AerialGuide
|
||||
highlight default link AerialGuide4 AerialGuide
|
||||
highlight default link AerialGuide5 AerialGuide
|
||||
highlight default link AerialGuide6 AerialGuide
|
||||
highlight default link AerialGuide7 AerialGuide
|
||||
highlight default link AerialGuide8 AerialGuide
|
||||
highlight default link AerialGuide9 AerialGuide
|
||||
|
||||
" The icon displayed to the left of the symbol
|
||||
highlight default link AerialArrayIcon Identifier
|
||||
|
|
Loading…
Reference in a new issue