0
0
mirror of https://github.com/vim/vim.git synced 2025-07-04 23:07:33 -04:00
vim/runtime/syntax/indent.vim

177 lines
7.6 KiB
VimL
Raw Normal View History

2004-06-13 20:20:40 +00:00
" Vim syntax file
2005-06-29 22:40:58 +00:00
" Language: indent(1) configuration file
2006-04-21 22:12:41 +00:00
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
2005-06-29 22:40:58 +00:00
" indent_is_bsd: If exists, will change somewhat to match BSD implementation
"
2004-06-13 20:20:40 +00:00
" TODO: is the deny-all (a la lilo.vim nice or no?)...
2005-06-29 22:40:58 +00:00
" irritating to be wrong to the last char...
" would be sweet if right until one char fails
2004-06-13 20:20:40 +00:00
2005-06-29 22:40:58 +00:00
if exists("b:current_syntax")
2004-06-13 20:20:40 +00:00
finish
endif
2005-06-29 22:40:58 +00:00
let s:cpo_save = &cpo
set cpo&vim
2006-04-21 22:12:41 +00:00
setlocal iskeyword=@,48-57,-,+,_
2005-06-29 22:40:58 +00:00
syn match indentError '\S\+'
syn keyword indentTodo contained TODO FIXME XXX NOTE
2005-07-04 22:49:24 +00:00
syn region indentComment start='/\*' end='\*/'
2005-06-29 22:40:58 +00:00
\ contains=indentTodo,@Spell
2005-07-04 22:49:24 +00:00
syn region indentComment start='//' skip='\\$' end='$'
2005-06-29 22:40:58 +00:00
\ contains=indentTodo,@Spell
syn keyword indentOptions -bacc --blank-lines-after-ifdefs
\ -bad --blank-lines-after-declarations
\ -badp --blank-lines-after-procedure-declarations
\ -bap --blank-lines-after-procedures
\ -bbb --blank-lines-before-block-comments
\ -bbo --break-before-boolean-operator
\ -bc --blank-lines-after-commas
\ -bfda --break-function-decl-args
\ -bfde --break-function-decl-args-end
\ -bl --braces-after-if-line
\ -blf --braces-after-func-def-line
\ -bls --braces-after-struct-decl-line
\ -br --braces-on-if-line
\ -brf --braces-on-func-def-line
\ -brs --braces-on-struct-decl-line
\ -bs --Bill-Shannon
\ -bs --blank-before-sizeof
\ -c++ --c-plus-plus
\ -cdb --comment-delimiters-on-blank-lines
\ -cdw --cuddle-do-while
\ -ce --cuddle-else
\ -cs --space-after-cast
\ -dj --left-justify-declarations
\ -eei --extra-expression-indentation
\ -fc1 --format-first-column-comments
\ -fca --format-all-comments
\ -gnu --gnu-style
\ -h --help
\ -h --usage
\ -hnl --honour-newlines
\ -kr --k-and-r-style
\ -kr --kernighan-and-ritchie
\ -kr --kernighan-and-ritchie-style
\ -lp --continue-at-parentheses
\ -lps --leave-preprocessor-space
\ -nbacc --no-blank-lines-after-ifdefs
\ -nbad --no-blank-lines-after-declarations
\ -nbadp --no-blank-lines-after-procedure-declarations
\ -nbap --no-blank-lines-after-procedures
\ -nbbb --no-blank-lines-before-block-comments
\ -nbbo --break-after-boolean-operator
\ -nbc --no-blank-lines-after-commas
\ -nbfda --dont-break-function-decl-args
\ -nbfde --dont-break-function-decl-args-end
\ -nbs --no-Bill-Shannon
\ -nbs --no-blank-before-sizeof
\ -ncdb --no-comment-delimiters-on-blank-lines
\ -ncdw --dont-cuddle-do-while
\ -nce --dont-cuddle-else
\ -ncs --no-space-after-casts
\ -ndj --dont-left-justify-declarations
\ -neei --no-extra-expression-indentation
\ -nfc1 --dont-format-first-column-comments
\ -nfca --dont-format-comments
\ -nhnl --ignore-newlines
\ -nip --dont-indent-parameters
\ -nip --no-parameter-indentation
\ -nlp --dont-line-up-parentheses
\ -nlps --remove-preprocessor-space
\ -npcs --no-space-after-function-call-names
\ -npro --ignore-profile
\ -nprs --no-space-after-parentheses
\ -npsl --dont-break-procedure-type
\ -nsaf --no-space-after-for
\ -nsai --no-space-after-if
\ -nsaw --no-space-after-while
\ -nsc --dont-star-comments
\ -nsob --leave-optional-blank-lines
\ -nss --dont-space-special-semicolon
\ -nut --no-tabs
\ -nv --no-verbosity
\ -o --output
\ -o --output-file
\ -orig --berkeley
\ -orig --berkeley-style
\ -orig --original
\ -orig --original-style
\ -pcs --space-after-procedure-calls
\ -pmt --preserve-mtime
\ -prs --space-after-parentheses
\ -psl --procnames-start-lines
\ -saf --space-after-for
\ -sai --space-after-if
\ -saw --space-after-while
\ -sc --start-left-side-of-comments
\ -sob --swallow-optional-blank-lines
\ -ss --space-special-semicolon
\ -st --standard-output
\ -ut --use-tabs
\ -v --verbose
\ -version --version
syn keyword indentOptions -bli --brace-indent
\ -c --comment-indentation
\ -bli --brace-indent
\ -c --comment-indentation
\ -cbi --case-brace-indentation
\ -cd --declaration-comment-column
\ -ci --continuation-indentation
\ -cli --case-indentation
\ -cp --else-endif-column
\ -d --line-comments-indentation
\ -di --declaration-indentation
\ -i --indent-level
\ -ip --parameter-indentation
\ -l --line-length
\ -lc --comment-line-length
\ -pi --paren-indentation
\ -ppi --preprocessor-indentation
\ -sbi --struct-brace-indentation
\ -ts --tab-size
\ nextgroup=indenNumber skipwhite
if !exists("indent_is_bsd")
syn keyword indentOptions -i --indentation-level
\ nextgroup=indentNumber skipwhite
2004-06-13 20:20:40 +00:00
endif
2005-06-29 22:40:58 +00:00
syn match indentNumber display '\<\d\+\>'
syn keyword indentOptions -T nextgroup=indentIdent skipwhite
syn match indentIdent display '\<\h\w*\>'
if exists("indent_is_bsd")
syn keyword indentOptions -ip -nip -dj -ndj -ei -nei
2004-06-13 20:20:40 +00:00
endif
2005-06-29 22:40:58 +00:00
if exists("c_minlines")
let b:c_minlines = c_minlines
else
if !exists("c_no_if0")
let b:c_minlines = 50 " #if 0 constructs can be long
2004-06-13 20:20:40 +00:00
else
2005-06-29 22:40:58 +00:00
let b:c_minlines = 15 " mostly for () constructs
2004-06-13 20:20:40 +00:00
endif
endif
2005-06-29 22:40:58 +00:00
hi def link indentError Error
hi def link indentComment Comment
hi def link indentTodo Todo
hi def link indentOptions Keyword
hi def link indentNumber Number
hi def link indentIdent Identifier
2004-06-13 20:20:40 +00:00
let b:current_syntax = "indent"
2005-06-29 22:40:58 +00:00
let &cpo = s:cpo_save
unlet s:cpo_save