Mercurial > vim
view runtime/syntax/ppwiz.vim @ 20972:d561e3c6cd65 v8.2.1037
patch 8.2.1037: Vim9: crash when using line continuation inside :def
Commit: https://github.com/vim/vim/commit/acd4c5e914f8a06745624ba585f3d06d5faf4ddd
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Jun 22 19:39:03 2020 +0200
patch 8.2.1037: Vim9: crash when using line continuation inside :def
Problem: Vim9: crash when using line continuation inside :def.
Solution: Check for no more lines available.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 22 Jun 2020 19:45:03 +0200 |
parents | 46763b01cd9a |
children |
line wrap: on
line source
" Vim syntax file " Language: PPWizard (preprocessor by Dennis Bareis) " Maintainer: Stefan Schwarzer <s.schwarzer@ndh.net> " URL: http://www.ndh.net/home/sschwarzer/download/ppwiz.vim " Last Change: 2003 May 11 " Filename: ppwiz.vim " Remove old syntax stuff " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore if !exists("ppwiz_highlight_defs") let ppwiz_highlight_defs = 1 endif if !exists("ppwiz_with_html") let ppwiz_with_html = 1 endif " comments syn match ppwizComment "^;.*$" syn match ppwizComment ";;.*$" " HTML if ppwiz_with_html > 0 syn region ppwizHTML start="<" end=">" contains=ppwizArg,ppwizMacro syn match ppwizHTML "\&\w\+;" endif " define, evaluate etc. if ppwiz_highlight_defs == 1 syn match ppwizDef "^\s*\#\S\+\s\+\S\+" contains=ALL syn match ppwizDef "^\s*\#\(if\|else\|endif\)" contains=ALL syn match ppwizDef "^\s*\#\({\|break\|continue\|}\)" contains=ALL " elseif ppwiz_highlight_defs == 2 " syn region ppwizDef start="^\s*\#" end="[^\\]$" end="^$" keepend contains=ALL else syn region ppwizDef start="^\s*\#" end="[^\\]$" end="^$" keepend contains=ppwizCont endif syn match ppwizError "\s.\\$" syn match ppwizCont "\s\([+\-%]\|\)\\$" " macros to execute syn region ppwizMacro start="<\$" end=">" contains=@ppwizArgVal,ppwizCont " macro arguments syn region ppwizArg start="{" end="}" contains=ppwizEqual,ppwizString syn match ppwizEqual "=" contained syn match ppwizOperator "<>\|=\|<\|>" contained " standard variables (builtin) syn region ppwizStdVar start="<?[^?]" end=">" contains=@ppwizArgVal " Rexx variables syn region ppwizRexxVar start="<??" end=">" contains=@ppwizArgVal " Constants syn region ppwizString start=+"+ end=+"+ contained contains=ppwizMacro,ppwizArg,ppwizHTML,ppwizCont,ppwizStdVar,ppwizRexxVar syn region ppwizString start=+'+ end=+'+ contained contains=ppwizMacro,ppwizArg,ppwizHTML,ppwizCont,ppwizStdVar,ppwizRexxVar syn match ppwizInteger "\d\+" contained " Clusters syn cluster ppwizArgVal add=ppwizString,ppwizInteger " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link ppwizSpecial Special hi def link ppwizEqual ppwizSpecial hi def link ppwizOperator ppwizSpecial hi def link ppwizComment Comment hi def link ppwizDef PreProc hi def link ppwizMacro Statement hi def link ppwizArg Identifier hi def link ppwizStdVar Identifier hi def link ppwizRexxVar Identifier hi def link ppwizString Constant hi def link ppwizInteger Constant hi def link ppwizCont ppwizSpecial hi def link ppwizError Error hi def link ppwizHTML Type let b:current_syntax = "ppwiz" " vim: ts=4