1071d4279SBram Moolenaar" Vim syntax file 242eeac35SBram Moolenaar" Language: indent(1) configuration file 3*214641f7SBram Moolenaar" Previous Maintainer: Nikolai Weibull <[email protected]> 46dfc28beSBram Moolenaar" Latest Revision: 2010-01-23 542eeac35SBram Moolenaar" indent_is_bsd: If exists, will change somewhat to match BSD implementation 642eeac35SBram Moolenaar" 7071d4279SBram Moolenaar" TODO: is the deny-all (a la lilo.vim nice or no?)... 8071d4279SBram Moolenaar" irritating to be wrong to the last char... 9071d4279SBram Moolenaar" would be sweet if right until one char fails 10071d4279SBram Moolenaar 1142eeac35SBram Moolenaarif exists("b:current_syntax") 12071d4279SBram Moolenaar finish 13071d4279SBram Moolenaarendif 14071d4279SBram Moolenaar 1542eeac35SBram Moolenaarlet s:cpo_save = &cpo 1642eeac35SBram Moolenaarset cpo&vim 17071d4279SBram Moolenaar 18446cb837SBram Moolenaarsetlocal iskeyword+=-,+ 19071d4279SBram Moolenaar 2042eeac35SBram Moolenaarsyn match indentError '\S\+' 2142eeac35SBram Moolenaar 22071d4279SBram Moolenaarsyn keyword indentTodo contained TODO FIXME XXX NOTE 23071d4279SBram Moolenaar 240dc065eeSBram Moolenaarsyn region indentComment start='/\*' end='\*/' 2542eeac35SBram Moolenaar \ contains=indentTodo,@Spell 260dc065eeSBram Moolenaarsyn region indentComment start='//' skip='\\$' end='$' 2742eeac35SBram Moolenaar \ contains=indentTodo,@Spell 28071d4279SBram Moolenaar 292c7a7638SBram Moolenaarif !exists("indent_is_bsd") 306dfc28beSBram Moolenaar syn match indentOptions '-i\|--indentation-level\|-il\|--indent-level' 31e0d7b3c0SBram Moolenaar \ nextgroup=indentNumber skipwhite skipempty 322c7a7638SBram Moolenaarendif 33e0d7b3c0SBram Moolenaarsyn match indentOptions '-\%(bli\|c\%([bl]i\|[dip]\)\=\|di\=\|ip\=\|lc\=\|pp\=i\|sbi\|ts\|-\%(brace-indent\|comment-indentation\|case-brace-indentation\|declaration-comment-column\|continuation-indentation\|case-indentation\|else-endif-column\|line-comments-indentation\|declaration-indentation\|indent-level\|parameter-indentation\|line-length\|comment-line-length\|paren-indentation\|preprocessor-indentation\|struct-brace-indentation\|tab-size\)\)' 34e0d7b3c0SBram Moolenaar \ nextgroup=indentNumber skipwhite skipempty 352c7a7638SBram Moolenaar 362c7a7638SBram Moolenaarsyn match indentNumber display contained '\d\+\>' 372c7a7638SBram Moolenaar 382c7a7638SBram Moolenaarsyn match indentOptions '-T' 39e0d7b3c0SBram Moolenaar \ nextgroup=indentIdent skipwhite skipempty 402c7a7638SBram Moolenaar 412c7a7638SBram Moolenaarsyn match indentIdent display contained '\h\w*\>' 422c7a7638SBram Moolenaar 4342eeac35SBram Moolenaarsyn keyword indentOptions -bacc --blank-lines-after-ifdefs 4442eeac35SBram Moolenaar \ -bad --blank-lines-after-declarations 4542eeac35SBram Moolenaar \ -badp --blank-lines-after-procedure-declarations 4642eeac35SBram Moolenaar \ -bap --blank-lines-after-procedures 4742eeac35SBram Moolenaar \ -bbb --blank-lines-before-block-comments 4842eeac35SBram Moolenaar \ -bbo --break-before-boolean-operator 4942eeac35SBram Moolenaar \ -bc --blank-lines-after-commas 5042eeac35SBram Moolenaar \ -bfda --break-function-decl-args 5142eeac35SBram Moolenaar \ -bfde --break-function-decl-args-end 5242eeac35SBram Moolenaar \ -bl --braces-after-if-line 5342eeac35SBram Moolenaar \ -blf --braces-after-func-def-line 5442eeac35SBram Moolenaar \ -bls --braces-after-struct-decl-line 5542eeac35SBram Moolenaar \ -br --braces-on-if-line 5642eeac35SBram Moolenaar \ -brf --braces-on-func-def-line 5742eeac35SBram Moolenaar \ -brs --braces-on-struct-decl-line 582c7a7638SBram Moolenaar \ -bs --Bill-Shannon --blank-before-sizeof 5942eeac35SBram Moolenaar \ -c++ --c-plus-plus 6042eeac35SBram Moolenaar \ -cdb --comment-delimiters-on-blank-lines 6142eeac35SBram Moolenaar \ -cdw --cuddle-do-while 6242eeac35SBram Moolenaar \ -ce --cuddle-else 6342eeac35SBram Moolenaar \ -cs --space-after-cast 6442eeac35SBram Moolenaar \ -dj --left-justify-declarations 6542eeac35SBram Moolenaar \ -eei --extra-expression-indentation 6642eeac35SBram Moolenaar \ -fc1 --format-first-column-comments 6742eeac35SBram Moolenaar \ -fca --format-all-comments 6842eeac35SBram Moolenaar \ -gnu --gnu-style 692c7a7638SBram Moolenaar \ -h --help --usage 7042eeac35SBram Moolenaar \ -hnl --honour-newlines 712c7a7638SBram Moolenaar \ -kr --k-and-r-style --kernighan-and-ritchie --kernighan-and-ritchie-style 7242eeac35SBram Moolenaar \ -lp --continue-at-parentheses 7342eeac35SBram Moolenaar \ -lps --leave-preprocessor-space 7442eeac35SBram Moolenaar \ -nbacc --no-blank-lines-after-ifdefs 7542eeac35SBram Moolenaar \ -nbad --no-blank-lines-after-declarations 7642eeac35SBram Moolenaar \ -nbadp --no-blank-lines-after-procedure-declarations 7742eeac35SBram Moolenaar \ -nbap --no-blank-lines-after-procedures 7842eeac35SBram Moolenaar \ -nbbb --no-blank-lines-before-block-comments 7942eeac35SBram Moolenaar \ -nbbo --break-after-boolean-operator 8042eeac35SBram Moolenaar \ -nbc --no-blank-lines-after-commas 8142eeac35SBram Moolenaar \ -nbfda --dont-break-function-decl-args 8242eeac35SBram Moolenaar \ -nbfde --dont-break-function-decl-args-end 832c7a7638SBram Moolenaar \ -nbs --no-Bill-Shannon --no-blank-before-sizeof 8442eeac35SBram Moolenaar \ -ncdb --no-comment-delimiters-on-blank-lines 8542eeac35SBram Moolenaar \ -ncdw --dont-cuddle-do-while 8642eeac35SBram Moolenaar \ -nce --dont-cuddle-else 8742eeac35SBram Moolenaar \ -ncs --no-space-after-casts 8842eeac35SBram Moolenaar \ -ndj --dont-left-justify-declarations 8942eeac35SBram Moolenaar \ -neei --no-extra-expression-indentation 9042eeac35SBram Moolenaar \ -nfc1 --dont-format-first-column-comments 9142eeac35SBram Moolenaar \ -nfca --dont-format-comments 9242eeac35SBram Moolenaar \ -nhnl --ignore-newlines 932c7a7638SBram Moolenaar \ -nip --dont-indent-parameters --no-parameter-indentation 9442eeac35SBram Moolenaar \ -nlp --dont-line-up-parentheses 9542eeac35SBram Moolenaar \ -nlps --remove-preprocessor-space 9642eeac35SBram Moolenaar \ -npcs --no-space-after-function-call-names 972c7a7638SBram Moolenaar \ -npmt 9842eeac35SBram Moolenaar \ -npro --ignore-profile 9942eeac35SBram Moolenaar \ -nprs --no-space-after-parentheses 10042eeac35SBram Moolenaar \ -npsl --dont-break-procedure-type 10142eeac35SBram Moolenaar \ -nsaf --no-space-after-for 10242eeac35SBram Moolenaar \ -nsai --no-space-after-if 10342eeac35SBram Moolenaar \ -nsaw --no-space-after-while 10442eeac35SBram Moolenaar \ -nsc --dont-star-comments 10542eeac35SBram Moolenaar \ -nsob --leave-optional-blank-lines 10642eeac35SBram Moolenaar \ -nss --dont-space-special-semicolon 10742eeac35SBram Moolenaar \ -nut --no-tabs 10842eeac35SBram Moolenaar \ -nv --no-verbosity 10942eeac35SBram Moolenaar \ -o --output 11042eeac35SBram Moolenaar \ -o --output-file 1112c7a7638SBram Moolenaar \ -orig --berkeley --berkeley-style --original --original-style 11242eeac35SBram Moolenaar \ -pcs --space-after-procedure-calls 11342eeac35SBram Moolenaar \ -pmt --preserve-mtime 11442eeac35SBram Moolenaar \ -prs --space-after-parentheses 11542eeac35SBram Moolenaar \ -psl --procnames-start-lines 11642eeac35SBram Moolenaar \ -saf --space-after-for 11742eeac35SBram Moolenaar \ -sai --space-after-if 11842eeac35SBram Moolenaar \ -saw --space-after-while 11942eeac35SBram Moolenaar \ -sc --start-left-side-of-comments 12042eeac35SBram Moolenaar \ -sob --swallow-optional-blank-lines 12142eeac35SBram Moolenaar \ -ss --space-special-semicolon 12242eeac35SBram Moolenaar \ -st --standard-output 12342eeac35SBram Moolenaar \ -ut --use-tabs 12442eeac35SBram Moolenaar \ -v --verbose 12542eeac35SBram Moolenaar \ -version --version 1266dfc28beSBram Moolenaar \ -linux --linux-style 127071d4279SBram Moolenaar 12842eeac35SBram Moolenaarif exists("indent_is_bsd") 129e0d7b3c0SBram Moolenaar syn keyword indentOptions -ip -ei -nei 13042eeac35SBram Moolenaarendif 13142eeac35SBram Moolenaar 13242eeac35SBram Moolenaarif exists("c_minlines") 13342eeac35SBram Moolenaar let b:c_minlines = c_minlines 134071d4279SBram Moolenaarelse 13542eeac35SBram Moolenaar if !exists("c_no_if0") 13642eeac35SBram Moolenaar let b:c_minlines = 50 " #if 0 constructs can be long 137071d4279SBram Moolenaar else 13842eeac35SBram Moolenaar let b:c_minlines = 15 " mostly for () constructs 13942eeac35SBram Moolenaar endif 140071d4279SBram Moolenaarendif 141071d4279SBram Moolenaar 14242eeac35SBram Moolenaarhi def link indentError Error 14342eeac35SBram Moolenaarhi def link indentComment Comment 14442eeac35SBram Moolenaarhi def link indentTodo Todo 14542eeac35SBram Moolenaarhi def link indentOptions Keyword 14642eeac35SBram Moolenaarhi def link indentNumber Number 14742eeac35SBram Moolenaarhi def link indentIdent Identifier 148071d4279SBram Moolenaar 149071d4279SBram Moolenaarlet b:current_syntax = "indent" 150071d4279SBram Moolenaar 15142eeac35SBram Moolenaarlet &cpo = s:cpo_save 15242eeac35SBram Moolenaarunlet s:cpo_save 153