annotate runtime/indent/gitconfig.vim @ 39:c16898406ff2

synchorinize version 7.3.081
author one@zeus.cr.ie.u-ryukyu.ac.jp
date Fri, 17 Dec 2010 17:43:06 +0900
parents db46d51a3939
children 67300faee616
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5
db46d51a3939 Initial revision
axmo
parents:
diff changeset
1 " Vim indent file
db46d51a3939 Initial revision
axmo
parents:
diff changeset
2 " Language: git config file
39
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
3 " Maintainer: Tim Pope <vimNOSPAM@tpope.org>
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
4 " Last Change: 2010 May 21
5
db46d51a3939 Initial revision
axmo
parents:
diff changeset
5
db46d51a3939 Initial revision
axmo
parents:
diff changeset
6 if exists("b:did_indent")
db46d51a3939 Initial revision
axmo
parents:
diff changeset
7 finish
db46d51a3939 Initial revision
axmo
parents:
diff changeset
8 endif
db46d51a3939 Initial revision
axmo
parents:
diff changeset
9 let b:did_indent = 1
db46d51a3939 Initial revision
axmo
parents:
diff changeset
10
db46d51a3939 Initial revision
axmo
parents:
diff changeset
11 setlocal autoindent
db46d51a3939 Initial revision
axmo
parents:
diff changeset
12 setlocal indentexpr=GetGitconfigIndent()
db46d51a3939 Initial revision
axmo
parents:
diff changeset
13 setlocal indentkeys=o,O,*<Return>,0[,],0;,0#,=,!^F
db46d51a3939 Initial revision
axmo
parents:
diff changeset
14
db46d51a3939 Initial revision
axmo
parents:
diff changeset
15 " Only define the function once.
db46d51a3939 Initial revision
axmo
parents:
diff changeset
16 if exists("*GetGitconfigIndent")
db46d51a3939 Initial revision
axmo
parents:
diff changeset
17 finish
db46d51a3939 Initial revision
axmo
parents:
diff changeset
18 endif
db46d51a3939 Initial revision
axmo
parents:
diff changeset
19
db46d51a3939 Initial revision
axmo
parents:
diff changeset
20 function! GetGitconfigIndent()
39
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
21 let line = getline(prevnonblank(v:lnum-1))
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
22 let cline = getline(v:lnum)
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
23 if line =~ '\\\@<!\%(\\\\\)*\\$'
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
24 " odd number of slashes, in a line continuation
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
25 return 2 * &sw
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
26 elseif cline =~ '^\s*\['
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
27 return 0
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
28 elseif cline =~ '^\s*\a'
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
29 return &sw
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
30 elseif cline == '' && line =~ '^\['
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
31 return &sw
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
32 else
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
33 return -1
c16898406ff2 synchorinize version 7.3.081
one@zeus.cr.ie.u-ryukyu.ac.jp
parents: 5
diff changeset
34 endif
5
db46d51a3939 Initial revision
axmo
parents:
diff changeset
35 endfunction