runtime(syntax-tests): Allow for folded and wrapped lines in syntax test files
The current implementation falls short for syntax test files
on two accounts:
1. With folded lines -- some lines before folded lines are
unnecessarily repeated in generated dump files because
closed folded lines are always treated as opened for the
cursor to move _in_ instead of to move _over_ them.
2. With wrapped lines (longer than 75 columns) -- some lines
are omitted in generated dump files because calculations
for the cursor progress and its movement commands only
refer to file lines and not their layout within a 20x75
buffer (less &cmdheight).
As an alternative, we abandon deterministic (and inaccurate
at times) calculations for the cursor progress and, instead,
advance the cursor by as much as before for a single dump
file, but now rely on marking the last visible line and
additional movement to position lines at desired offsets,
carefully preserving compatibility for the &scrolloff and
&ruler values inherited from defaults.vim. The parent Vim
process will keep track of progress through a syntax test
file made by its child process ("terminal") by reading the
rightmost end of the ruler line from the terminal buffer,
looking for " All " or " Bot " for its cue to finish dump
file generation.
With these changes applied, the lossless line length limit
will be raised from 75 to 1425 (for a 19x75 view) columns.
Also, prefer "lastline" to "truncate" for &display; hiding
the content of any last _long_ line in a view goes against
the purpose of syntax file testing -- all lines should be
recorded.
related: #15150
fixes: #14245
Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
f397549332
commit
8418446644
@ -1,9 +1,11 @@
|
||||
|V+0#00e0e07#ffffff0|a|r|i|a|b|l|e|2|=+0#0000000&|$+0#e000e06&|{|V|a|r|i|a|b|l|e|A|:+0#af5f00255&|-|$+0#e000e06&|{|V|a|r|B|:+0#af5f00255&|-|`+0#0000000&|i|d| |-|n|g| ||| |w|c| |-|c|`|}+0#e000e06&@1| +0#0000000&@25
|
||||
|[+0#af5f00255#ffffff0| +0#0000000&|-+0#af5f00255&|t| +0#0000000&|0+0#e000002&| +0#0000000&|]+0#af5f00255&| +0#0000000&|&@1| |e+0#af5f00255&|c|h|o| +0#e000002&|"+0#af5f00255&|\+0#e000e06&|n|d+0#e000002&|a|t|e|"+0#af5f00255&| +0#0000000&@49
|
||||
|V+0#00e0e07&|a|r|i|a|b|l|e|1|=+0#0000000&|$+0#e000e06&|{|V|a|r|i|a|b|l|e|A|:+0#af5f00255&|-|$+0#e000e06&|{|V|a|r|B|:+0#af5f00255&|=|`+0#0000000&|i|d| |-|n|g| ||| |w|c| |-|c|`|}+0#e000e06&@1| +0#0000000&@25
|
||||
|V+0#00e0e07&|a|r|i|a|b|l|e|2|=+0#0000000&|$+0#e000e06&|{|V|a|r|i|a|b|l|e|A|:+0#af5f00255&|-|$+0#e000e06&|{|V|a|r|B|:+0#af5f00255&|-|`+0#0000000&|i|d| |-|n|g| ||| |w|c| |-|c|`|}+0#e000e06&@1| +0#0000000&@25
|
||||
|V+0#00e0e07&|a|r|i|a|b|l|e|3|=+0#0000000&|$+0#e000e06&|{|V|a|r|i|a|b|l|e|A|:+0#af5f00255&|-|$+0#e000e06&|{|V|a|r|B|:+0#af5f00255&|?|`+0#0000000&|i|d| |-|n|g| ||| |w|c| |-|c|`|}+0#e000e06&@1| +0#0000000&@25
|
||||
|V+0#00e0e07&|a|r|i|a|b|l|e|3|=+0#0000000&|$+0#e000e06&|{|V|a|r|i|a|b|l|e|A|:+0#af5f00255&|-|$+0#e000e06&|{|V|a|r|B|:+0#af5f00255&|+|`+0#0000000&|i|d| |-|n|g| ||| |w|c| |-|c|`|}+0#e000e06&@1| +0#0000000&@25
|
||||
|e+0#af5f00255&|c|h|o| +0#e000002&|"+0#af5f00255&|$+0#e000e06&|V|a|r|i|a|b|l|e|1|"+0#af5f00255&| +0#e000002&|"+0#af5f00255&|$+0#e000e06&|V|a|r|i|a|b|l|e|2|"+0#af5f00255&| +0#e000002&|"+0#af5f00255&|$+0#e000e06&|V|a|r|i|a|b|l|e|3|"+0#af5f00255&| +0#0000000&@31
|
||||
>e+0#af5f00255&|c|h|o| +0#e000002&|"+0#af5f00255&|$+0#e000e06&|V|a|r|i|a|b|l|e|1|"+0#af5f00255&| +0#e000002&|"+0#af5f00255&|$+0#e000e06&|V|a|r|i|a|b|l|e|2|"+0#af5f00255&| +0#e000002&|"+0#af5f00255&|$+0#e000e06&|V|a|r|i|a|b|l|e|3|"+0#af5f00255&| +0#0000000&@31
|
||||
@75
|
||||
>#+0#0000e05&@74
|
||||
|#+0#0000e05&@74
|
||||
@5| +0#0000000&@69
|
||||
|#+0#0000e05&| +0#0000000&@73
|
||||
|#+0#0000e05&| |T|h|e| |s|a|m|e| |w|i|t|h| |t|w|o| |n|e|s|t|e|t| |$|{|}| |l|e|v|e|l| +0#0000000&@38
|
||||
@ -15,6 +17,4 @@
|
||||
|V+0#00e0e07&|a|r|i|a|b|l|e|3|=+0#0000000&|$+0#e000e06&|{|V|a|r|i|a|b|l|e|A|:+0#af5f00255&|-|$+0#e000e06&|{|V|a|r|B|:+0#af5f00255&|-|$+0#e000e06&|{|V|a|r|C|:+0#af5f00255&|+|e+0#0000000&|n|g|3|}+0#e000e06&@2| +0#0000000&@28
|
||||
|e+0#af5f00255&|c|h|o| +0#e000002&|"+0#af5f00255&|$+0#e000e06&|V|a|r|i|a|b|l|e|1|"+0#af5f00255&| +0#e000002&|"+0#af5f00255&|$+0#e000e06&|V|a|r|i|a|b|l|e|2|"+0#af5f00255&| +0#e000002&|"+0#af5f00255&|$+0#e000e06&|V|a|r|i|a|b|l|e|3|"+0#af5f00255&| +0#0000000&@31
|
||||
@75
|
||||
|#+0#0000e05&| |C|a|s|e| |1|b| |w|i|t|h| |c|o|n|s|t|a|n|t|s| |i|n| |s|i|n|g|l|e| |q|u|o|t|e|s| +0#0000000&@33
|
||||
|[+0#af5f00255&| +0#0000000&|-+0#af5f00255&|t| +0#0000000&|0+0#e000002&| +0#0000000&|]+0#af5f00255&| +0#0000000&|&@1| |e+0#af5f00255&|c|h|o| +0#e000002&|"+0#af5f00255&|\+0#e000e06&|n|d+0#e000002&|a|t|e|"+0#af5f00255&| +0#0000000&@49
|
||||
@57|1|9@1|,|1| @8|5|4|%|
|
||||
@57|1|9|7|,|1| @8|5|3|%|
|
||||
|
||||
Reference in New Issue
Block a user