Problem: single-row extmarks (`end_row = buf_line, end_col = len`) do not trigger `hl_eol` — Neovim requires `end_row > start_row`. Line backgrounds stopped at the last character instead of extending to the window edge. Solution: use `end_row = buf_line + 1, end_col = 0` for line bg extmarks. Replace per-hunk `nvim_buf_clear_namespace` with `clear_ns_by_start` that queries extmarks by start position only, so adjacent hunks' trailing `end_row` is never killed. |
||
|---|---|---|
| .. | ||
| diffs | ||