Mercurial > vim
view runtime/syntax/initng.vim @ 33297:6340c608ca54 v9.0.1914
patch 9.0.1914: Vim9: few issues when accessing object members
Commit: https://github.com/vim/vim/commit/1db151436541a3e64cdd5e3d9eb3ace1ce1e1ad0
Author: Yegappan Lakshmanan <yegappan@yahoo.com>
Date: Tue Sep 19 20:34:05 2023 +0200
patch 9.0.1914: Vim9: few issues when accessing object members
Problem: Vim9: few issues when accessing object members
Solution: When calling an object method, check for null object.
Accessing a Dict object member doesn't work.
closes: #13119
closes: #13123
closes: #13124
Signed-off-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 19 Sep 2023 20:45:06 +0200 |
parents | 1e9e9d89f0ee |
children |
line wrap: on
line source
" Vim syntax file " Language: initng .i files " Maintainer: Elan Ruusamäe <glen@pld-linux.org> " URL: http://glen.alkohol.ee/pld/initng/ " License: GPL v2 " Version: 0.13 " Last Change: $Date: 2007/05/05 17:17:40 $ " " Syntax highlighting for initng .i files. Inherits from sh.vim and adds " in the hiliting to start/stop {} blocks. Requires vim 6.3 or later. if &compatible || v:version < 603 finish endif if exists("b:current_syntax") finish endif syn case match let is_bash = 1 syn include @shTop syntax/sh.vim syn region initngService matchgroup=initngServiceHeader start="^\s*\(service\|virtual\|daemon\|class\|cron\)\s\+\(\(\w\|[-/*]\)\+\(\s\+:\s\+\(\w\|[-/*]\)\+\)\?\)\s\+{" end="}" contains=@initngServiceCluster syn cluster initngServiceCluster contains=initngComment,initngAction,initngServiceOption,initngServiceHeader,initngDelim,initngVariable syn region initngAction matchgroup=initngActionHeader start="^\s*\(script start\|script stop\|script run\)\s*=\s*{" end="}" contains=@initngActionCluster syn cluster initngActionCluster contains=@shTop syn match initngDelim /[{}]/ contained syn region initngString start=/"/ end=/"/ skip=/\\"/ " option = value syn match initngServiceOption /.\+\s*=.\+;/ contains=initngServiceKeywords,initngSubstMacro contained " option without value syn match initngServiceOption /\w\+;/ contains=initngServiceKeywords,initngSubstMacro contained " options with value syn keyword initngServiceKeywords also_stop need use nice setuid contained syn keyword initngServiceKeywords delay chdir suid sgid start_pause env_file env_parse pid_file pidfile contained syn keyword initngServiceKeywords pid_of up_when_pid_set stdout stderr syncron just_before contained syn keyword initngServiceKeywords provide lockfile daemon_stops_badly contained syn match initngServiceKeywords /\(script\|exec\(_args\)\?\) \(start\|stop\|daemon\)/ contained syn match initngServiceKeywords /env\s\+\w\+/ contained " rlimits syn keyword initngServiceKeywords rlimit_cpu_hard rlimit_core_soft contained " single options syn keyword initngServiceKeywords last respawn network_provider require_network require_file critical forks contained " cron options syn keyword initngServiceKeywords hourly contained syn match initngVariable /\${\?\w\+\}\?/ " Substituted @foo@ macros: " ========== syn match initngSubstMacro /@[^@]\+@/ contained syn cluster initngActionCluster add=initngSubstMacro syn cluster shCommandSubList add=initngSubstMacro " Comments: " ========== syn cluster initngCommentGroup contains=initngTodo,@Spell syn keyword initngTodo TODO FIXME XXX contained syn match initngComment /#.*$/ contains=@initngCommentGroup " install_service #macros " TODO: syntax check for ifd-endd pairs " ========== syn region initngDefine start="^#\(endd\|elsed\|exec\|ifd\|endexec\|endd\)\>" skip="\\$" end="$" end="#"me=s-1 syn cluster shCommentGroup add=initngDefine syn cluster initngCommentGroup add=initngDefine hi def link initngComment Comment hi def link initngTodo Todo hi def link initngString String hi def link initngServiceKeywords Define hi def link initngServiceHeader Keyword hi def link initngActionHeader Type hi def link initngDelim Delimiter hi def link initngVariable PreProc hi def link initngSubstMacro Comment hi def link initngDefine Macro let b:current_syntax = "initng"