Mercurial > vim
view runtime/syntax/amiga.vim @ 33532:f99f5a56ff27 v9.0.2015
patch 9.0.2015: Vim9: does not handle islocked() from a method correctly
Commit: https://github.com/vim/vim/commit/4c8da025ef8140168b7a09d9fe922ce4bb40f19d
Author: Ernie Rael <errael@raelity.com>
Date: Wed Oct 11 21:35:11 2023 +0200
patch 9.0.2015: Vim9: does not handle islocked() from a method correctly
Problem: Vim9: does not handle islocked() from a method correctly
Solution: Handle islocked() builtin from a method.
- Setup `lval_root` from `f_islocked()`.
- Add function `fill_exec_lval_root()` to get info about executing method.
- `sync_root` added in get_lval to handle method member access.
- Conservative approach to reference counting.
closes: #13309
Signed-off-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: Ernie Rael <errael@raelity.com>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Wed, 11 Oct 2023 21:45:04 +0200 |
parents | 8edf0aeb71b9 |
children | 02bd0fe77c68 |
line wrap: on
line source
" Vim syntax file " Language: AmigaDos " Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Aug 31, 2016 " Version: 10 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_AMIGA " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore " Amiga Devices syn match amiDev "\(par\|ser\|prt\|con\|nil\):" " Amiga aliases and paths syn match amiAlias "\<[a-zA-Z][a-zA-Z0-9]\+:" syn match amiAlias "\<[a-zA-Z][a-zA-Z0-9]\+:[a-zA-Z0-9/]*/" " strings syn region amiString start=+"+ end=+"+ oneline contains=@Spell " numbers syn match amiNumber "\<\d\+\>" " Logic flow syn region amiFlow matchgroup=Statement start="if" matchgroup=Statement end="endif" contains=ALL syn keyword amiFlow skip endskip syn match amiError "else\|endif" syn keyword amiElse contained else syn keyword amiTest contained not warn error fail eq gt ge val exists " echo exception syn region amiEcho matchgroup=Statement start="\<echo\>" end="$" oneline contains=amiComment syn region amiEcho matchgroup=Statement start="^\.[bB][rR][aA]" end="$" oneline syn region amiEcho matchgroup=Statement start="^\.[kK][eE][tT]" end="$" oneline " commands syn keyword amiKey addbuffers copy fault join pointer setdate syn keyword amiKey addmonitor cpu filenote keyshow printer setenv syn keyword amiKey alias date fixfonts lab printergfx setfont syn keyword amiKey ask delete fkey list printfiles setmap syn keyword amiKey assign dir font loadwb prompt setpatch syn keyword amiKey autopoint diskchange format lock protect sort syn keyword amiKey avail diskcopy get magtape quit stack syn keyword amiKey binddrivers diskdoctor getenv makedir relabel status syn keyword amiKey bindmonitor display graphicdump makelink remrad time syn keyword amiKey blanker iconedit more rename type syn keyword amiKey break ed icontrol mount resident unalias syn keyword amiKey calculator edit iconx newcli run unset syn keyword amiKey cd endcli ihelp newshell say unsetenv syn keyword amiKey changetaskpri endshell info nocapslock screenmode version syn keyword amiKey clock eval initprinter nofastmem search wait syn keyword amiKey cmd exchange input overscan serial wbpattern syn keyword amiKey colors execute install palette set which syn keyword amiKey conclip failat iprefs path setclock why " comments syn cluster amiCommentGroup contains=amiTodo,@Spell syn case ignore syn keyword amiTodo contained todo syn case match syn match amiComment ";.*$" contains=amiCommentGroup " sync syn sync lines=50 " Define the default highlighting. if !exists("skip_amiga_syntax_inits") hi def link amiAlias Type hi def link amiComment Comment hi def link amiDev Type hi def link amiEcho String hi def link amiElse Statement hi def link amiError Error hi def link amiKey Statement hi def link amiNumber Number hi def link amiString String hi def link amiTest Special endif let b:current_syntax = "amiga" " vim:ts=15