From 62b26040eb4b6752be2c46852e8986083737a1bb Mon Sep 17 00:00:00 2001 From: dkearns Date: Sun, 10 Mar 2024 03:43:28 +1100 Subject: runtime(vim): Update base-syntax, improve :menu{,translate} highlighting (#14162) Improve :menu and :menutranslate highlighting. - Match args to :menutranslation and :popup. - Only highlight special notation in {rhs} of :menu, like :map. - Allow line continuations in {rhs} of :menu and between {english} and {mylang} of :menutranslation, matching common usage. - Bug fixes. Signed-off-by: Doug Kearns Signed-off-by: Christian Brabandt --- runtime/syntax/testdir/dumps/vim_ex_menu_00.dump | 20 ++++++ runtime/syntax/testdir/dumps/vim_ex_menu_01.dump | 20 ++++++ runtime/syntax/testdir/dumps/vim_ex_menu_02.dump | 20 ++++++ runtime/syntax/testdir/dumps/vim_ex_menu_03.dump | 20 ++++++ runtime/syntax/testdir/dumps/vim_ex_menu_99.dump | 20 ++++++ .../testdir/dumps/vim_ex_menutranslate_00.dump | 20 ++++++ .../testdir/dumps/vim_ex_menutranslate_01.dump | 20 ++++++ .../testdir/dumps/vim_ex_menutranslate_02.dump | 20 ++++++ .../testdir/dumps/vim_ex_menutranslate_99.dump | 20 ++++++ runtime/syntax/testdir/input/vim_ex_menu.vim | 73 ++++++++++++++++++++++ .../syntax/testdir/input/vim_ex_menutranslate.vim | 51 +++++++++++++++ 11 files changed, 304 insertions(+) create mode 100644 runtime/syntax/testdir/dumps/vim_ex_menu_00.dump create mode 100644 runtime/syntax/testdir/dumps/vim_ex_menu_01.dump create mode 100644 runtime/syntax/testdir/dumps/vim_ex_menu_02.dump create mode 100644 runtime/syntax/testdir/dumps/vim_ex_menu_03.dump create mode 100644 runtime/syntax/testdir/dumps/vim_ex_menu_99.dump create mode 100644 runtime/syntax/testdir/dumps/vim_ex_menutranslate_00.dump create mode 100644 runtime/syntax/testdir/dumps/vim_ex_menutranslate_01.dump create mode 100644 runtime/syntax/testdir/dumps/vim_ex_menutranslate_02.dump create mode 100644 runtime/syntax/testdir/dumps/vim_ex_menutranslate_99.dump create mode 100644 runtime/syntax/testdir/input/vim_ex_menu.vim create mode 100644 runtime/syntax/testdir/input/vim_ex_menutranslate.vim (limited to 'runtime/syntax/testdir') diff --git a/runtime/syntax/testdir/dumps/vim_ex_menu_00.dump b/runtime/syntax/testdir/dumps/vim_ex_menu_00.dump new file mode 100644 index 0000000000..09c82c465e --- /dev/null +++ b/runtime/syntax/testdir/dumps/vim_ex_menu_00.dump @@ -0,0 +1,20 @@ +>"+0#0000e05#ffffff0| |V|i|m| |:|m|e|n|u| |c|o|m@1|a|n|d|s| +0#0000000&@54 +@75 +|"+0#0000e05&| |:|h|e|l|p| |d|i|s|a|b|l|e| |m|e|n|u|s| +0#0000000&@53 +|m+0#af5f00255&|e|n|u| +0#0000000&|d+0#e000e06&|i|s|a|b|l|e| +0#0000000&|&+0#e000e06&|F|i|l|e|.|&|O|p|e|n|\|.|\|.|\|.| +0#0000000&@44 +|a+0#af5f00255&|m|e|n|u| +0#0000000&|e+0#e000e06&|n|a|b|l|e| +0#0000000&|*+0#e000e06&| +0#0000000&@60 +|a+0#af5f00255&|m|e|n|u| +0#0000000&|d+0#e000e06&|i|s|a|b|l|e| +0#0000000&|&+0#e000e06&|T|o@1|l|s|.|*| +0#0000000&@52 +@75 +@75 +|"+0#0000e05&| |:|h|e|l|p| |m|e|n|u|-|e|x|a|m|p|l|e|s| +0#0000000&@53 +|n+0#af5f00255&|m|e|n|u| +0#0000000&|W+0#e000e06&|o|r|d|s|.|A|d@1|\| |V|a|r| +0#0000000&@8|w|b|"|z|y|e|:|m|e|n|u|!| |W|o|r|d|s|.|<+0#e000e06&|C|-|R|>|z+0#0000000&| |<+0#e000e06&|C|-|R|>|z+0#0000000&|<+0#e000e06&|C|R|>| +0#0000000&@9 +|n+0#af5f00255&|m|e|n|u| +0#0000000&|W+0#e000e06&|o|r|d|s|.|R|e|m|o|v|e|\| |V|a|r| +0#0000000&@5|w|b|"|z|y|e|:|u|n|m|e|n|u|!| |W|o|r|d|s|.|<+0#e000e06&|C|-|R|>|z+0#0000000&|<+0#e000e06&|C|R|>| +0#0000000&@14 +|v+0#af5f00255&|m|e|n|u| +0#0000000&|W+0#e000e06&|o|r|d|s|.|A|d@1|\| |V|a|r| +0#0000000&@8|"|z|y|:|m|e|n|u|!| |W|o|r|d|s|.|<+0#e000e06&|C|-|R|>|z+0#0000000&| |<+0#e000e06&|C|-|R|>|z+0#0000000&| |<+0#e000e06&|C|R|>| +0#0000000&@11 +|v+0#af5f00255&|m|e|n|u| +0#0000000&|W+0#e000e06&|o|r|d|s|.|R|e|m|o|v|e|\| |V|a|r| +0#0000000&@5|"|z|y|:|u|n|m|e|n|u|!| |W|o|r|d|s|.|<+0#e000e06&|C|-|R|>|z+0#0000000&|<+0#e000e06&|C|R|>| +0#0000000&@17 +|i+0#af5f00255&|m|e|n|u| +0#0000000&|W+0#e000e06&|o|r|d|s|.|A|d@1|\| |V|a|r| +0#0000000&@8|<+0#e000e06&|E|s|c|>|w+0#0000000&|b|"|z|y|e|:|m|e|n|u|!| |W|o|r|d|s|.|<+0#e000e06&|C|-|R|>|z+0#0000000&| |<+0#e000e06&|C|-|R|>|z+0#0000000&|<+0#e000e06&|C|R|>|a+0#0000000&| @3 +|i+0#af5f00255&|m|e|n|u| +0#0000000&|W+0#e000e06&|o|r|d|s|.|R|e|m|o|v|e|\| |V|a|r| +0#0000000&@5|<+0#e000e06&|E|s|c|>|w+0#0000000&|b|"|z|y|e|:|u|n|m|e|n|u|!| |W|o|r|d|s|.|<+0#e000e06&|C|-|R|>|z+0#0000000&|<+0#e000e06&|C|R|>|a+0#0000000&| @8 +@75 +@75 +|"+0#0000e05&| |s|p|e|c|i|a|l| |k|e|y|s| +0#0000000&@60 +|m+0#af5f00255&|e|n|u| +0#0000000&|<+0#e000e06&|s|i|l|e|n|t|>| +0#0000000&|&+0#e000e06&|F|o@1|\| |b|a|r| +0#0000000&@1|:|e|c|h|o| |"|F|o@1|b|a|r|"|<+0#e000e06&|C|R|>| +0#0000000&@31 +@57|1|,|1| @10|T|o|p| diff --git a/runtime/syntax/testdir/dumps/vim_ex_menu_01.dump b/runtime/syntax/testdir/dumps/vim_ex_menu_01.dump new file mode 100644 index 0000000000..9b0d5cfc38 --- /dev/null +++ b/runtime/syntax/testdir/dumps/vim_ex_menu_01.dump @@ -0,0 +1,20 @@ +|i+0#af5f00255#ffffff0|m|e|n|u| +0#0000000&|W+0#e000e06&|o|r|d|s|.|A|d@1|\| |V|a|r| +0#0000000&@8|<+0#e000e06&|E|s|c|>|w+0#0000000&|b|"|z|y|e|:|m|e|n|u|!| |W|o|r|d|s|.|<+0#e000e06&|C|-|R|>|z+0#0000000&| |<+0#e000e06&|C|-|R|>|z+0#0000000&|<+0#e000e06&|C|R|>|a+0#0000000&| @3 +|i+0#af5f00255&|m|e|n|u| +0#0000000&|W+0#e000e06&|o|r|d|s|.|R|e|m|o|v|e|\| |V|a|r| +0#0000000&@5|<+0#e000e06&|E|s|c|>|w+0#0000000&|b|"|z|y|e|:|u|n|m|e|n|u|!| |W|o|r|d|s|.|<+0#e000e06&|C|-|R|>|z+0#0000000&|<+0#e000e06&|C|R|>|a+0#0000000&| @8 +@75 +@75 +|"+0#0000e05&| |s|p|e|c|i|a|l| |k|e|y|s| +0#0000000&@60 +>m+0#af5f00255&|e|n|u| +0#0000000&|<+0#e000e06&|s|i|l|e|n|t|>| +0#0000000&|&+0#e000e06&|F|o@1|\| |b|a|r| +0#0000000&@1|:|e|c|h|o| |"|F|o@1|b|a|r|"|<+0#e000e06&|C|R|>| +0#0000000&@31 +|m+0#af5f00255&|e|n|u| +0#0000000&|<+0#e000e06&|s|p|e|c|i|a|l|>| +0#0000000&|&+0#e000e06&|F|o@1|\| |b|a|r| +0#0000000&|:|e|c|h|o| |"|F|o@1|b|a|r|"|<+0#e000e06&|C|R|>| +0#0000000&@31 +|m+0#af5f00255&|e|n|u| +0#0000000&|<+0#e000e06&|s|c|r|i|p|t|>| +0#0000000&|&+0#e000e06&|F|o@1|\| |b|a|r| +0#0000000&@1|:|e|c|h|o| |"|F|o@1|b|a|r|"|<+0#e000e06&|C|R|>| +0#0000000&@31 +|m+0#af5f00255&|e|n|u| +0#0000000&|<+0#e000e06&|s|i|l|e|n|t|>| +0#0000000&|<+0#e000e06&|s|p|e|c|i|a|l|>| +0#0000000&|&+0#e000e06&|F|o@1|\| |b|a|r| +0#0000000&|:|e|c|h|o| |"|F|o@1|b|a|r|"|<+0#e000e06&|C|R|>| +0#0000000&@22 +|m+0#af5f00255&|e|n|u| +0#0000000&|<+0#e000e06&|s|i|l|e|n|t|>| +0#0000000&|<+0#e000e06&|s|p|e|c|i|a|l|>| +0#0000000&|<+0#e000e06&|s|c|r|i|p|t|>| +0#0000000&|&+0#e000e06&|F|o@1|\| |b|a|r| +0#0000000&|:|e|c|h|o| |"|F|o@1|b|a|r|"|<+0#e000e06&|C|R|>| +0#0000000&@13 +@75 +@75 +|f+0#af5f00255&|u|n|c|t|i|o|n| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@60 +@2|m+0#af5f00255&|e|n|u| +0#0000000&|<+0#e000e06&|s|i|l|e|n|t|>| +0#0000000&|&+0#e000e06&|F|o@1|\| |b|a|r| +0#0000000&|:|e|c|h|o| |"|F|o@1|b|a|r|"|<+0#e000e06&|C|R|>| +0#0000000&@30 +|e+0#af5f00255&|n|d|f|u|n|c|t|i|o|n| +0#0000000&@63 +@75 +@75 +|"+0#0000e05&| +0#0000000&|E+0#e000e06&|x|a|m|p|l|e|:| +0#0000e05&|r|u|n|t|i|m|e|/|m|e|n|u|.|v|i|m| |(|m|o|d|i|f|i|e|d|)| +0#0000000&@36 +|a+0#af5f00255&|n| +0#0000000&|<+0#e000e06&|s|i|l|e|n|t|>| +0#0000000&|1+0#e000002&|0|.|3@1|0| +0#0000000&|&+0#e000e06&|F|i|l|e|.|&|C|l|o|s|e|<|T|a|b|>|:|c|l|o|s|e| +0#0000000&|:|c|o|n|f|i|r|m| |c|l|o|s|e|<+0#e000e06&|C|R|>| +0#0000000&@13 +@57|1|9|,|1| @9|2|4|%| diff --git a/runtime/syntax/testdir/dumps/vim_ex_menu_02.dump b/runtime/syntax/testdir/dumps/vim_ex_menu_02.dump new file mode 100644 index 0000000000..8e5f1b886f --- /dev/null +++ b/runtime/syntax/testdir/dumps/vim_ex_menu_02.dump @@ -0,0 +1,20 @@ +|a+0#af5f00255#ffffff0|n| +0#0000000&|<+0#e000e06&|s|i|l|e|n|t|>| +0#0000000&|1+0#e000002&|0|.|3@1|0| +0#0000000&|&+0#e000e06&|F|i|l|e|.|&|C|l|o|s|e|<|T|a|b|>|:|c|l|o|s|e| +0#0000000&|:|c|o|n|f|i|r|m| |c|l|o|s|e|<+0#e000e06&|C|R|>| +0#0000000&@13 +@75 +|a+0#af5f00255&|n| +0#0000000&|<+0#e000e06&|s|i|l|e|n|t|>| +0#0000000&|1+0#e000002&|0|.|3@1|0| +0#0000000&|&+0#e000e06&|F|i|l|e|.|&|C|l|o|s|e|<|T|a|b|>|:|c|l|o|s|e| +0#0000000&@32 +@8|\+0#e000e06&| +0#0000000&|:|i|f| |w|i|n|h|e|i|g|h|t|(|2|)| |<| |0| |&@1| |t|a|b|p|a|g|e|w|i|n@1|r|(|2|)| |=@1| |0| |<+0#e000e06&|B|a|r|>| +0#0000000&@14 +@8|\+0#e000e06&| +0#0000000&@2|c|o|n|f|i|r|m| |e|n|e|w| |<+0#e000e06&|B|a|r|>| +0#0000000&@44 +@8>\+0#e000e06&| +0#0000000&|e|l|s|e| |<+0#e000e06&|B|a|r|>| +0#0000000&@54 +@8|\+0#e000e06&| +0#0000000&@2|c|o|n|f|i|r|m| |c|l|o|s|e| |<+0#e000e06&|B|a|r|>| +0#0000000&@43 +@8|\+0#e000e06&| +0#0000000&|e|n|d|i|f|<+0#e000e06&|C|R|>| +0#0000000&@55 +@75 +|a+0#af5f00255&|n| +0#0000000&|<+0#e000e06&|s|i|l|e|n|t|>| +0#0000000&|1+0#e000002&|0|.|3@1|0| +0#0000000&|&+0#e000e06&|F|i|l|e|.|&|C|l|o|s|e|<|T|a|b|>|:|c|l|o|s|e| +0#0000000&@32 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&|:|i|f| |w|i|n|h|e|i|g|h|t|(|2|)| |<| |0| |&@1| |t|a|b|p|a|g|e|w|i|n@1|r|(|2|)| |=@1| |0| |<+0#e000e06&|B|a|r|>| +0#0000000&@14 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&@2|c|o|n|f|i|r|m| |e|n|e|w| |<+0#e000e06&|B|a|r|>| +0#0000000&@44 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&|e|l|s|e| |<+0#e000e06&|B|a|r|>| +0#0000000&@54 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&@2|c|o|n|f|i|r|m| |c|l|o|s|e| |<+0#e000e06&|B|a|r|>| +0#0000000&@43 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@57|3|7|,|2|-|9| @7|5|7|%| diff --git a/runtime/syntax/testdir/dumps/vim_ex_menu_03.dump b/runtime/syntax/testdir/dumps/vim_ex_menu_03.dump new file mode 100644 index 0000000000..671e6c7c36 --- /dev/null +++ b/runtime/syntax/testdir/dumps/vim_ex_menu_03.dump @@ -0,0 +1,20 @@ +| +0&#ffffff0@7|\+0#e000e06&| +0#0000000&|e|n|d|i|f|<+0#e000e06&|C|R|>| +0#0000000&@55 +@75 +|a+0#af5f00255&|n| +0#0000000&|<+0#e000e06&|s|i|l|e|n|t|>| +0#0000000&|1+0#e000002&|0|.|3@1|0| +0#0000000&|&+0#e000e06&|F|i|l|e|.|&|C|l|o|s|e|<|T|a|b|>|:|c|l|o|s|e| +0#0000000&|:|i|f| |w|i|n|h|e|i|g|h|t|(|2|)| |<| |0| |&@1| |t|a|b|p|a|g|e|w +|i|n@1|r|(|2|)| |=@1| |0| |<+0#e000e06&|B|a|r|>| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&@2|c|o|n|f|i|r|m| |e|n|e|w| |<+0#e000e06&|B|a|r|>| +0#0000000&@44 +@8>\+0#e000e06&| +0#0000000&|e|l|s|e| |<+0#e000e06&|B|a|r|>| +0#0000000&@54 +@8|\+0#e000e06&| +0#0000000&@2|c|o|n|f|i|r|m| |c|l|o|s|e| |<+0#e000e06&|B|a|r|>| +0#0000000&@43 +@8|\+0#e000e06&| +0#0000000&|e|n|d|i|f|<+0#e000e06&|C|R|>| +0#0000000&@55 +@75 +|a+0#af5f00255&|n| +0#0000000&|<+0#e000e06&|s|i|l|e|n|t|>| +0#0000000&|1+0#e000002&|0|.|3@1|0| +0#0000000&|&+0#e000e06&|F|i|l|e|.|&|C|l|o|s|e|<|T|a|b|>|:|c|l|o|s|e| +0#0000000&|:|i|f| |w|i|n|h|e|i|g|h|t|(|2|)| |<| |0| |&@1| |t|a|b|p|a|g|e|w +|i|n@1|r|(|2|)| |=@1| |0| |<+0#e000e06&|B|a|r|>| +0#0000000&@56 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&@2|c|o|n|f|i|r|m| |e|n|e|w| |<+0#e000e06&|B|a|r|>| +0#0000000&@44 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&|e|l|s|e| |<+0#e000e06&|B|a|r|>| +0#0000000&@54 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&@2|c|o|n|f|i|r|m| |c|l|o|s|e| |<+0#e000e06&|B|a|r|>| +0#0000000&@43 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&|e|n|d|i|f|<+0#e000e06&|C|R|>| +0#0000000&@55 +@57|5@1|,|2|-|9| @7|8|9|%| diff --git a/runtime/syntax/testdir/dumps/vim_ex_menu_99.dump b/runtime/syntax/testdir/dumps/vim_ex_menu_99.dump new file mode 100644 index 0000000000..7721e4a98e --- /dev/null +++ b/runtime/syntax/testdir/dumps/vim_ex_menu_99.dump @@ -0,0 +1,20 @@ +| +0&#ffffff0@7|\+0#e000e06&| +0#0000000&@2|c|o|n|f|i|r|m| |c|l|o|s|e| |<+0#e000e06&|B|a|r|>| +0#0000000&@43 +@8|\+0#e000e06&| +0#0000000&|e|n|d|i|f|<+0#e000e06&|C|R|>| +0#0000000&@55 +@75 +|a+0#af5f00255&|n| +0#0000000&|<+0#e000e06&|s|i|l|e|n|t|>| +0#0000000&|1+0#e000002&|0|.|3@1|0| +0#0000000&|&+0#e000e06&|F|i|l|e|.|&|C|l|o|s|e|<|T|a|b|>|:|c|l|o|s|e| +0#0000000&|:|i|f| |w|i|n|h|e|i|g|h|t|(|2|)| |<| |0| |&@1| |t|a|b|p|a|g|e|w +|i|n@1|r|(|2|)| |=@1| |0| |<+0#e000e06&|B|a|r|>| +0#0000000&@56 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&@2|c|o|n|f|i|r|m| |e|n|e|w| |<+0#e000e06&|B|a|r|>| +0#0000000&@44 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&|e|l|s|e| |<+0#e000e06&|B|a|r|>| +0#0000000&@54 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&@2|c|o|n|f|i|r|m| |c|l|o|s|e| |<+0#e000e06&|B|a|r|>| +0#0000000&@43 +@8|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@56 +@8|\+0#e000e06&| +0#0000000&|e|n|d|i|f|<+0#e000e06&|C|R|>| +0#0000000&@55 +@75 +@75 +|"+0#0000e05&| |p|o|p|u|p| |m|e|n|u|s| +0#0000000&@61 +|p+0#af5f00255&|o|p|u|p| +0#0000000&|&+0#e000e06&|F|o@1| +0#0000000&@1||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@50 +|p+0#af5f00255&|o|p|u|p|!| +0#0000000&|&+0#e000e06&|F|o@1| +0#0000000&||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@50 +> @74 +@57|7|3|,|0|-|1| @7|B|o|t| diff --git a/runtime/syntax/testdir/dumps/vim_ex_menutranslate_00.dump b/runtime/syntax/testdir/dumps/vim_ex_menutranslate_00.dump new file mode 100644 index 0000000000..82bcce485b --- /dev/null +++ b/runtime/syntax/testdir/dumps/vim_ex_menutranslate_00.dump @@ -0,0 +1,20 @@ +>"+0#0000e05#ffffff0| |V|i|m| |:|m|e|n|u|t|r|a|n|s|l|a|t|e| |c|o|m@1|a|n|d| +0#0000000&@46 +@75 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&|c+0#e000e06&|l|e|a|r| +0#0000000&@55 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&|c+0#e000e06&|l|e|a|r| +0#0000000&||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@42 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&|c+0#e000e06&|l|e|a|r| +0#0000000&|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@45 +@75 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| |&+0#e000e06&|F|u+0#0000000&|B|a|r| ||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@31 +@75 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| |&+0#e000e06&|F|u+0#0000000&|B|a|r| |"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@34 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&|\|"|&+0#e000e06&|F|o+0#0000000&@1|"|\+0#e000e06&| |b+0#0000000&|a|r| |\|"|&+0#e000e06&|F|u+0#0000000&|B|a|r| @39 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |"+0#0000000&|b|a|r|"| |&+0#e000e06&|F|u+0#0000000&|B|a|r| @42 +@75 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| @51 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r| ||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@47 +@75 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&@61 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| @57 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r| ||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@47 +@75 +@57|1|,|1| @10|T|o|p| diff --git a/runtime/syntax/testdir/dumps/vim_ex_menutranslate_01.dump b/runtime/syntax/testdir/dumps/vim_ex_menutranslate_01.dump new file mode 100644 index 0000000000..f479aeb46a --- /dev/null +++ b/runtime/syntax/testdir/dumps/vim_ex_menutranslate_01.dump @@ -0,0 +1,20 @@ +| +0&#ffffff0@5|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r| ||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@47 +@75 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&@61 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| @57 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r| ||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@47 +> @74 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&@61 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| @57 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@48 +@75 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&@61 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| @57 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r| @60 +@6|\+0#e000e06&| +0#0000000&||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@54 +@75 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| @51 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r| ||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@47 +@75 +@57|1|9|,|0|-|1| @7|4|0|%| diff --git a/runtime/syntax/testdir/dumps/vim_ex_menutranslate_02.dump b/runtime/syntax/testdir/dumps/vim_ex_menutranslate_02.dump new file mode 100644 index 0000000000..7623f7079e --- /dev/null +++ b/runtime/syntax/testdir/dumps/vim_ex_menutranslate_02.dump @@ -0,0 +1,20 @@ +| +0&#ffffff0@74 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&@61 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| @57 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@6>\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r| ||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@47 +@75 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&@61 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| @57 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@48 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@75 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&@61 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| @57 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r| @60 +@6|\+0#e000e06&| +0#0000000&||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@54 +@57|3|7|,|7| @9|9|6|%| diff --git a/runtime/syntax/testdir/dumps/vim_ex_menutranslate_99.dump b/runtime/syntax/testdir/dumps/vim_ex_menutranslate_99.dump new file mode 100644 index 0000000000..7f6ccfc679 --- /dev/null +++ b/runtime/syntax/testdir/dumps/vim_ex_menutranslate_99.dump @@ -0,0 +1,20 @@ +|m+0#af5f00255#ffffff0|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&@61 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| @57 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r| ||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@47 +@75 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&@61 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| @57 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@48 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@75 +|m+0#af5f00255&|e|n|u|t|r|a|n|s|l|a|t|e| +0#0000000&@61 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|o+0#0000000&@1|\+0#e000e06&| |b+0#0000000&|a|r| @57 +@6|"+0#0000e05&|\| |c|o|m@1|e|n|t| +0#0000000&@58 +@6|\+0#e000e06&| +0#0000000&|&+0#e000e06&|F|u+0#0000000&|b|a|r| @60 +@6|\+0#e000e06&| +0#0000000&||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@54 +> @74 +@57|5|1|,|0|-|1| @7|B|o|t| diff --git a/runtime/syntax/testdir/input/vim_ex_menu.vim b/runtime/syntax/testdir/input/vim_ex_menu.vim new file mode 100644 index 0000000000..da10a110e4 --- /dev/null +++ b/runtime/syntax/testdir/input/vim_ex_menu.vim @@ -0,0 +1,73 @@ +" Vim :menu commands + +" :help disable menus +menu disable &File.&Open\.\.\. +amenu enable * +amenu disable &Tools.* + + +" :help menu-examples +nmenu Words.Add\ Var wb"zye:menu! Words.z z +nmenu Words.Remove\ Var wb"zye:unmenu! Words.z +vmenu Words.Add\ Var "zy:menu! Words.z z +vmenu Words.Remove\ Var "zy:unmenu! Words.z +imenu Words.Add\ Var wb"zye:menu! Words.z za +imenu Words.Remove\ Var wb"zye:unmenu! Words.za + + +" special keys +menu &Foo\ bar :echo "Foobar" +menu &Foo\ bar :echo "Foobar" +menu