📄 csh.vim
字号:
" Vim syntax file" Language: C-shell (csh)" Maintainer: Dr. Charles E. Campbell, Jr. <Charles.E.Campbell.1@gsfc.nasa.gov>" Version: 1.02" Last Change: September 19, 2000" For version 5.x: Clear all syntax items" For version 6.x: Quit when a syntax file was already loadedif version < 600 syntax clearelseif exists("b:current_syntax") finishendif" clusters:syn cluster cshQuoteList contains=cshDblQuote,cshSnglQuote,cshBckQuote" Variables which affect the csh itselfsyn match cshSetVariables contained "argv\|histchars\|ignoreeof\|noglob\|prompt\|status"syn match cshSetVariables contained "cdpath\|history\|mail\|nonomatch\|savehist\|time"syn match cshSetVariables contained "cwd\|home\|noclobber\|path\|shell\|verbose"syn match cshSetVariables contained "echo"syn case ignoresyn keyword cshTodo contained todosyn case match" Variable Name Expansion Modifierssyn match cshModifier contained ":\(h\|t\|r\|q\|x\|gh\|gt\|gr\)"" Strings and Commentssyn match cshNoEndlineDQ contained "[^\"]\(\\\\\)*$"syn match cshNoEndlineSQ contained "[^\']\(\\\\\)*$"syn match cshNoEndlineBQ contained "[^\`]\(\\\\\)*$"syn region cshDblQuote start=+[^\\]"+lc=1 skip=+\\\\\|\\"+ end=+"+ contains=cshSpecial,cshShellVariables,cshExtVar,cshSelector,cshQtyWord,cshArgv,cshSubst,cshNoEndlineDQ,cshBckQuotesyn region cshSnglQuote start=+[^\\]'+lc=1 skip=+\\\\\|\\'+ end=+'+ contains=cshNoEndlineSQsyn region cshBckQuote start=+[^\\]`+lc=1 skip=+\\\\\|\\`+ end=+`+ contains=cshNoEndlineBQsyn region cshDblQuote start=+^"+ skip=+\\\\\|\\"+ end=+"+ contains=cshSpecial,cshExtVar,cshSelector,cshQtyWord,cshArgv,cshSubst,cshNoEndlineDQsyn region cshSnglQuote start=+^'+ skip=+\\\\\|\\'+ end=+'+ contains=cshNoEndlineSQsyn region cshBckQuote start=+^`+ skip=+\\\\\|\\`+ end=+`+ contains=cshNoEndlineBQsyn cluster cshCommentGroup contains=cshTodosyn match cshComment "#.*$" contains=@cshCommentGroup" A bunch of useful csh keywordssyn keyword cshStatement alias end history onintr setenv unaliassyn keyword cshStatement cd eval kill popd shift unhashsyn keyword cshStatement chdir exec login pushd sourcesyn keyword cshStatement continue exit logout rehash time unsetenvsyn keyword cshStatement dirs glob nice repeat umask waitsyn keyword cshStatement echo goto nohupsyn keyword cshConditional break case else endsw switchsyn keyword cshConditional breaksw default endifsyn keyword cshRepeat foreach" Special environment variablessyn keyword cshShellVariables HOME LOGNAME PATH TERM USER" Modifiable Variables without {}syn match cshExtVar "\$[a-zA-Z_][a-zA-Z0-9_]*\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=" contains=cshModifiersyn match cshSelector "\$[a-zA-Z_][a-zA-Z0-9_]*\[[a-zA-Z_]\+\]\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=" contains=cshModifiersyn match cshQtyWord "\$#[a-zA-Z_][a-zA-Z0-9_]*\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=" contains=cshModifiersyn match cshArgv "\$\d\+\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=" contains=cshModifiersyn match cshArgv "\$\*\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=" contains=cshModifier" Modifiable Variables with {}syn match cshExtVar "\${[a-zA-Z_][a-zA-Z0-9_]*\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=}" contains=cshModifiersyn match cshSelector "\${[a-zA-Z_][a-zA-Z0-9_]*\[[a-zA-Z_]\+\]\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=}" contains=cshModifiersyn match cshQtyWord "\${#[a-zA-Z_][a-zA-Z0-9_]*\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=}" contains=cshModifiersyn match cshArgv "\${\d\+\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=}" contains=cshModifier" UnModifiable Substitutionssyn match cshSubstError "\$?[a-zA-Z_][a-zA-Z0-9_]*:\(h\|t\|r\|q\|x\|gh\|gt\|gr\)"syn match cshSubstError "\${?[a-zA-Z_][a-zA-Z0-9_]*:\(h\|t\|r\|q\|x\|gh\|gt\|gr\)}"syn match cshSubstError "\$?[0$<]:\(h\|t\|r\|q\|x\|gh\|gt\|gr\)"syn match cshSubst "\$?[a-zA-Z_][a-zA-Z0-9_]*"syn match cshSubst "\${?[a-zA-Z_][a-zA-Z0-9_]*}"syn match cshSubst "\$?[0$<]"" I/O redirectionsyn match cshRedir ">>&!\|>&!\|>>&\|>>!\|>&\|>!\|>>\|<<\|>\|<"" Handle set expressionssyn keyword cshSetStmt contained set unsetsyn region cshSetExpr transparent start="set\|unset" end="$\|;" contains=cshSetVariables,cshSetStmt,@cshQuoteList" Operators and Expression-Using constructssyn keyword cshExprUsing contained if while exit thensyn match cshOperator contained "\(&&\|!\~\|!=\|<<\|<=\|==\|=\~\|>=\|>>\|\*\|\^\|\~\|||\|!\|\|%\|&\|+\|-\|/\|<\|>\||\)"syn match cshOperator contained "[(){}]"syn region cshTest transparent start="if\|while\|exit" skip="\\$" end="$\|;\|then" contains=cshOperator,cshExprUsing,@cshQuoteList" Highlight special characters (those which have a backslash) differentlysyn match cshSpecial contained "\\\d\d\d\|\\[abcfnrtv\\]"syn match cshNumber "-\=\<\d\+\>"" All other identifiers"syn match cshIdentifier "\<[a-zA-Z._][a-zA-Z0-9._]*\>"" Shell Input Redirection (Here Documents)if version < 600 syn region cshHereDoc matchgroup=cshRedir start="<<-\=\s*\**END[a-zA-Z_0-9]*\**" matchgroup=cshRedir end="^END[a-zA-Z_0-9]*$" syn region cshHereDoc matchgroup=cshRedir start="<<-\=\s*\**EOF\**" matchgroup=cshRedir end="^EOF$"else syn region cshHereDoc matchgroup=cshRedir start="<<-\=\s*\**\z(\h\w*\)\**" matchgroup=cshRedir end="^\z1$"endif" Define the default highlighting." For version 5.7 and earlier: only when not done already" For version 5.8 and later: only when an item doesn't have highlighting yetif version >= 508 || !exists("did_csh_syntax_inits") if version < 508 let did_csh_syntax_inits = 1 command -nargs=+ HiLink hi link <args> else command -nargs=+ HiLink hi def link <args> endif HiLink cshArgv cshVariables HiLink cshBckQuote cshCommand HiLink cshDblQuote cshString HiLink cshExprUsing cshStatement HiLink cshExtVar cshVariables HiLink cshHereDoc cshString HiLink cshNoEndlineBQ cshNoEndline HiLink cshNoEndlineDQ cshNoEndline HiLink cshNoEndlineSQ cshNoEndline HiLink cshQtyWord cshVariables HiLink cshRedir cshOperator HiLink cshSelector cshVariables HiLink cshSetStmt cshStatement HiLink cshSetVariables cshVariables HiLink cshSnglQuote cshString HiLink cshSubst cshVariables HiLink cshCommand Statement HiLink cshComment Comment HiLink cshConditional Conditional HiLink cshIdentifier Error HiLink cshModifier Special HiLink cshNoEndline Error HiLink cshNumber Number HiLink cshOperator Operator HiLink cshRedir Statement HiLink cshRepeat Repeat HiLink cshShellVariables Special HiLink cshSpecial Special HiLink cshStatement Statement HiLink cshString String HiLink cshSubstError Error HiLink cshTodo Todo HiLink cshVariables Type delcommand HiLinkendiflet b:current_syntax = "csh"" vim: ts=18
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -