feat: Per-tabpage outlines

Closes #37

Almost completely refactored the UI parts outline.nvim to use a Sidebar
object that implements an outline window. In init.lua, we can then store
a table of the outline for each tabpage ID.

When tabs are closed the outline is closed and sidebar reset
responsibly.

This simplifies `init.lua` quite a lot, making it the highest level
control center for the outline elements.

All lua APIs and commands should work as before.
This commit is contained in:
hedy
2023-11-24 14:50:24 +08:00
parent 83dc477af5
commit e705330e40
9 changed files with 754 additions and 600 deletions

View File

@@ -75,6 +75,7 @@
This ensures outline.nvim highlights work if `termguicolors` is not enabled
- A built-in provider for `norg` files that displays headings in the outline is now
provided. This requires `norg` parser to be installed for treesitter
- Outline.nvim now supports per-tabpage outlines
### Fixes