Mercurial > vim
view runtime/syntax/aap.vim @ 12068:e1b34958f118 v8.0.0914
patch 8.0.0914: highlight attributes are always combined
commit https://github.com/vim/vim/commit/0cd2a94a4030f6bd12eaec44db92db108e33c913
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Aug 12 15:12:30 2017 +0200
patch 8.0.0914: highlight attributes are always combined
Problem: Highlight attributes are always combined.
Solution: Add the 'nocombine' value to replace attributes instead of
combining them. (scauligi, closes #1963)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 12 Aug 2017 15:15:04 +0200 |
parents | 3fc0f57ecb91 |
children | 4027cefc2aab |
line wrap: on
line source
" Vim syntax file " Language: A-A-P recipe " Maintainer: Bram Moolenaar <Bram@vim.org> " Last Change: 2004 Jun 13 " Quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn include @aapPythonScript syntax/python.vim syn match aapVariable /$[-+?*="'\\!]*[a-zA-Z0-9_.]*/ syn match aapVariable /$[-+?*="'\\!]*([a-zA-Z0-9_.]*)/ syn keyword aapTodo contained TODO Todo syn match aapString +'[^']\{-}'+ syn match aapString +"[^"]\{-}"+ syn match aapCommand '^\s*:action\>' syn match aapCommand '^\s*:add\>' syn match aapCommand '^\s*:addall\>' syn match aapCommand '^\s*:asroot\>' syn match aapCommand '^\s*:assertpkg\>' syn match aapCommand '^\s*:attr\>' syn match aapCommand '^\s*:attribute\>' syn match aapCommand '^\s*:autodepend\>' syn match aapCommand '^\s*:buildcheck\>' syn match aapCommand '^\s*:cd\>' syn match aapCommand '^\s*:chdir\>' syn match aapCommand '^\s*:checkin\>' syn match aapCommand '^\s*:checkout\>' syn match aapCommand '^\s*:child\>' syn match aapCommand '^\s*:chmod\>' syn match aapCommand '^\s*:commit\>' syn match aapCommand '^\s*:commitall\>' syn match aapCommand '^\s*:conf\>' syn match aapCommand '^\s*:copy\>' syn match aapCommand '^\s*:del\>' syn match aapCommand '^\s*:deldir\>' syn match aapCommand '^\s*:delete\>' syn match aapCommand '^\s*:delrule\>' syn match aapCommand '^\s*:dll\>' syn match aapCommand '^\s*:do\>' syn match aapCommand '^\s*:error\>' syn match aapCommand '^\s*:execute\>' syn match aapCommand '^\s*:exit\>' syn match aapCommand '^\s*:export\>' syn match aapCommand '^\s*:fetch\>' syn match aapCommand '^\s*:fetchall\>' syn match aapCommand '^\s*:filetype\>' syn match aapCommand '^\s*:finish\>' syn match aapCommand '^\s*:global\>' syn match aapCommand '^\s*:import\>' syn match aapCommand '^\s*:include\>' syn match aapCommand '^\s*:installpkg\>' syn match aapCommand '^\s*:lib\>' syn match aapCommand '^\s*:local\>' syn match aapCommand '^\s*:log\>' syn match aapCommand '^\s*:ltlib\>' syn match aapCommand '^\s*:mkdir\>' syn match aapCommand '^\s*:mkdownload\>' syn match aapCommand '^\s*:move\>' syn match aapCommand '^\s*:pass\>' syn match aapCommand '^\s*:popdir\>' syn match aapCommand '^\s*:produce\>' syn match aapCommand '^\s*:program\>' syn match aapCommand '^\s*:progsearch\>' syn match aapCommand '^\s*:publish\>' syn match aapCommand '^\s*:publishall\>' syn match aapCommand '^\s*:pushdir\>' syn match aapCommand '^\s*:quit\>' syn match aapCommand '^\s*:recipe\>' syn match aapCommand '^\s*:refresh\>' syn match aapCommand '^\s*:remove\>' syn match aapCommand '^\s*:removeall\>' syn match aapCommand '^\s*:require\>' syn match aapCommand '^\s*:revise\>' syn match aapCommand '^\s*:reviseall\>' syn match aapCommand '^\s*:route\>' syn match aapCommand '^\s*:rule\>' syn match aapCommand '^\s*:start\>' syn match aapCommand '^\s*:symlink\>' syn match aapCommand '^\s*:sys\>' syn match aapCommand '^\s*:sysdepend\>' syn match aapCommand '^\s*:syspath\>' syn match aapCommand '^\s*:system\>' syn match aapCommand '^\s*:tag\>' syn match aapCommand '^\s*:tagall\>' syn match aapCommand '^\s*:toolsearch\>' syn match aapCommand '^\s*:totype\>' syn match aapCommand '^\s*:touch\>' syn match aapCommand '^\s*:tree\>' syn match aapCommand '^\s*:unlock\>' syn match aapCommand '^\s*:update\>' syn match aapCommand '^\s*:usetool\>' syn match aapCommand '^\s*:variant\>' syn match aapCommand '^\s*:verscont\>' syn match aapCommand '^\s*:print\>' nextgroup=aapPipeEnd syn match aapPipeCmd '\s*:print\>' nextgroup=aapPipeEnd contained syn match aapCommand '^\s*:cat\>' nextgroup=aapPipeEnd syn match aapPipeCmd '\s*:cat\>' nextgroup=aapPipeEnd contained syn match aapCommand '^\s*:syseval\>' nextgroup=aapPipeEnd syn match aapPipeCmd '\s*:syseval\>' nextgroup=aapPipeEnd contained syn match aapPipeCmd '\s*:assign\>' contained syn match aapCommand '^\s*:eval\>' nextgroup=aapPipeEnd syn match aapPipeCmd '\s*:eval\>' nextgroup=aapPipeEndPy contained syn match aapPipeCmd '\s*:tee\>' nextgroup=aapPipeEnd contained syn match aapPipeCmd '\s*:log\>' nextgroup=aapPipeEnd contained syn match aapPipeEnd '[^|]*|' nextgroup=aapPipeCmd contained skipnl syn match aapPipeEndPy '[^|]*|' nextgroup=aapPipeCmd contained skipnl contains=@aapPythonScript syn match aapPipeStart '^\s*|' nextgroup=aapPipeCmd " " A Python line starts with @. Can be continued with a trailing backslash. syn region aapPythonRegion start="\s*@" skip='\\$' end=+$+ contains=@aapPythonScript keepend " " A Python block starts with ":python" and continues so long as the indent is " bigger. syn region aapPythonRegion matchgroup=aapCommand start="\z(\s*\):python" skip='\n\z1\s\|\n\s*\n' end=+$+ contains=@aapPythonScript " A Python expression is enclosed in backticks. syn region aapPythonRegion start="`" skip="``" end="`" contains=@aapPythonScript " TODO: There is something wrong with line continuation. syn match aapComment '#.*' contains=aapTodo syn match aapComment '#.*\(\\\n.*\)' contains=aapTodo syn match aapSpecial '$#' syn match aapSpecial '$\$' syn match aapSpecial '$(.)' " A heredoc assignment. syn region aapHeredoc start="^\s*\k\+\s*$\=+\=?\=<<\s*\z(\S*\)"hs=e+1 end="^\s*\z1\s*$"he=s-1 " Syncing is needed for ":python" and "VAR << EOF". Don't use Python syncing syn sync clear syn sync fromstart " The default highlighting. hi def link aapTodo Todo hi def link aapString String hi def link aapComment Comment hi def link aapSpecial Special hi def link aapVariable Identifier hi def link aapPipeCmd aapCommand hi def link aapCommand Statement hi def link aapHeredoc Constant let b:current_syntax = "aap" let &cpo = s:cpo_save unlet s:cpo_save " vim: ts=8