Some time ago I've reported #54 with signcolumn setting in neovim that I'm using. This PR fixes the main issue, which is displaying doubled signs and one of them is not dimmed - really burns my eyes often. The solution is not perfect, but IMO is good enough.
Neovim has a special signcolumn setting value auto:x where x is the
number of displayed signs in one line. Current implementation of dimming
the signs is to add copy of existing signs with higher priority to be on
top of covered sign. When this setting was on, the original sign was not
covered, by the extra sign. Instead the two signs were normally
displayed...
The solution is to fill the sign column with empty signs (fg, and bg
same as the signcolumn bg). The number of inserted empty signs is the
number possible sings minus number of original signs in line, ie. The
signcolumn setting is auto:3, at line x editor displays 1 sign. The
number of empty signs is 3-1=2. So, in total we add 1 sign to replace
original and two empty to fill the sign column. This way the original
sign is covered.
Note: this solution is not perfect, but fixes what this plugin should
do, it doesn't burn eyes of a user. As we create empty signs they will
always fill the signcolumn, and in some cases it will "extend" the
signcolumn when there is no signs to display.
This commit is combination of following squashed commits:
Hi,
Some time ago I've reported #54 with
signcolumn
setting in neovim that I'm using. This PR fixes the main issue, which is displaying doubled signs and one of them is not dimmed - really burns my eyes often. The solution is not perfect, but IMO is good enough.Neovim has a special signcolumn setting value auto:x where x is the number of displayed signs in one line. Current implementation of dimming the signs is to add copy of existing signs with higher priority to be on top of covered sign. When this setting was on, the original sign was not covered, by the extra sign. Instead the two signs were normally displayed...
The solution is to fill the sign column with empty signs (fg, and bg same as the signcolumn bg). The number of inserted empty signs is the number possible sings minus number of original signs in line, ie. The signcolumn setting is
auto:3
, at line x editor displays 1 sign. The number of empty signs is 3-1=2. So, in total we add 1 sign to replace original and two empty to fill the sign column. This way the original sign is covered.Note: this solution is not perfect, but fixes what this plugin should do, it doesn't burn eyes of a user. As we create empty signs they will always fill the signcolumn, and in some cases it will "extend" the signcolumn when there is no signs to display.
This commit is combination of following squashed commits: