Mercurial > vim
view runtime/syntax/mix.vim @ 21528:e0aa9b81f6a9 v8.2.1314
patch 8.2.1314: Vim9: rule for comment after :function is confusing
Commit: https://github.com/vim/vim/commit/9898107f54a330c6d9629976250a393169c698ca
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Jul 29 14:40:25 2020 +0200
patch 8.2.1314: Vim9: rule for comment after :function is confusing
Problem: Vim9: rule for comment after :function is confusing.
Solution: Allow double quoted comment after :function in vim9script.
(closes #6556)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 29 Jul 2020 14:45:05 +0200 |
parents | 656ab57d1ddc |
children |
line wrap: on
line source
" Vim syntax file " Language: MIX (Donald Knuth's assembly language used in TAOCP) " Maintainer: Wu Yongwei <wuyongwei@gmail.com> " Filenames: *.mixal *.mix " Last Change: 2017-11-26 15:21:36 +0800 " Quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn case ignore " Special processing of ALF directive: implementations vary whether quotation " marks are needed syn match mixAlfParam #\s\{1,2\}"\?[^"]\{,5\}"\?# contains=mixString nextgroup=mixEndComment contained " Region for parameters syn match mixParam #[-+*/:=0-9a-z,()"]\+# contains=mixIdentifier,mixSpecial,mixNumber,mixString,mixLabel nextgroup=mixEndComment contained " Comment at the line end syn match mixEndComment ".*" contains=mixRegister contained " Identifier; must go before literals syn match mixIdentifier "[a-z0-9_]\+" contained " Literals syn match mixSpecial "[-+*/:=]" contained syn match mixNumber "[0-9]\+\>" contained syn region mixString start=+"+ skip=+\\"+ end=+"+ contained " Labels syn match mixLabel "^[a-z0-9_]\{,10\}\s\+" nextgroup=mixAlfSpecial,mixOpcode,mixDirective syn match mixLabel "[0-9][BF]" contained " Comments syn match mixComment "^\*.*" contains=mixRegister " Directives syn keyword mixDirective ORIG EQU CON END nextgroup=mixParam contained skipwhite syn keyword mixDirective ALF nextgroup=mixAlfParam contained " Opcodes syn keyword mixOpcode NOP HLT NUM CHAR FLOT FIX nextgroup=mixEndComment contained syn keyword mixOpcode FADD FSUB FMUL FDIV FCMP MOVE ADD SUB MUL DIV IOC IN OUT JRED JBUS JMP JSJ JOV JNOV JL JE JG JLE JNE JGE SLA SRA SLAX SRAX SLC SRC nextgroup=mixParam contained skipwhite syn keyword mixOpcode SLB SRB JAE JAO JXE JXO nextgroup=mixParam contained skipwhite syn match mixOpcode "LD[AX1-6]N\?\>" nextgroup=mixParam contained skipwhite syn match mixOpcode "ST[AX1-6JZ]\>" nextgroup=mixParam contained skipwhite syn match mixOpcode "EN[TN][AX1-6]\>" nextgroup=mixParam contained skipwhite syn match mixOpcode "INC[AX1-6]\>" nextgroup=mixParam contained skipwhite syn match mixOpcode "DEC[AX1-6]\>" nextgroup=mixParam contained skipwhite syn match mixOpcode "CMP[AX1-6]\>" nextgroup=mixParam contained skipwhite syn match mixOpcode "J[AX1-6]N\?[NZP]\>" nextgroup=mixParam contained skipwhite " Switch back to being case sensitive syn case match " Registers (only to be used in comments now) syn keyword mixRegister rA rX rI1 rI2 rI3 rI4 rI5 rI6 rJ contained " The default highlighting hi def link mixRegister Special hi def link mixLabel Define hi def link mixComment Comment hi def link mixEndComment Comment hi def link mixDirective Keyword hi def link mixOpcode Keyword hi def link mixSpecial Special hi def link mixNumber Number hi def link mixString String hi def link mixAlfParam String hi def link mixIdentifier Identifier let b:current_syntax = "mix" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8