comparison runtime/makemenu.vim @ 27538:f37561549ec2

Update runtime files; use compiled functions Commit: https://github.com/vim/vim/commit/3e79c97c18c50f97797ab13ed81c4011eba9aba0 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Feb 4 19:48:06 2022 +0000 Update runtime files; use compiled functions
author Bram Moolenaar <Bram@vim.org>
date Fri, 04 Feb 2022 21:00:05 +0100
parents 180a1c5175f6
children 2715448db31c
comparison
equal deleted inserted replaced
27537:063952f68595 27538:f37561549ec2
1 " Script to define the syntax menu in synmenu.vim 1 vim9script
2 " Maintainer: Bram Moolenaar <Bram@vim.org> 2
3 " Last Change: 2019 Dec 07 3 # Script to define the syntax menu in synmenu.vim
4 4 # Maintainer: Bram Moolenaar <Bram@vim.org>
5 " This is used by "make menu" in the src directory. 5 # Last Change: 2022 Feb 04
6
7 # This is used by "make menu" in the src directory.
6 edit <sfile>:p:h/synmenu.vim 8 edit <sfile>:p:h/synmenu.vim
7 9
8 /The Start Of The Syntax Menu/+1,/The End Of The Syntax Menu/-1d 10 :/The Start Of The Syntax Menu/+1,/The End Of The Syntax Menu/-1d
9 let s:lnum = line(".") - 1 11 var lnum = line(".") - 1
10 call append(s:lnum, "") 12 call append(lnum, "")
11 let s:lnum = s:lnum + 1 13 lnum += 1
12 14
13 " Use the SynMenu command and function to define all menu entries 15 # Use the SynMenu command and function to define all menu entries
14 command! -nargs=* SynMenu call <SID>Syn(<q-args>) 16 command! -nargs=* SynMenu call Syn(<q-args>)
15 17
16 let s:cur_menu_name = "" 18 var cur_menu_name = ""
17 let s:cur_menu_nr = 0 19 var cur_menu_nr = 0
18 let s:cur_menu_item = 0 20 var cur_menu_item = 0
19 let s:cur_menu_char = "" 21 var cur_menu_char = ""
20 22
21 fun! <SID>Syn(arg) 23 def Syn(arg: string)
22 " isolate menu name: until the first dot 24 # isolate menu name: until the first dot
23 let i = match(a:arg, '\.') 25 var i = match(arg, '\.')
24 let menu_name = strpart(a:arg, 0, i) 26 var menu_name = strpart(arg, 0, i)
25 let r = strpart(a:arg, i + 1, 999) 27 var r = strpart(arg, i + 1, 999)
26 " isolate submenu name: until the colon 28 # isolate submenu name: until the colon
27 let i = match(r, ":") 29 i = match(r, ":")
28 let submenu_name = strpart(r, 0, i) 30 var submenu_name = strpart(r, 0, i)
29 " after the colon is the syntax name 31 # after the colon is the syntax name
30 let syntax_name = strpart(r, i + 1, 999) 32 var syntax_name = strpart(r, i + 1, 999)
31 33
32 if s:cur_menu_name != menu_name 34 if cur_menu_name != menu_name
33 let s:cur_menu_name = menu_name 35 cur_menu_name = menu_name
34 let s:cur_menu_nr = s:cur_menu_nr + 10 36 cur_menu_nr += 10
35 let s:cur_menu_item = 100 37 cur_menu_item = 100
36 let s:cur_menu_char = submenu_name[0] 38 cur_menu_char = submenu_name[0]
37 else 39 else
38 " When starting a new letter, insert a menu separator. 40 # When starting a new letter, insert a menu separator.
39 let c = submenu_name[0] 41 var c = submenu_name[0]
40 if c != s:cur_menu_char 42 if c != s:cur_menu_char
41 exe 'an 50.' . s:cur_menu_nr . '.' . s:cur_menu_item . ' &Syntax.' . menu_name . ".-" . c . '- <nul>' 43 exe 'an 50.' .. s:cur_menu_nr .. '.' .. s:cur_menu_item .. ' &Syntax.' .. menu_name .. ".-" .. c .. '- <nul>'
42 let s:cur_menu_item = s:cur_menu_item + 10 44 cur_menu_item += 10
43 let s:cur_menu_char = c 45 cur_menu_char = c
44 endif 46 endif
45 endif 47 endif
46 call append(s:lnum, 'an 50.' . s:cur_menu_nr . '.' . s:cur_menu_item . ' &Syntax.' . menu_name . "." . submenu_name . ' :cal SetSyn("' . syntax_name . '")<CR>') 48 append(lnum, 'an 50.' .. s:cur_menu_nr .. '.' .. s:cur_menu_item .. ' &Syntax.' .. menu_name .. "." .. submenu_name .. ' :cal SetSyn("' .. syntax_name .. '")<CR>')
47 let s:cur_menu_item = s:cur_menu_item + 10 49 cur_menu_item += 10
48 let s:lnum = s:lnum + 1 50 lnum += 1
49 endfun 51 enddef
50 52
51 SynMenu AB.A2ps\ config:a2ps 53 SynMenu AB.A2ps\ config:a2ps
52 SynMenu AB.Aap:aap 54 SynMenu AB.Aap:aap
53 SynMenu AB.ABAP/4:abap 55 SynMenu AB.ABAP/4:abap
54 SynMenu AB.Abaqus:abaqus 56 SynMenu AB.Abaqus:abaqus
674 SynMenu WXYZ.XFree86\ Config:xf86conf 676 SynMenu WXYZ.XFree86\ Config:xf86conf
675 SynMenu WXYZ.YAML:yaml 677 SynMenu WXYZ.YAML:yaml
676 SynMenu WXYZ.Yacc:yacc 678 SynMenu WXYZ.Yacc:yacc
677 SynMenu WXYZ.Zimbu:zimbu 679 SynMenu WXYZ.Zimbu:zimbu
678 680
679 call append(s:lnum, "") 681 append(lnum, "")
680 682
681 wq 683 wq