diff options
author | georgev93 <39860568+georgev93@users.noreply.github.com> | 2025-01-24 22:57:45 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-24 19:57:45 -0800 |
commit | 931ee5591fa764a769946318e05062098baf7c21 (patch) | |
tree | 82dd7f486cc47d1e7a2d44d204ab12f967a5e0da /runtime/lua/vim | |
parent | c6d2cbf8f51abfa0c9d244ef384a15b0b69e16c6 (diff) | |
download | rneovim-931ee5591fa764a769946318e05062098baf7c21.tar.gz rneovim-931ee5591fa764a769946318e05062098baf7c21.tar.bz2 rneovim-931ee5591fa764a769946318e05062098baf7c21.zip |
feat(extmarks): virtual text can be right-aligned, truncated #31921
Problem: Right aligned virtual text can cover up buffer text if virtual
text is too long
Solution: An additional option for `virt_text_pos` called
`eol_right_align` has been added to truncate virtual text if it would
have otherwise covered up buffer text. This ensures the virtual text
extends no further left than EOL.
Diffstat (limited to 'runtime/lua/vim')
-rw-r--r-- | runtime/lua/vim/_meta/api.lua | 9 | ||||
-rw-r--r-- | runtime/lua/vim/diagnostic.lua | 2 |
2 files changed, 10 insertions, 1 deletions
diff --git a/runtime/lua/vim/_meta/api.lua b/runtime/lua/vim/_meta/api.lua index 6d9a17ea2b..50fb7e4f9d 100644 --- a/runtime/lua/vim/_meta/api.lua +++ b/runtime/lua/vim/_meta/api.lua @@ -589,6 +589,15 @@ function vim.api.nvim_buf_line_count(buffer) end --- (highest priority last). --- - virt_text_pos : position of virtual text. Possible values: --- - "eol": right after eol character (default). +--- - "eol_right_align": display right aligned in the window +--- unless the virtual text is longer than +--- the space available. If the virtual +--- text is too long, it is truncated to +--- fit in the window after the EOL +--- character. If the line is wrapped, the +--- virtual text is shown after the end of +--- the line rather than the previous +--- screen line. --- - "overlay": display over the specified column, without --- shifting the underlying text. --- - "right_align": display right aligned in the window. diff --git a/runtime/lua/vim/diagnostic.lua b/runtime/lua/vim/diagnostic.lua index ead75f7d51..04118999cf 100644 --- a/runtime/lua/vim/diagnostic.lua +++ b/runtime/lua/vim/diagnostic.lua @@ -220,7 +220,7 @@ end --- @field virt_text? [string,any][] --- --- See |nvim_buf_set_extmark()|. ---- @field virt_text_pos? 'eol'|'overlay'|'right_align'|'inline' +--- @field virt_text_pos? 'eol'|'eol_right_align'|'inline'|'overlay'|'right_align' --- --- See |nvim_buf_set_extmark()|. --- @field virt_text_win_col? integer |