To: vim-dev@vim.org Subject: Patch 5.6.002 Fcc: outbox From: Bram Moolenaar ------------ Patch 5.6.002 Problem: When using the vim.vim syntax file, a comment with all uppercase characters causes a hang. Solution: Adjust pattern for vimCommentTitle (Charles Campbell) Files: runtime/syntax/vim.vim *** ../vim-5.6.1/runtime/syntax/vim.vim Sun Jan 16 16:08:52 2000 --- runtime/syntax/vim.vim Thu Jan 20 10:08:13 2000 *************** *** 1,8 **** " Vim syntax file ! " Language: Vim 5.6a script " Maintainer: Dr. Charles E. Campbell, Jr. ! " Last Change: January 05, 2000 ! " Version: 5.6a-02 " Remove old syntax syn clear --- 1,8 ---- " Vim syntax file ! " Language: Vim 5.6 script " Maintainer: Dr. Charles E. Campbell, Jr. ! " Last Change: January 19, 2000 ! " Version: 5.6-02 " Remove old syntax syn clear *************** *** 75,81 **** " All vimCommands are contained by vimIsCommands. syn match vimCmdSep "[:|]\+" skipwhite nextgroup=vimAddress,vimAutoCmd,vimMark,vimFilter,vimUserCmd,vimSet,vimLet,vimCommand ! syn match vimIsCommand "\<\a\+\>" transparent contains=vimCommand " vimOptions are caught only when contained in a vimSet syn keyword vimOption contained : ep keywordprg sc tagstack --- 75,81 ---- " All vimCommands are contained by vimIsCommands. syn match vimCmdSep "[:|]\+" skipwhite nextgroup=vimAddress,vimAutoCmd,vimMark,vimFilter,vimUserCmd,vimSet,vimLet,vimCommand ! syn match vimIsCommand "\<\a\+\>" contains=vimCommand " vimOptions are caught only when contained in a vimSet syn keyword vimOption contained : ep keywordprg sc tagstack *************** *** 289,295 **** " Functions " ========= syn cluster vimFuncList contains=vimCommand ! syn cluster vimFuncBodyList contains=vimIsCommand,vimFunction,vimFunctionError,vimFuncBody,vimSpecFile,vimOper,vimNumber,vimComment,vimString,vimSubst,vimMark,vimRegister,vimAddress,vimFilter,vimCmplxRepeat,vimComment,vimLet,vimSet,vimAutoCmd,vimRegion,vimSynLine,vimNotation,vimIsCommand,vimCtrlChar,vimFuncVar syn match vimFunction "\<\(function\|functio\|functi\|funct\|func\|fun\|fu\)!\=\s\+\u\w*("me=e-1 contains=@vimFuncList nextgroup=vimFuncBody syn match vimFunctionError "\<\(function\|functio\|functi\|funct\|func\|fun\|fu\)!\=\s\+\U.\{-}("me=e-1 contains=vimCommand nextgroup=vimFuncBody syn region vimFuncBody contained start=")" end="\=\|<=\|=\~\|!\~\|>\|<\|+\|-\|=\|\." skipwhite nextgroup=vimString,vimSpecFile " User-Specified Commands ! syn cluster vimUserCmdList contains=vimAddress,vimSyntax,vimHighlight,vimAutoCmd,vimCmplxRepeat,vimComment,vimCtrlChar,vimEscapeBrace,vimFilter,vimFunc,vimFunction,vimIsCommand,vimIsCommand,vimMark,vimNotation,vimNumber,vimOper,vimRegion,vimRegister,vimLet,vimSet,vimSetEqual,vimSetString,vimSpecFile,vimString,vimSubst,vimSubstEnd,vimSubstRange,vimSynLine syn match vimUserCmd "\<\(command\|comman\|comma\|comm\|com\)!\=\>.*$" contains=vimUserAttrb,@vimUserCmdList ! syn match vimUserAttrb contained "-\(nargs\|narg\|nar\|na\|n\)=[01*?+]" contains=vimUserAttrbKey,vimOper ! syn match vimUserAttrb contained "-\(complete\|complet\|comple\|compl\|comp\|com\)=\(augroup\|buffer\|command\|dir\|event\|file\|help\|highlight\|menu\|option\|tag\|var\)" contains=vimUserAttrbKey,vimUserAttrbCmplt,vimOper ! syn match vimUserAttrb contained "-\(range\|rang\|ran\|ra\)\(=%\|=\d\+\)\=" contains=vimNumber,vimOper,vimUserAttrbKey syn match vimUserAttrb contained "-\(count\|coun\|cou\)=\d\+" contains=vimNumber,vimOper,vimUserAttrbKey syn match vimUserAttrb contained "-\(bang\|ban\|ba\|b\)" contains=vimOper,vimUserAttrbKey syn match vimUserAttrb contained "-\(register\|registe\|regist\|regis\|regi\|reg\|re\)" contains=vimOper,vimUserAttrbKey --- 310,320 ---- syn match vimOper "||\|&&\|!=\|>=\|<=\|=\~\|!\~\|>\|<\|+\|-\|=\|\." skipwhite nextgroup=vimString,vimSpecFile " User-Specified Commands ! syn cluster vimUserCmdList contains=vimAddress,vimSyntax,vimHighlight,vimAutoCmd,vimCmplxRepeat,vimComment,vimCtrlChar,vimEscapeBrace,vimFilter,vimFunc,vimFunction,vimIsCommand,vimMark,vimNotation,vimNumber,vimOper,vimRegion,vimRegister,vimLet,vimSet,vimSetEqual,vimSetString,vimSpecFile,vimString,vimSubst,vimSubstEnd,vimSubstRange,vimSynLine syn match vimUserCmd "\<\(command\|comman\|comma\|comm\|com\)!\=\>.*$" contains=vimUserAttrb,@vimUserCmdList ! syn match vimUserAttrb contained "-\(nargs\|narg\|nar\|na\|n\)=[01*?+]" contains=vimUserAttrbKey,vimOper ! syn match vimUserAttrb contained "-\(complete\|complet\|comple\|compl\|comp\|com\)=\(augroup\|buffer\|command\|dir\|event\|file\|help\|highlight\|menu\|option\|tag\|var\)" contains=vimUserAttrbKey,vimUserAttrbCmplt,vimOper ! syn match vimUserAttrb contained "-\(range\|rang\|ran\|ra\)\(=%\|=\d\+\)\=" contains=vimNumber,vimOper,vimUserAttrbKey syn match vimUserAttrb contained "-\(count\|coun\|cou\)=\d\+" contains=vimNumber,vimOper,vimUserAttrbKey syn match vimUserAttrb contained "-\(bang\|ban\|ba\|b\)" contains=vimOper,vimUserAttrbKey syn match vimUserAttrb contained "-\(register\|registe\|regist\|regis\|regi\|reg\|re\)" contains=vimOper,vimUserAttrbKey *************** *** 410,417 **** " Autocmd " ======= ! syn match vimAutoEventList contained "\(\a\+,\)*\a\+" contains=vimAutoEvent nextgroup=vimAutoCmdSpace ! syn match vimAutoCmdSpace contained "\s\+" nextgroup=vimAutoCmdSfxList syn match vimAutoCmdSfxList contained "\S*" syn keyword vimAutoCmd au[tocmd] do[autocmd] doautoa[ll] skipwhite nextgroup=vimAutoEventList --- 410,417 ---- " Autocmd " ======= ! syn match vimAutoEventList contained "\(!\s\+\)\=\(\a\+,\)*\a\+" contains=vimAutoEvent nextgroup=vimAutoCmdSpace ! syn match vimAutoCmdSpace contained "\s\+" nextgroup=vimAutoCmdSfxList syn match vimAutoCmdSfxList contained "\S*" syn keyword vimAutoCmd au[tocmd] do[autocmd] doautoa[ll] skipwhite nextgroup=vimAutoEventList *************** *** 560,566 **** " Beginners - Patterns that involve ^ " ========= syn match vimLineComment +^[ \t:]*".*$+ contains=vimTodo,vimCommentString,vimCommentTitle ! syn match vimCommentTitle '"\s*\(\u\a*\s*\)\+:'ms=s+1 contained syn match vimContinue "^\s*\\" " Highlighting Settings --- 560,566 ---- " Beginners - Patterns that involve ^ " ========= syn match vimLineComment +^[ \t:]*".*$+ contains=vimTodo,vimCommentString,vimCommentTitle ! syn match vimCommentTitle '"\s*\u\a*\(\s\+\u\a*\)*:'ms=s+1 contained syn match vimContinue "^\s*\\" " Highlighting Settings *** ../vim-5.6.1/src/version.c Tue Jan 18 20:01:25 2000 --- src/version.c Thu Jan 20 10:11:34 2000 *************** *** 420,421 **** --- 420,423 ---- { /* Add new patch number below this line */ + /**/ + 2, /**/ -- hundred-and-one symptoms of being an internet addict: 257. You turn to the teletext page "surfing report" and are surprised that it is about sizes of waves and a weather forecast for seaside resorts. --/-/---- Bram Moolenaar ---- Bram@moolenaar.net ---- Bram@vim.org ---\-\-- \ \ www.vim.org/iccf www.moolenaar.net www.vim.org / /