feat: enable vim syntax fallback by default (#152)
## Problem Languages without a treesitter parser (COBOL, Fortran, etc.) got no syntax highlighting because \`highlights.vim.enabled\` defaulted to \`false\`. ## Solution Flip the default to \`true\`. The vim syntax path is already deferred via \`vim.schedule\` so it never blocks the first paint. \`max_lines = 200\` stays unchanged — appropriate given the ~30x slower per-hunk cost vs treesitter.
This commit is contained in:
parent
e1d3b81607
commit
29e624d9f0
3 changed files with 12 additions and 10 deletions
|
|
@ -15,11 +15,11 @@ with language-aware syntax highlighting.
|
||||||
[vscode-diff](https://github.com/esmuellert/codediff.nvim) FFI backend for
|
[vscode-diff](https://github.com/esmuellert/codediff.nvim) FFI backend for
|
||||||
word-level accuracy)
|
word-level accuracy)
|
||||||
- `:Gdiff` unified diff against any revision
|
- `:Gdiff` unified diff against any revision
|
||||||
- Background-only diff colors for `&diff` buffers
|
|
||||||
- Inline merge conflict detection, highlighting, and resolution
|
- Inline merge conflict detection, highlighting, and resolution
|
||||||
- Email-quoted diff highlighting (`> diff ...` prefixes, arbitrary nesting
|
- Email quoting/patch syntax support (`> diff ...`)
|
||||||
depth)
|
- Vim syntax fallback
|
||||||
- Vim syntax fallback, configurable blend/priorities
|
- Configurable highlighiting blend & priorities
|
||||||
|
- Context-inclusive, high-accuracy highlights
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -89,7 +89,7 @@ Configuration is done via `vim.g.diffs`. Set this before the plugin loads:
|
||||||
max_lines = 500,
|
max_lines = 500,
|
||||||
},
|
},
|
||||||
vim = {
|
vim = {
|
||||||
enabled = false,
|
enabled = true,
|
||||||
max_lines = 200,
|
max_lines = 200,
|
||||||
},
|
},
|
||||||
intra = {
|
intra = {
|
||||||
|
|
@ -204,7 +204,7 @@ Configuration is done via `vim.g.diffs`. Set this before the plugin loads:
|
||||||
See |diffs.TreesitterConfig| for fields.
|
See |diffs.TreesitterConfig| for fields.
|
||||||
|
|
||||||
{vim} (table, default: see below)
|
{vim} (table, default: see below)
|
||||||
Vim syntax highlighting options (experimental).
|
Vim syntax fallback highlighting options.
|
||||||
See |diffs.VimConfig| for fields.
|
See |diffs.VimConfig| for fields.
|
||||||
|
|
||||||
{intra} (table, default: see below)
|
{intra} (table, default: see below)
|
||||||
|
|
@ -269,13 +269,15 @@ Configuration is done via `vim.g.diffs`. Set this before the plugin loads:
|
||||||
|
|
||||||
*diffs.VimConfig*
|
*diffs.VimConfig*
|
||||||
Vim config fields: ~
|
Vim config fields: ~
|
||||||
{enabled} (boolean, default: false)
|
{enabled} (boolean, default: true)
|
||||||
Use vim syntax highlighting as fallback when no
|
Use vim syntax highlighting as fallback when no
|
||||||
treesitter parser is available for a language.
|
treesitter parser is available for a language.
|
||||||
Creates a scratch buffer, sets the filetype, and
|
Creates a scratch buffer, sets the filetype, and
|
||||||
queries |synID()| per character to extract
|
queries |synID()| per character to extract
|
||||||
highlight groups. Slower than treesitter but
|
highlight groups. Deferred via |vim.schedule()|
|
||||||
covers languages without a TS parser installed.
|
so it never blocks the first paint. Slower than
|
||||||
|
treesitter but covers languages without a TS
|
||||||
|
parser installed (e.g., COBOL, Fortran).
|
||||||
|
|
||||||
{max_lines} (integer, default: 200)
|
{max_lines} (integer, default: 200)
|
||||||
Skip vim syntax highlighting for hunks larger than
|
Skip vim syntax highlighting for hunks larger than
|
||||||
|
|
|
||||||
|
|
@ -124,7 +124,7 @@ local default_config = {
|
||||||
max_lines = 500,
|
max_lines = 500,
|
||||||
},
|
},
|
||||||
vim = {
|
vim = {
|
||||||
enabled = false,
|
enabled = true,
|
||||||
max_lines = 200,
|
max_lines = 200,
|
||||||
},
|
},
|
||||||
intra = {
|
intra = {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue