vim/runtime/syntax/testdir/input/vim_ex_commands.vim
Doug Kearns 1aa287e048
runtime(vim): Update base-syntax, improve variable matching
- Match variables after operators, including line continuations.
- Match option variables without leading whitespace.
- Explicitly match expression subscripts.
- Match Vim9 variables in LHS of assignments and method calls.
- Match option variables (&option) with a dedicated syntax group like
  environment variables.
- Match list literals, fixes: #5830
- Match :{un}lockvar arguments.
- Match registers and environment variables in :let unpack lists.
- Match lambda expressions
- Match Vim9 scope blocks
- Match variables in :for subject
- Highlight user variables with Normal
- Improve this/super keyword matching, fixes: #15970

closes: #16476

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-02-10 22:00:27 +01:00

1211 lines
17 KiB
VimL

" Ex commands
" START NOT MATCHED
:@
:@@
:Next
:Print
:X
" END NOT MATCHED
:help
:help
: help
: help # FIXME
:2match
:3match
:append
text
.
:abbreviate
:abclear
:aboveleft
:all
:amenu
:anoremenu
:args
:argadd
:argdedupe
:argdelete
:argedit
:argdo
:argglobal
:arglocal
:argument
:ascii
:autocmd
:augroup Foo
:augroup END
:aunmenu
:buffer
:bNext
:ball
:badd
:balt
:bdelete
:behave mswin
:behave xterm
:belowright
:bfirst
:blast
:bmodified
:bnext
:botright
:bprevious
:brewind
:break
:breakadd
:breakdel
:breaklist
:browse
:bufdo
:buffers
:bunload
:bwipeout
:change
text
.
:cNext
:cNfile
:cabbrev
:cabclear
:cabove
:caddbuffer
:caddexpr
:caddfile
:cafter
:call
:catch
:cbefore
:cbelow
:cbottom
:cbuffer
:cc
:cclose
:cd
:cdo
:cfdo
:center
:cexpr
:cfile
:cfirst
:cgetbuffer
:cgetexpr
:cgetfile
:changes
:chdir
:checkpath
:checktime
:chistory
:clast
:clearjumps
:clist
:close
:cmap
:cmapclear
:cmenu
:cnext
:cnewer
:cnfile
:cnoremap
:cnoreabbrev
:cnoremenu
:copy
:colder
:colorscheme
:command
:comclear
:compiler
:continue
:confirm
:const
:copen
:cprevious
:cpfile
:cquit
:crewind
:cscope
:cstag
:cunmap
:cunabbrev
:cunmenu
:cwindow
:delete
:debug
:debuggreedy
:def
:defcompile
:defer
:delcommand
:delfunction
:delmarks
:diffupdate
:diffget
:diffoff
:diffpatch
:diffput
:diffsplit
:diffthis
:digraphs
:display
:disassemble
:djump
:dl
:dlist
:doautocmd
:doautoall
:dp
:drop
:dsearch
:dsplit
:edit
:earlier
:echo
:echoconsole
:echoerr
:echohl
:echomsg
:echon
:echowindow
:else
:elseif
:emenu
:enddef
:endif
:endfor
:endfunction
:endtry
:endwhile
:enew
:eval
:ex
:execute
:exit
:exusage
:file
:files
:filetype
:filter
:find
:final
:finally
:finish
:first
:fixdel
:fold
:foldclose
:folddoopen
:folddoclosed
:foldopen
:for foo in bar | endfor
:function
:global/.../
:goto
:grep
:grepadd
:gui
:gvim
:hardcopy
:help
:helpclose
:helpfind
:helpgrep
:helptags
:highlight
:hide
:history
:horizontal
:insert
text
.
:iabbrev
:iabclear
:if
:ijump
:ilist
:imap
:imapclear
:imenu
:import
:inoremap
:inoreabbrev
:inoremenu
:intro
:isearch
:isplit
:iunmap
:iunabbrev
:iunmenu
:join
:jumps
:k
:keepalt
:keepmarks
:keepjumps
:keeppatterns
:lNext
:lNfile
:list
:labove
:laddexpr
:laddbuffer
:laddfile
:lafter
:last
:language
:later
:lbefore
:lbelow
:lbottom
:lbuffer
:lcd
:lchdir
:lclose
:lcscope
:ldo
:lfdo
:left
:leftabove
:legacy
:let
:lexpr
:lfile
:lfirst
:lgetbuffer
:lgetexpr
:lgetfile
:lgrep
:lgrepadd
:lhelpgrep
:lhistory
:ll
:llast
:llist
:lmake
:lmap
:lmapclear
:lnext
:lnewer
:lnfile
:lnoremap
" :loadkeymap " disabled - runs until EOF
:loadview
:lockmarks
:lockvar
:lolder
:lopen
:lprevious
:lpfile
:lrewind
:ls
:ltag
:lunmap
:lua
:luado
:luafile
:lvimgrep
:lvimgrepadd
:lwindow
:move
:mark
:make
:map
:mapclear
:marks
:match
:menu
:menutranslate
:messages
:mkexrc
:mksession
:mkspell
:mkvimrc
:mkview
:mode
:mzscheme
:mzfile
:nbclose
:nbkey
:nbstart
:next
:new
:nmap
:nmapclear
:nmenu
:nnoremap
:nnoremenu
:noautocmd
:noremap
:nohlsearch
:noreabbrev
:noremenu
:normal
:noswapfile
:number
:nunmap
:nunmenu
:oldfiles
:open
:omap
:omapclear
:omenu
:only
:onoremap
:onoremenu
:options
:ounmap
:ounmenu
:ownsyntax
:packadd
:packloadall
:pclose
:pedit
:perl
:print
:profdel
:profile
:promptfind
:promptrepl
:perldo
:pop
:popup
:ppop
:preserve
:previous
:psearch
:ptag
:ptNext
:ptfirst
:ptjump
:ptlast
:ptnext
:ptprevious
:ptrewind
:ptselect
:put
:pwd
:py3
:python3
:py3do
:py3file
:python
:pydo
:pyfile
:pyx
:pythonx
:pyxdo
:pyxfile
:quit
:quitall
:qall
:read
:recover
:redo
:redir
:redraw
:redrawstatus
:redrawtabline
:registers
:resize
:retab
:return
:rewind
:right
:rightbelow
:ruby
:rubydo
:rubyfile
:rundo
:runtime
:rviminfo
:substitute
:sNext
:sandbox
:sargument
:sall
:saveas
:sbuffer
:sbNext
:sball
:sbfirst
:sblast
:sbmodified
:sbnext
:sbprevious
:sbrewind
:scriptnames
:scriptencoding
:scriptversion
:scscope
:set
:setfiletype
:setglobal
:setlocal
:sfind
:sfirst
:shell
:simalt
:sign
:silent
:sleep
:sleep!
:slast
:smagic
:smap
:smapclear
:smenu
:smile
:snext
:snomagic
:snoremap
:snoremenu
:sort
:source
:spelldump
:spellgood
:spellinfo
:spellrare
:spellrepall
:spellundo
:spellwrong
:split
:sprevious
:srewind
:stop
:stag
:startinsert
:startgreplace
:startreplace
:stopinsert
:stjump
:stselect
:sunhide
:sunmap
:sunmenu
:suspend
:sview
:swapname
:syntax
:syntime
:syncbind
:t
:tNext
:tabNext
:tabclose
:tabdo
:tabedit
:tabfind
:tabfirst
:tablast
:tabmove
:tabnew
:tabnext
:tabonly
:tabprevious
:tabrewind
:tabs
:tab
:tag
:tags
:tcd
:tchdir
:tcl
:tcldo
:tclfile
:tearoff
:terminal
:tfirst
:throw
:tjump
:tlast
:tlmenu
:tlnoremenu
:tlunmenu
:tmapclear
:tmap
:tmenu
:tnext
:tnoremap
:topleft
:tprevious
:trewind
:try
:tselect
:tunmap
:tunmenu
:undo
:undojoin
:undolist
:unabbreviate
:unabbreviate
:unhide
:unlet
:unlockvar
:unmap
:unmenu
:unsilent
:update
:vglobal/.../
:version
:verbose
:vertical
:vim9cmd
:vimgrep
:vimgrepadd
:visual
:viusage
:view
:vmap
:vmapclear
:vmenu
:vnew
:vnoremap
:vnoremenu
:vsplit
:vunmap
:vunmenu
:windo
:write
:wNext
:wall
:while
:winsize
:wincmd
:winpos
:wnext
:wprevious
:wq
:wqall
:wundo
:wviminfo
:xit
:xall
:xmapclear
:xmap
:xmenu
:xrestore
:xnoremap
:xnoremenu
:xunmap
:xunmenu
:yank
:z
call Foo()|help
call Foo() | help
call Foo() |help
call Foo()| help
call Foo() | 2match
call Foo() | 3match
" FIXME
call Foo() | append
text
.
call Foo() | abbreviate
call Foo() | abclear
call Foo() | aboveleft
call Foo() | all
call Foo() | amenu
call Foo() | anoremenu
call Foo() | args
call Foo() | argadd
call Foo() | argdedupe
call Foo() | argdelete
call Foo() | argedit
call Foo() | argdo
call Foo() | argglobal
call Foo() | arglocal
call Foo() | argument
call Foo() | ascii
call Foo() | autocmd
call Foo() | augroup Foo | augroup END
call Foo() | aunmenu
call Foo() | buffer
call Foo() | bNext
call Foo() | ball
call Foo() | badd
call Foo() | balt
call Foo() | bdelete
call Foo() | behave mswin
call Foo() | behave xterm
call Foo() | belowright
call Foo() | bfirst
call Foo() | blast
call Foo() | bmodified
call Foo() | bnext
call Foo() | botright
call Foo() | bprevious
call Foo() | brewind
call Foo() | break
call Foo() | breakadd
call Foo() | breakdel
call Foo() | breaklist
call Foo() | browse
call Foo() | bufdo
call Foo() | buffers
call Foo() | bunload
call Foo() | bwipeout
" FIXME
call Foo() | change
text
.
call Foo() | cNext
call Foo() | cNfile
call Foo() | cabbrev
call Foo() | cabclear
call Foo() | cabove
call Foo() | caddbuffer
call Foo() | caddexpr
call Foo() | caddfile
call Foo() | cafter
call Foo() | call
call Foo() | catch
call Foo() | cbefore
call Foo() | cbelow
call Foo() | cbottom
call Foo() | cbuffer
call Foo() | cc
call Foo() | cclose
call Foo() | cd
call Foo() | cdo
call Foo() | cfdo
call Foo() | center
call Foo() | cexpr
call Foo() | cfile
call Foo() | cfirst
call Foo() | cgetbuffer
call Foo() | cgetexpr
call Foo() | cgetfile
call Foo() | changes
call Foo() | chdir
call Foo() | checkpath
call Foo() | checktime
call Foo() | chistory
call Foo() | clast
call Foo() | clearjumps
call Foo() | clist
call Foo() | close
call Foo() | cmap
call Foo() | cmapclear
call Foo() | cmenu
call Foo() | cnext
call Foo() | cnewer
call Foo() | cnfile
call Foo() | cnoremap
call Foo() | cnoreabbrev
call Foo() | cnoremenu
call Foo() | copy
call Foo() | colder
call Foo() | colorscheme
call Foo() | command
call Foo() | comclear
call Foo() | compiler
call Foo() | continue
call Foo() | confirm
call Foo() | const
call Foo() | copen
call Foo() | cprevious
call Foo() | cpfile
call Foo() | cquit
call Foo() | crewind
call Foo() | cscope
call Foo() | cstag
call Foo() | cunmap
call Foo() | cunabbrev
call Foo() | cunmenu
call Foo() | cwindow
call Foo() | delete
call Foo() | debug
call Foo() | debuggreedy
call Foo() | def
call Foo() | defcompile
call Foo() | defer
call Foo() | delcommand
call Foo() | delfunction
call Foo() | delmarks
call Foo() | diffupdate
call Foo() | diffget
call Foo() | diffoff
call Foo() | diffpatch
call Foo() | diffput
call Foo() | diffsplit
call Foo() | diffthis
call Foo() | digraphs
call Foo() | display
call Foo() | disassemble
call Foo() | djump
call Foo() | dl
call Foo() | dlist
call Foo() | doautocmd
call Foo() | doautoall
call Foo() | dp
call Foo() | drop
call Foo() | dsearch
call Foo() | dsplit
call Foo() | edit
call Foo() | earlier
call Foo() | echo
call Foo() | echoconsole
call Foo() | echoerr
call Foo() | echohl
call Foo() | echomsg
call Foo() | echon
call Foo() | echowindow
call Foo() | else
call Foo() | elseif
call Foo() | emenu
call Foo() | enddef
call Foo() | endif
call Foo() | endfor
call Foo() | endfunction
call Foo() | endtry
call Foo() | endwhile
call Foo() | enew
call Foo() | eval
call Foo() | ex
call Foo() | execute
call Foo() | exit
call Foo() | exusage
call Foo() | file
call Foo() | files
call Foo() | filetype
call Foo() | filter
call Foo() | find
call Foo() | final
call Foo() | finally
call Foo() | finish
call Foo() | first
call Foo() | fixdel
call Foo() | fold
call Foo() | foldclose
call Foo() | folddoopen
call Foo() | folddoclosed
call Foo() | foldopen
call Foo() | for foo in bar | endfor
call Foo() | function
call Foo() | global/.../
call Foo() | goto
call Foo() | grep
call Foo() | grepadd
call Foo() | gui
call Foo() | gvim
call Foo() | hardcopy
call Foo() | help
call Foo() | helpclose
call Foo() | helpfind
call Foo() | helpgrep
call Foo() | helptags
call Foo() | highlight
call Foo() | hide
call Foo() | history
call Foo() | horizontal
" FIXME
call Foo() | insert
text
.
call Foo() | iabbrev
call Foo() | iabclear
call Foo() | if
call Foo() | ijump
call Foo() | ilist
call Foo() | imap
call Foo() | imapclear
call Foo() | imenu
call Foo() | import
call Foo() | inoremap
call Foo() | inoreabbrev
call Foo() | inoremenu
call Foo() | intro
call Foo() | isearch
call Foo() | isplit
call Foo() | iunmap
call Foo() | iunabbrev
call Foo() | iunmenu
call Foo() | join
call Foo() | jumps
call Foo() | k
call Foo() | keepalt
call Foo() | keepmarks
call Foo() | keepjumps
call Foo() | keeppatterns
call Foo() | lNext
call Foo() | lNfile
call Foo() | list
call Foo() | labove
call Foo() | laddexpr
call Foo() | laddbuffer
call Foo() | laddfile
call Foo() | lafter
call Foo() | last
call Foo() | language
call Foo() | later
call Foo() | lbefore
call Foo() | lbelow
call Foo() | lbottom
call Foo() | lbuffer
call Foo() | lcd
call Foo() | lchdir
call Foo() | lclose
call Foo() | lcscope
call Foo() | ldo
call Foo() | lfdo
call Foo() | left
call Foo() | leftabove
call Foo() | legacy
call Foo() | let
call Foo() | lexpr
call Foo() | lfile
call Foo() | lfirst
call Foo() | lgetbuffer
call Foo() | lgetexpr
call Foo() | lgetfile
call Foo() | lgrep
call Foo() | lgrepadd
call Foo() | lhelpgrep
call Foo() | lhistory
call Foo() | ll
call Foo() | llast
call Foo() | llist
call Foo() | lmake
call Foo() | lmap
call Foo() | lmapclear
call Foo() | lnext
call Foo() | lnewer
call Foo() | lnfile
call Foo() | lnoremap
" call Foo() | loadkeymap " disabled - runs until EOF
call Foo() | loadview
call Foo() | lockmarks
call Foo() | lockvar
call Foo() | lolder
call Foo() | lopen
call Foo() | lprevious
call Foo() | lpfile
call Foo() | lrewind
call Foo() | ls
call Foo() | ltag
call Foo() | lunmap
call Foo() | lua
call Foo() | luado
call Foo() | luafile
call Foo() | lvimgrep
call Foo() | lvimgrepadd
call Foo() | lwindow
call Foo() | move
call Foo() | mark
call Foo() | make
call Foo() | map
call Foo() | mapclear
call Foo() | marks
call Foo() | match
call Foo() | menu
call Foo() | menutranslate
call Foo() | messages
call Foo() | mkexrc
call Foo() | mksession
call Foo() | mkspell
call Foo() | mkvimrc
call Foo() | mkview
call Foo() | mode
call Foo() | mzscheme
call Foo() | mzfile
call Foo() | nbclose
call Foo() | nbkey
call Foo() | nbstart
call Foo() | next
call Foo() | new
call Foo() | nmap
call Foo() | nmapclear
call Foo() | nmenu
call Foo() | nnoremap
call Foo() | nnoremenu
call Foo() | noautocmd
call Foo() | noremap
call Foo() | nohlsearch
call Foo() | noreabbrev
call Foo() | noremenu
call Foo() | normal
call Foo() | noswapfile
call Foo() | number
call Foo() | nunmap
call Foo() | nunmenu
call Foo() | oldfiles
call Foo() | open
call Foo() | omap
call Foo() | omapclear
call Foo() | omenu
call Foo() | only
call Foo() | onoremap
call Foo() | onoremenu
call Foo() | options
call Foo() | ounmap
call Foo() | ounmenu
call Foo() | ownsyntax
call Foo() | packadd
call Foo() | packloadall
call Foo() | pclose
call Foo() | pedit
call Foo() | perl
call Foo() | print
call Foo() | profdel
call Foo() | profile
call Foo() | promptfind
call Foo() | promptrepl
call Foo() | perldo
call Foo() | pop
call Foo() | popup
call Foo() | ppop
call Foo() | preserve
call Foo() | previous
call Foo() | psearch
call Foo() | ptag
call Foo() | ptNext
call Foo() | ptfirst
call Foo() | ptjump
call Foo() | ptlast
call Foo() | ptnext
call Foo() | ptprevious
call Foo() | ptrewind
call Foo() | ptselect
call Foo() | put
call Foo() | pwd
call Foo() | py3
call Foo() | python3
call Foo() | py3do
call Foo() | py3file
call Foo() | python
call Foo() | pydo
call Foo() | pyfile
call Foo() | pyx
call Foo() | pythonx
call Foo() | pyxdo
call Foo() | pyxfile
call Foo() | quit
call Foo() | quitall
call Foo() | qall
call Foo() | read
call Foo() | recover
call Foo() | redo
call Foo() | redir
call Foo() | redraw
call Foo() | redrawstatus
call Foo() | redrawtabline
call Foo() | registers
call Foo() | resize
call Foo() | retab
call Foo() | return
call Foo() | rewind
call Foo() | right
call Foo() | rightbelow
call Foo() | ruby
call Foo() | rubydo
call Foo() | rubyfile
call Foo() | rundo
call Foo() | runtime
call Foo() | rviminfo
call Foo() | substitute
call Foo() | sNext
call Foo() | sandbox
call Foo() | sargument
call Foo() | sall
call Foo() | saveas
call Foo() | sbuffer
call Foo() | sbNext
call Foo() | sball
call Foo() | sbfirst
call Foo() | sblast
call Foo() | sbmodified
call Foo() | sbnext
call Foo() | sbprevious
call Foo() | sbrewind
call Foo() | scriptnames
call Foo() | scriptencoding
call Foo() | scriptversion
call Foo() | scscope
call Foo() | set
call Foo() | setfiletype
call Foo() | setglobal
call Foo() | setlocal
call Foo() | sfind
call Foo() | sfirst
call Foo() | shell
call Foo() | simalt
call Foo() | sign
call Foo() | silent
call Foo() | sleep
call Foo() | sleep!
call Foo() | slast
call Foo() | smagic
call Foo() | smap
call Foo() | smapclear
call Foo() | smenu
call Foo() | smile
call Foo() | snext
call Foo() | snomagic
call Foo() | snoremap
call Foo() | snoremenu
call Foo() | sort
call Foo() | source
call Foo() | spelldump
call Foo() | spellgood
call Foo() | spellinfo
call Foo() | spellrare
call Foo() | spellrepall
call Foo() | spellundo
call Foo() | spellwrong
call Foo() | split
call Foo() | sprevious
call Foo() | srewind
call Foo() | stop
call Foo() | stag
call Foo() | startinsert
call Foo() | startgreplace
call Foo() | startreplace
call Foo() | stopinsert
call Foo() | stjump
call Foo() | stselect
call Foo() | sunhide
call Foo() | sunmap
call Foo() | sunmenu
call Foo() | suspend
call Foo() | sview
call Foo() | swapname
call Foo() | syntax
call Foo() | syntime
call Foo() | syncbind
call Foo() | t
call Foo() | tNext
call Foo() | tabNext
call Foo() | tabclose
call Foo() | tabdo
call Foo() | tabedit
call Foo() | tabfind
call Foo() | tabfirst
call Foo() | tablast
call Foo() | tabmove
call Foo() | tabnew
call Foo() | tabnext
call Foo() | tabonly
call Foo() | tabprevious
call Foo() | tabrewind
call Foo() | tabs
call Foo() | tab
call Foo() | tag
call Foo() | tags
call Foo() | tcd
call Foo() | tchdir
call Foo() | tcl
call Foo() | tcldo
call Foo() | tclfile
call Foo() | tearoff
call Foo() | terminal
call Foo() | tfirst
call Foo() | throw
call Foo() | tjump
call Foo() | tlast
call Foo() | tlmenu
call Foo() | tlnoremenu
call Foo() | tlunmenu
call Foo() | tmapclear
call Foo() | tmap
call Foo() | tmenu
call Foo() | tnext
call Foo() | tnoremap
call Foo() | topleft
call Foo() | tprevious
call Foo() | trewind
call Foo() | try
call Foo() | tselect
call Foo() | tunmap
call Foo() | tunmenu
call Foo() | undo
call Foo() | undojoin
call Foo() | undolist
call Foo() | unabbreviate
call Foo() | unabbreviate
call Foo() | unhide
call Foo() | unlet
call Foo() | unlockvar
call Foo() | unmap
call Foo() | unmenu
call Foo() | unsilent
call Foo() | update
call Foo() | vglobal/.../
call Foo() | version
call Foo() | verbose
call Foo() | vertical
call Foo() | vim9cmd
call Foo() | vimgrep
call Foo() | vimgrepadd
call Foo() | visual
call Foo() | viusage
call Foo() | view
call Foo() | vmap
call Foo() | vmapclear
call Foo() | vmenu
call Foo() | vnew
call Foo() | vnoremap
call Foo() | vnoremenu
call Foo() | vsplit
call Foo() | vunmap
call Foo() | vunmenu
call Foo() | windo
call Foo() | write
call Foo() | wNext
call Foo() | wall
call Foo() | while
call Foo() | winsize
call Foo() | wincmd
call Foo() | winpos
call Foo() | wnext
call Foo() | wprevious
call Foo() | wq
call Foo() | wqall
call Foo() | wundo
call Foo() | wviminfo
call Foo() | xit
call Foo() | xall
call Foo() | xmapclear
call Foo() | xmap
call Foo() | xmenu
call Foo() | xrestore
call Foo() | xnoremap
call Foo() | xnoremenu
call Foo() | xunmap
call Foo() | xunmenu
call Foo() | yank
call Foo() | z
" Vim9-script only
:abstract
:class
:endclass
:endinterface
:endenum
:enum
:export
:final
:interface
:public
:static
:type
:var
Foo() | abstract
Foo() | class
Foo() | endclass
Foo() | endenum
Foo() | endinterface
Foo() | enum
Foo() | export
Foo() | final
Foo() | interface
Foo() | public
Foo() | static
Foo() | type
Foo() | var