Mercurial > vim
annotate runtime/indent/gitolite.vim @ 28459:52ef65c0637f v8.2.4754
patch 8.2.4754: using cached values after unsetting some environment variables
Commit: https://github.com/vim/vim/commit/7714231bb5b15f7c85453f3945c108478de1d08a
Author: LemonBoy <thatlemon@gmail.com>
Date: Fri Apr 15 20:50:46 2022 +0100
patch 8.2.4754: using cached values after unsetting some environment variables
Problem: Still using cached values after unsetting some known environment
variables.
Solution: Take care of the side effects. (closes #10194)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 15 Apr 2022 22:00:03 +0200 |
parents | 6dd88e45d47d |
children |
rev | line source |
---|---|
3224 | 1 " Vim indent file |
2 " Language: gitolite configuration | |
12756
3b26420fc639
Long overdue runtime update.
Christian Brabandt <cb@256bit.org>
parents:
11518
diff
changeset
|
3 " URL: https://github.com/sitaramc/gitolite/blob/master/contrib/vim/indent/gitolite.vim |
3b26420fc639
Long overdue runtime update.
Christian Brabandt <cb@256bit.org>
parents:
11518
diff
changeset
|
4 " (https://raw.githubusercontent.com/sitaramc/gitolite/master/contrib/vim/indent/gitolite.vim) |
3b26420fc639
Long overdue runtime update.
Christian Brabandt <cb@256bit.org>
parents:
11518
diff
changeset
|
5 " Maintainer: Sitaram Chamarty <sitaramc@gmail.com> |
3b26420fc639
Long overdue runtime update.
Christian Brabandt <cb@256bit.org>
parents:
11518
diff
changeset
|
6 " (former Maintainer: Teemu Matilainen <teemu.matilainen@iki.fi>) |
28379 | 7 " Last Change: 2022 Apr 06 |
3224 | 8 |
9 if exists("b:did_indent") | |
10 finish | |
11 endif | |
12 let b:did_indent = 1 | |
13 | |
14 setlocal autoindent | |
15 setlocal indentexpr=GetGitoliteIndent() | |
16 setlocal indentkeys=o,O,*<Return>,!^F,=repo,\",= | |
17 | |
28379 | 18 let b:undo_indent = "setl ai< inde< indk<" |
19 | |
3224 | 20 " Only define the function once. |
21 if exists("*GetGitoliteIndent") | |
22 finish | |
23 endif | |
24 | |
3237 | 25 let s:cpo_save = &cpo |
26 set cpo&vim | |
27 | |
3224 | 28 function! GetGitoliteIndent() |
29 let prevln = prevnonblank(v:lnum-1) | |
30 let pline = getline(prevln) | |
31 let cline = getline(v:lnum) | |
32 | |
33 if cline =~ '^\s*\(C\|R\|RW\|RW+\|RWC\|RW+C\|RWD\|RW+D\|RWCD\|RW+CD\|-\)[ \t=]' | |
11518 | 34 return shiftwidth() |
3224 | 35 elseif cline =~ '^\s*config\s' |
11518 | 36 return shiftwidth() |
12756
3b26420fc639
Long overdue runtime update.
Christian Brabandt <cb@256bit.org>
parents:
11518
diff
changeset
|
37 elseif cline =~ '^\s*option\s' |
3b26420fc639
Long overdue runtime update.
Christian Brabandt <cb@256bit.org>
parents:
11518
diff
changeset
|
38 return shiftwidth() |
3224 | 39 elseif pline =~ '^\s*repo\s' && cline =~ '^\s*\(#.*\)\?$' |
11518 | 40 return shiftwidth() |
3224 | 41 elseif cline =~ '^\s*#' |
42 return indent(prevln) | |
43 elseif cline =~ '^\s*$' | |
44 return -1 | |
45 else | |
46 return 0 | |
47 endif | |
48 endfunction | |
3237 | 49 |
50 let &cpo = s:cpo_save | |
51 unlet s:cpo_save |