aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/lsp/semantic_tokens.lua
diff options
context:
space:
mode:
authorTom Churchman <thomas@kepow.org>2022-12-19 00:10:47 +0100
committerGitHub <noreply@github.com>2022-12-18 15:10:47 -0800
commita7332ba9b429f9676723eb88cffb2068f5a95c9b (patch)
treecfb32eee6c2e704fce0c64f2c4c07249579d7dc2 /runtime/lua/vim/lsp/semantic_tokens.lua
parentbf9ad5db962509f3434726b7ad84d31d002fb8a3 (diff)
downloadrneovim-a7332ba9b429f9676723eb88cffb2068f5a95c9b.tar.gz
rneovim-a7332ba9b429f9676723eb88cffb2068f5a95c9b.tar.bz2
rneovim-a7332ba9b429f9676723eb88cffb2068f5a95c9b.zip
fix(tui): set cursor color param as string when required #21407
Problem: See #20628. Terminals supporting cursor color changing usually set the "user-defined" `Cs` terminfo capability. Most terminals expect the parameter to the capability to be a string (in hex format like `#0099ff` or like `rgb:00/99/ff`), others may expect a number. Nvim currently can't handle string parameters, causing terminals to receive a bogus command. Unfortunately, as the `Cs` capability is "user-defined", there's no strict format. The parameter it takes isn't really standardized. It seems most terminals in use follow xterm; iTerm appears to be an exception. Solution: Use the `Cs` capability more reliable by following terminfo and sending the color in hex format, at the cost of using unibilium string vars. Alternatively, could revert https://github.com/neovim/neovim/commit/34d41baf8a8e4ab8c006b7f29a8106e60e311aa2 and hardcode the specific format required by terminals, instead of reading terminfo. Fixes #20628 Fixes #19607
Diffstat (limited to 'runtime/lua/vim/lsp/semantic_tokens.lua')
0 files changed, 0 insertions, 0 deletions