Mercurial > vim
annotate runtime/indent/rnoweb.vim @ 32214:a4dafbd8b7d5 v9.0.1438
patch 9.0.1438: .fs files are falsely recognized as forth files
Commit: https://github.com/vim/vim/commit/065088d5549e7711668321cc5a77c9a9b684b142
Author: Johan Kotlinski <kotlinski@gmail.com>
Date: Sun Apr 2 20:29:38 2023 +0100
patch 9.0.1438: .fs files are falsely recognized as forth files
Problem: .fs files are falsely recognized as forth files.
Solution: Check 100 lines for something that looks like forth. (Johan
Kotlinski, closes #12219, closes #11988)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 02 Apr 2023 21:30:05 +0200 |
parents | b2412874362f |
children | b2e8663e6dcc |
rev | line source |
---|---|
6051 | 1 " Vim indent file |
2 " Language: Rnoweb | |
3 " Author: Jakson Alves de Aquino <jalvesaq@gmail.com> | |
8497
da01d5da2cfa
commit https://github.com/vim/vim/commit/77cdfd10382e01cc51f4ba1a9177032351843151
Christian Brabandt <cb@256bit.org>
parents:
6840
diff
changeset
|
4 " Homepage: https://github.com/jalvesaq/R-Vim-runtime |
32061 | 5 " Last Change: Feb 25, 2023 |
6051 | 6 |
7 | |
8 " Only load this indent file when no other was loaded. | |
9 if exists("b:did_indent") | |
10 finish | |
11 endif | |
12 runtime indent/tex.vim | |
9975
03fa8a51e9dc
commit https://github.com/vim/vim/commit/e4a3bcf28d92d0bde9ca227ccb40d401038185e5
Christian Brabandt <cb@256bit.org>
parents:
8497
diff
changeset
|
13 |
03fa8a51e9dc
commit https://github.com/vim/vim/commit/e4a3bcf28d92d0bde9ca227ccb40d401038185e5
Christian Brabandt <cb@256bit.org>
parents:
8497
diff
changeset
|
14 function! s:NoTeXIndent() |
03fa8a51e9dc
commit https://github.com/vim/vim/commit/e4a3bcf28d92d0bde9ca227ccb40d401038185e5
Christian Brabandt <cb@256bit.org>
parents:
8497
diff
changeset
|
15 return indent(line(".")) |
03fa8a51e9dc
commit https://github.com/vim/vim/commit/e4a3bcf28d92d0bde9ca227ccb40d401038185e5
Christian Brabandt <cb@256bit.org>
parents:
8497
diff
changeset
|
16 endfunction |
03fa8a51e9dc
commit https://github.com/vim/vim/commit/e4a3bcf28d92d0bde9ca227ccb40d401038185e5
Christian Brabandt <cb@256bit.org>
parents:
8497
diff
changeset
|
17 |
03fa8a51e9dc
commit https://github.com/vim/vim/commit/e4a3bcf28d92d0bde9ca227ccb40d401038185e5
Christian Brabandt <cb@256bit.org>
parents:
8497
diff
changeset
|
18 if &indentexpr == "" || &indentexpr == "GetRnowebIndent()" |
03fa8a51e9dc
commit https://github.com/vim/vim/commit/e4a3bcf28d92d0bde9ca227ccb40d401038185e5
Christian Brabandt <cb@256bit.org>
parents:
8497
diff
changeset
|
19 let s:TeXIndent = function("s:NoTeXIndent") |
03fa8a51e9dc
commit https://github.com/vim/vim/commit/e4a3bcf28d92d0bde9ca227ccb40d401038185e5
Christian Brabandt <cb@256bit.org>
parents:
8497
diff
changeset
|
20 else |
03fa8a51e9dc
commit https://github.com/vim/vim/commit/e4a3bcf28d92d0bde9ca227ccb40d401038185e5
Christian Brabandt <cb@256bit.org>
parents:
8497
diff
changeset
|
21 let s:TeXIndent = function(substitute(&indentexpr, "()", "", "")) |
03fa8a51e9dc
commit https://github.com/vim/vim/commit/e4a3bcf28d92d0bde9ca227ccb40d401038185e5
Christian Brabandt <cb@256bit.org>
parents:
8497
diff
changeset
|
22 endif |
03fa8a51e9dc
commit https://github.com/vim/vim/commit/e4a3bcf28d92d0bde9ca227ccb40d401038185e5
Christian Brabandt <cb@256bit.org>
parents:
8497
diff
changeset
|
23 |
14637 | 24 unlet! b:did_indent |
6051 | 25 runtime indent/r.vim |
26 let s:RIndent = function(substitute(&indentexpr, "()", "", "")) | |
27 let b:did_indent = 1 | |
28 | |
29 setlocal indentkeys=0{,0},!^F,o,O,e,},=\bibitem,=\item | |
30 setlocal indentexpr=GetRnowebIndent() | |
31 | |
32061 | 32 let b:undo_indent = "setl inde< indk<" |
33 | |
6051 | 34 if exists("*GetRnowebIndent") |
35 finish | |
36 endif | |
37 | |
38 function GetRnowebIndent() | |
6840 | 39 let curline = getline(".") |
40 if curline =~ '^<<.*>>=$' || curline =~ '^\s*@$' | |
6051 | 41 return 0 |
42 endif | |
43 if search("^<<", "bncW") > search("^@", "bncW") | |
44 return s:RIndent() | |
45 endif | |
46 return s:TeXIndent() | |
47 endfunction | |
48 | |
49 " vim: sw=2 |