diff options
| author | Freddie Haddad <6127369+freddiehaddad@users.noreply.github.com> | 2026-08-03 08:32:55 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-08-03 11:32:55 -0400 |
| commit | 866d61e91abaa73561f91ddd8f6e27bd50f9bc72 (patch) | |
| tree | 4920f2e0e9bf684a13bb5bf7c3f689011691ff65 /runtime/ftplugin/java.vim | |
| parent | a0a04863e477f3b22d1b065439ba71b204d8d45f (diff) | |
| download | rneovim-866d61e91abaa73561f91ddd8f6e27bd50f9bc72.tar.gz rneovim-866d61e91abaa73561f91ddd8f6e27bd50f9bc72.tar.bz2 rneovim-866d61e91abaa73561f91ddd8f6e27bd50f9bc72.zip | |
fix(decor): 'breakindent'/'showbreak' gap ignores active highlight #41073
Problem:
'breakindent' and 'showbreak' draw their own padding with no
reference to whatever decoration or syntax highlight is currently
active, so it goes unhighlighted even mid-highlight, not just past a
real EOL. Gating this on the decoration's `hl_eol` flag (as an
earlier version of this fix did) missed plain highlights with no
`hl_eol` at all, which have the exact same problem.
Solution:
Snapshot decor_attr into decor_attr_save right before it can be
reset by 'linebreak' filler handling, and pass it into
handle_breakindent()/handle_showbreak_and_filler() to extend into
their padding: it is not a real end of the highlight, just screen
cells with no buffer text. Like the 'linebreak' filler, an
underline/strikethrough/overline is excluded, since it looks like a
broken line drawn over the gap. This also fixes 'breakindent' losing
the highlight right after a real 'linebreak' word-push, since that
reset otherwise leaked into the next row.
Diffstat (limited to 'runtime/ftplugin/java.vim')
0 files changed, 0 insertions, 0 deletions