Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ jobs:
publish:
if: github.event.pull_request.merged == true
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Checkout dev
uses: actions/checkout@v4
Expand Down
3 changes: 2 additions & 1 deletion docs/adrs/002.tabs-vim.themes.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Expose all tab bar colors via a single `g:tabs_vim_colors` dict. Each key is a l
**Mode color keys:** `normal`, `insert`, `visual`, `replace`, `command`, `terminal`
**Tab bar chrome keys:** `tabline` (`TabLine`), `tabline_sel` (`TabLineSel`), `tabline_fill` (`TabLineFill`)

The plugin applies all highlight groups — both its own `TabsVim_*` groups and the standard Vim `TabLine*` groups — so users need no separate `hi` declarations in their vimrc.
The plugin applies all highlight groups — both its own `TabsVim_*` groups and the standard Vim `TabLine*` groups — so users need no separate `hi` declarations in their vimrc. `TabLineSel` is set for completeness and interoperability with other tabline-aware tooling, while selected-tab styling in the plugin-rendered bar remains mode-driven via `TabsVim_Sel*`.

## Context

Expand Down Expand Up @@ -49,5 +49,6 @@ tabs.vim sits between lightline (full palette control, many modes) and buftablin

- `g:tabs_vim_colors` is the single configuration point for all tab bar colors (mode pills and chrome)
- The plugin applies all `hi` statements from the merged dict (user overrides + defaults) at load time — no separate `hi TabLine*` declarations needed in the user's vimrc
- In the plugin-managed `TabsVim_Line()`, selected-tab visuals are determined by mode keys (`normal`/`insert`/`visual`/`replace`/`command`/`terminal`) through `TabsVim_Sel*`; `tabline_sel` targets standard `TabLineSel` interoperability contexts
- If a user sets `TabsVim_*` or `TabLine*` highlight groups themselves *after* the plugin loads, those are respected as-is (plugin does not re-apply on colorscheme change in this phase)
- Phase 4 (Polish) may add `ColorScheme` autocmd re-application, but that is out of scope here
4 changes: 4 additions & 0 deletions docs/specs/tabs.vim.md
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,10 @@ All tab bar colors are configurable via the `g:tabs_vim_colors` global dict. Eac

The plugin owns the full tab bar and applies all highlight groups itself — no separate `hi TabLine*` declarations are needed in the user's vimrc.

In the plugin-managed tab bar, the selected tab is styled by the active mode color via mode-specific selected-tab groups (`TabsVim_SelNormal`, `TabsVim_SelInsert`, etc.). Changing `normal`, `insert`, `visual`, `replace`, `command`, or `terminal` therefore changes selected-tab appearance for that mode.

`tabline`, `tabline_sel`, and `tabline_fill` map to Vim's standard `TabLine`, `TabLineSel`, and `TabLineFill` groups. `tabline_sel` is retained for compatibility/interoperability with non-plugin or default tabline contexts, but it does not control selected-tab styling inside `TabsVim_Line()`.

**Mode color keys:** `normal`, `insert`, `visual`, `replace`, `command`, `terminal`
**Tab bar chrome keys:** `tabline`, `tabline_sel`, `tabline_fill`

Expand Down
Loading