Mercurial > vim
annotate runtime/indent/rrst.vim @ 32286:dd85b8e05559 v9.0.1474
patch 9.0.1474: CI runs with old version of Ubuntu and tools
Commit: https://github.com/vim/vim/commit/9be736f2eb7b3474246d644d3defe6fd126b5b18
Author: Philip H <47042125+pheiduck@users.noreply.github.com>
Date: Fri Apr 21 19:51:22 2023 +0100
patch 9.0.1474: CI runs with old version of Ubuntu and tools
Problem: CI runs with old version of Ubuntu and tools.
Solution: Update CI to more recent versions. (closes https://github.com/vim/vim/issues/11092)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 21 Apr 2023 21:00:04 +0200 |
parents | b2412874362f |
children | 02bd0fe77c68 |
rev | line source |
---|---|
6051 | 1 " Vim indent file |
2 " Language: Rrst | |
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:
6051
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/r.vim | |
13 let s:RIndent = function(substitute(&indentexpr, "()", "", "")) | |
14 let b:did_indent = 1 | |
15 | |
16 setlocal indentkeys=0{,0},:,!^F,o,O,e | |
17 setlocal indentexpr=GetRrstIndent() | |
18 | |
32061 | 19 let b:undo_indent = "setl inde< indk<" |
20 | |
6051 | 21 if exists("*GetRrstIndent") |
22 finish | |
23 endif | |
24 | |
25 function GetRstIndent() | |
26 let pline = getline(v:lnum - 1) | |
27 let cline = getline(v:lnum) | |
28 if prevnonblank(v:lnum - 1) < v:lnum - 1 || cline =~ '^\s*[-\+\*]\s' || cline =~ '^\s*\d\+\.\s\+' | |
29 return indent(v:lnum) | |
30 elseif pline =~ '^\s*[-\+\*]\s' | |
31 return indent(v:lnum - 1) + 2 | |
32 elseif pline =~ '^\s*\d\+\.\s\+' | |
33 return indent(v:lnum - 1) + 3 | |
34 endif | |
35 return indent(prevnonblank(v:lnum - 1)) | |
36 endfunction | |
37 | |
38 function GetRrstIndent() | |
39 if getline(".") =~ '^\.\. {r .*}$' || getline(".") =~ '^\.\. \.\.$' | |
40 return 0 | |
41 endif | |
42 if search('^\.\. {r', "bncW") > search('^\.\. \.\.$', "bncW") | |
43 return s:RIndent() | |
44 else | |
45 return GetRstIndent() | |
46 endif | |
47 endfunction | |
48 | |
49 " vim: sw=2 |