refactor(column): define and use maximum 'statuscolumn' width

Problem:  The maximum 'statuscolumn' width and grow behavior is undocumented.
Solution: Define, use and document the maximum 'statuscolumn' width and grow behavior.
This commit is contained in:
Luuk van Baal
2024-01-01 14:24:48 +01:00
committed by Lewis Russell
parent 444f37fe51
commit fa61e0c047
7 changed files with 32 additions and 26 deletions

View File

@@ -8021,9 +8021,13 @@ return {
%s sign column for currently drawn line
%C fold column for currently drawn line
NOTE: To draw the sign and fold columns, their items must be included in
'statuscolumn'. Even when they are not included, the status column width
will adapt to the 'signcolumn' and 'foldcolumn' width.
The 'statuscolumn' width follows that of the default columns and
adapts to the |'numberwidth'|, |'signcolumn'| and |'foldcolumn'| option
values (regardless of whether the sign and fold items are present).
Aditionally, the 'statuscolumn' grows with the size of the evaluated
format string, up to a point (following the maximum size of the default
fold, sign and number columns). Shrinking only happens when the number
of lines in a buffer changes, or the 'statuscolumn' option is set.
The |v:lnum| variable holds the line number to be drawn.
The |v:relnum| variable holds the relative line number to be drawn.