mirror of
https://github.com/vim/vim
synced 2025-05-02 22:37:47 +02:00
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>
20 lines
653 B
Text
20 lines
653 B
Text
| +0&#ffffff0@7|l+0#00e0003&|o|n|g| +0#0000000&|m|i|n|u|s|_|o|n|e|_|h|e|x|_|l| |=| |0+0#e000002&|x|f@3|_|f@3|_|f@3|_|f@3|L|;+0#0000000&| @20
|
|
@8|l+0#00e0003&|o|n|g| +0#0000000&|m|i|n|u|s|_|o|n|e|_|o|c|t|_|l| |=| |0+0#e000002&|1|7|_|7@3|_|7@3|_|7@3|_|7@3|_|7@3|L|;+0#0000000&| @13
|
|
@8|l+0#00e0003&|o|n|g| +0#0000000&|m|i|n|u|s|_|o|n|e|_|b|i|n|_|l| |=| |0+0#e000002&|b|1@3|_|1@3|_|1@3|_|1@3|_|1@3|_|1@3|_|1@3|_|1@3|_|1@1
|
|
@2|_|1@3|_|1@3|_|1@3|_|1@3|_|1@3|_|1@3|_|1@3|L|;+0#0000000&| @35
|
|
@4|}| @69
|
|
>}| @73
|
|
|~+0#4040ff13&| @73
|
|
|~| @73
|
|
|~| @73
|
|
|~| @73
|
|
|~| @73
|
|
|~| @73
|
|
|~| @73
|
|
|~| @73
|
|
|~| @73
|
|
|~| @73
|
|
|~| @73
|
|
|~| @73
|
|
|~| @73
|
|
| +0#0000000&@56|8@1|,|1| @9|B|o|t|
|