forked from aniani/vim
Updated runtime files.
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
*autocmd.txt* For Vim version 7.3. Last change: 2013 May 19
|
*autocmd.txt* For Vim version 7.3. Last change: 2013 Jun 15
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -513,9 +513,9 @@ CursorHold When the user doesn't press a key for the time
|
|||||||
CursorHoldI Just like CursorHold, but in Insert mode.
|
CursorHoldI Just like CursorHold, but in Insert mode.
|
||||||
|
|
||||||
*CursorMoved*
|
*CursorMoved*
|
||||||
CursorMoved After the cursor was moved in Normal mode.
|
CursorMoved After the cursor was moved in Normal or Visual
|
||||||
Also when the text of the cursor line has been
|
mode. Also when the text of the cursor line
|
||||||
changed, e.g., with "x", "rx" or "p".
|
has been changed, e.g., with "x", "rx" or "p".
|
||||||
Not triggered when there is typeahead or when
|
Not triggered when there is typeahead or when
|
||||||
an operator is pending.
|
an operator is pending.
|
||||||
For an example see |match-parens|.
|
For an example see |match-parens|.
|
||||||
|
@@ -10,9 +10,10 @@ The Lua Interface to Vim *lua* *Lua*
|
|||||||
2. The vim module |lua-vim|
|
2. The vim module |lua-vim|
|
||||||
3. List userdata |lua-list|
|
3. List userdata |lua-list|
|
||||||
4. Dict userdata |lua-dict|
|
4. Dict userdata |lua-dict|
|
||||||
5. Buffer userdata |lua-buffer|
|
5. Funcref userdata |lua-funcref|
|
||||||
6. Window userdata |lua-window|
|
6. Buffer userdata |lua-buffer|
|
||||||
7. The luaeval function |lua-luaeval|
|
7. Window userdata |lua-window|
|
||||||
|
8. The luaeval function |lua-luaeval|
|
||||||
|
|
||||||
{Vi does not have any of these commands}
|
{Vi does not have any of these commands}
|
||||||
|
|
||||||
@@ -110,9 +111,31 @@ input range are stored in "vim.firstline" and "vim.lastline" respectively. The
|
|||||||
module also includes routines for buffer, window, and current line queries,
|
module also includes routines for buffer, window, and current line queries,
|
||||||
Vim evaluation and command execution, and others.
|
Vim evaluation and command execution, and others.
|
||||||
|
|
||||||
vim.list() Returns an empty list (see |List|).
|
vim.list([arg]) Returns an empty list or, if "arg" is a Lua
|
||||||
|
table with numeric keys 1, ..., n (a
|
||||||
vim.dict() Returns an empty dictionary (see |Dictionary|).
|
"sequence"), returns a list l such that l[i] =
|
||||||
|
arg[i] for i = 1, ..., n (see |List|).
|
||||||
|
Non-numeric keys are not used to initialize
|
||||||
|
the list. See also |lua-eval| for conversion
|
||||||
|
rules. Example: >
|
||||||
|
:lua t = {math.pi, false, say = 'hi'}
|
||||||
|
:echo luaeval('vim.list(t)')
|
||||||
|
:" [3.141593, 0], 'say' is ignored
|
||||||
|
<
|
||||||
|
vim.dict([arg]) Returns an empty dictionary or, if "arg" is a
|
||||||
|
Lua table, returns a dict d such that d[k] =
|
||||||
|
arg[k] for all string keys k in "arg" (see
|
||||||
|
|Dictionary|). Number keys are converted to
|
||||||
|
strings. Keys that are not strings are not
|
||||||
|
used to initialize the dictionary. See also
|
||||||
|
|lua-eval| for conversion rules. Example: >
|
||||||
|
:lua t = {math.pi, false, say = 'hi'}
|
||||||
|
:echo luaeval('vim.dict(t)')
|
||||||
|
:" {'say': 'hi'}, numeric keys ignored
|
||||||
|
<
|
||||||
|
vim.funcref({name}) Returns a Funcref to function {name} (see
|
||||||
|
|Funcref|). It is equivalent to Vim's
|
||||||
|
"function".
|
||||||
|
|
||||||
vim.buffer([arg]) If "arg" is a number, returns buffer with
|
vim.buffer([arg]) If "arg" is a number, returns buffer with
|
||||||
number "arg" in the buffer list or, if "arg"
|
number "arg" in the buffer list or, if "arg"
|
||||||
@@ -131,9 +154,9 @@ Vim evaluation and command execution, and others.
|
|||||||
|
|
||||||
vim.type({arg}) Returns the type of {arg}. It is equivalent to
|
vim.type({arg}) Returns the type of {arg}. It is equivalent to
|
||||||
Lua's "type" function, but returns "list",
|
Lua's "type" function, but returns "list",
|
||||||
"dict", "buffer", or "window" if {arg} is a
|
"dict", "funcref", "buffer", or "window" if
|
||||||
list, dictionary, buffer, or window,
|
{arg} is a list, dictionary, funcref, buffer,
|
||||||
respectively. Examples: >
|
or window, respectively. Examples: >
|
||||||
:lua l = vim.list()
|
:lua l = vim.list()
|
||||||
:lua print(type(l), vim.type(l))
|
:lua print(type(l), vim.type(l))
|
||||||
:" userdata list
|
:" userdata list
|
||||||
@@ -229,7 +252,40 @@ Examples:
|
|||||||
<
|
<
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
5. Buffer userdata *lua-buffer*
|
5. Funcref userdata *lua-funcref*
|
||||||
|
|
||||||
|
Funcref userdata represent funcref variables in Vim. Funcrefs that were
|
||||||
|
defined with a "dict" attribute need to be obtained as a dictionary key
|
||||||
|
in order to have "self" properly assigned to the dictionary (see examples
|
||||||
|
below.) A funcref "f" has the following properties:
|
||||||
|
|
||||||
|
Properties
|
||||||
|
----------
|
||||||
|
o "#f" is the name of the function referenced by "f"
|
||||||
|
o "f(...)" calls the function referenced by "f" (with arguments)
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
>
|
||||||
|
:function I(x)
|
||||||
|
: return a:x
|
||||||
|
: endfunction
|
||||||
|
:let R = function('I')
|
||||||
|
:lua i1 = vim.funcref('I')
|
||||||
|
:lua i2 = vim.eval('R')
|
||||||
|
:lua print(#i1, #i2) -- both 'I'
|
||||||
|
:lua print(i1, i2, #i2(i1) == #i1(i2))
|
||||||
|
:function Mylen() dict
|
||||||
|
: return len(self.data)
|
||||||
|
: endfunction
|
||||||
|
:let mydict = {'data': [0, 1, 2, 3]}
|
||||||
|
:lua d = vim.eval('mydict'); d.len = vim.funcref('Mylen')
|
||||||
|
:echo mydict.len()
|
||||||
|
:lua l = d.len -- assign d as 'self'
|
||||||
|
:lua print(l())
|
||||||
|
<
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
6. Buffer userdata *lua-buffer*
|
||||||
|
|
||||||
Buffer userdata represent vim buffers. A buffer userdata "b" has the following
|
Buffer userdata represent vim buffers. A buffer userdata "b" has the following
|
||||||
properties and methods:
|
properties and methods:
|
||||||
@@ -281,7 +337,7 @@ Examples:
|
|||||||
<
|
<
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
6. Window userdata *lua-window*
|
7. Window userdata *lua-window*
|
||||||
|
|
||||||
Window objects represent vim windows. A window userdata "w" has the following
|
Window objects represent vim windows. A window userdata "w" has the following
|
||||||
properties and methods:
|
properties and methods:
|
||||||
@@ -313,7 +369,7 @@ Examples:
|
|||||||
<
|
<
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
7. The luaeval function *lua-luaeval* *lua-eval*
|
8. The luaeval function *lua-luaeval* *lua-eval*
|
||||||
|
|
||||||
The (dual) equivalent of "vim.eval" for passing Lua values to Vim is
|
The (dual) equivalent of "vim.eval" for passing Lua values to Vim is
|
||||||
"luaeval". "luaeval" takes an expression string and an optional argument and
|
"luaeval". "luaeval" takes an expression string and an optional argument and
|
||||||
@@ -325,7 +381,13 @@ returns the result of the expression. It is semantically equivalent in Lua to:
|
|||||||
return chunk(arg) -- return typval
|
return chunk(arg) -- return typval
|
||||||
end
|
end
|
||||||
<
|
<
|
||||||
Note that "_A" receives the argument to "luaeval". Examples: >
|
Note that "_A" receives the argument to "luaeval". Lua numbers, strings, and
|
||||||
|
list, dict, and funcref userdata are converted to their Vim respective types,
|
||||||
|
while Lua booleans are converted to numbers. An error is thrown if conversion
|
||||||
|
of any of the remaining Lua types, including userdata other than lists, dicts,
|
||||||
|
and funcrefs, is attempted.
|
||||||
|
|
||||||
|
Examples: >
|
||||||
|
|
||||||
:echo luaeval('math.pi')
|
:echo luaeval('math.pi')
|
||||||
:lua a = vim.list():add('newlist')
|
:lua a = vim.list():add('newlist')
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
*indent.txt* For Vim version 7.3. Last change: 2013 Jun 12
|
*indent.txt* For Vim version 7.3. Last change: 2013 Jun 13
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -745,7 +745,7 @@ You can set the indent for the first line after <script> and <style>
|
|||||||
"inc" auto indent + one indent step
|
"inc" auto indent + one indent step
|
||||||
|
|
||||||
Many tags increase the indent for what follows per default (see "Add Indent
|
Many tags increase the indent for what follows per default (see "Add Indent
|
||||||
Tags" below in this script). You can add further tags with: >
|
Tags" in the script). You can add further tags with: >
|
||||||
|
|
||||||
:let g:html_indent_inctags = "html,body,head,tbody"
|
:let g:html_indent_inctags = "html,body,head,tbody"
|
||||||
|
|
||||||
@@ -757,7 +757,7 @@ Default value is empty for both variables. Note: the initial "inctags" are
|
|||||||
only defined once per Vim session.
|
only defined once per Vim session.
|
||||||
|
|
||||||
User variables are only read when the script is sourced. To enable your
|
User variables are only read when the script is sourced. To enable your
|
||||||
changes during a session, without reloaind the html file, you can manually
|
changes during a session, without reloading the HTML file, you can manually
|
||||||
do: >
|
do: >
|
||||||
|
|
||||||
:call HtmlIndent_CheckUserSettings()
|
:call HtmlIndent_CheckUserSettings()
|
||||||
@@ -765,11 +765,11 @@ do: >
|
|||||||
Detail:
|
Detail:
|
||||||
Calculation of indent inside "blocktags" with "alien" content:
|
Calculation of indent inside "blocktags" with "alien" content:
|
||||||
BLOCKTAG INDENT EXPR WHEN APPLICABLE ~
|
BLOCKTAG INDENT EXPR WHEN APPLICABLE ~
|
||||||
<script> : {customizable} if first line of block
|
<script> : {customizable} if first line of block
|
||||||
: cindent(v:lnum) if attributes empty or contain "java"
|
: cindent(v:lnum) if attributes empty or contain "java"
|
||||||
: -1 else (vbscript, tcl, ...)
|
: -1 else (vbscript, tcl, ...)
|
||||||
<style> : {customizable} if first line of block
|
<style> : {customizable} if first line of block
|
||||||
: GetCSSIndent() else
|
: GetCSSIndent() else
|
||||||
<!-- --> : -1
|
<!-- --> : -1
|
||||||
|
|
||||||
|
|
||||||
|
@@ -6674,6 +6674,7 @@ lua-buffer if_lua.txt /*lua-buffer*
|
|||||||
lua-commands if_lua.txt /*lua-commands*
|
lua-commands if_lua.txt /*lua-commands*
|
||||||
lua-dict if_lua.txt /*lua-dict*
|
lua-dict if_lua.txt /*lua-dict*
|
||||||
lua-eval if_lua.txt /*lua-eval*
|
lua-eval if_lua.txt /*lua-eval*
|
||||||
|
lua-funcref if_lua.txt /*lua-funcref*
|
||||||
lua-list if_lua.txt /*lua-list*
|
lua-list if_lua.txt /*lua-list*
|
||||||
lua-luaeval if_lua.txt /*lua-luaeval*
|
lua-luaeval if_lua.txt /*lua-luaeval*
|
||||||
lua-vim if_lua.txt /*lua-vim*
|
lua-vim if_lua.txt /*lua-vim*
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
*todo.txt* For Vim version 7.3. Last change: 2013 Jun 12
|
*todo.txt* For Vim version 7.3. Last change: 2013 Jun 15
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -36,9 +36,6 @@ not be repeated below, unless there is extra information.
|
|||||||
|
|
||||||
--- Python interface
|
--- Python interface
|
||||||
|
|
||||||
Test 87 fails.
|
|
||||||
Test 86 fails on some systems.
|
|
||||||
|
|
||||||
Python: ":py raw_input('prompt')" doesn't work. (Manu Hack)
|
Python: ":py raw_input('prompt')" doesn't work. (Manu Hack)
|
||||||
|
|
||||||
Win32: The Python interface only works with one version of Python, selected at
|
Win32: The Python interface only works with one version of Python, selected at
|
||||||
@@ -54,30 +51,6 @@ Does not work, tests fail.
|
|||||||
|
|
||||||
--- bug fixes
|
--- bug fixes
|
||||||
|
|
||||||
:wviminfo does not write old history entries. (Roland Eggner, 2013 Jun 5)
|
|
||||||
Another message Jun 6.
|
|
||||||
|
|
||||||
Patch to avoid wrong error message for 1.0[0]. (Yasuhiro Matsumoto, 2013 May
|
|
||||||
1)
|
|
||||||
|
|
||||||
Patch for if_lua. (Luis Carvalho, 2012 Aug 26, update Aug 29, another Aug 30,
|
|
||||||
then Sep 1, reminder Oct 14)
|
|
||||||
|
|
||||||
Patch for if_perl. (Ike Devolder, May 27)
|
|
||||||
|
|
||||||
Patch to check if 'foldexpr' sets did_emsg. (Christian Brabandt, 2013 Mar 20)
|
|
||||||
|
|
||||||
Patch for 'backupcopy' default behavior for symlinks on Windows. (David Pope,
|
|
||||||
2012 Mar 21, update Mar 31)
|
|
||||||
With fix for memory leak: Ken Takata, 2012 Aug 24
|
|
||||||
Another update Sep 24.
|
|
||||||
Also patch from Joerg Bornemann, 2013 Apr 30.
|
|
||||||
|
|
||||||
Undo problem: line not removed as expected when using setline() from Insert
|
|
||||||
mode. (Israel Chauca, 2010 May 13, more in second msg)
|
|
||||||
Break undo when CTRL-R = changes the text? Or save more lines?
|
|
||||||
Patch by Christian Brabandt, 2012 Nov 16.
|
|
||||||
|
|
||||||
Do allow real tags above the !_TAG entries. Undo older patch. Issue 90.
|
Do allow real tags above the !_TAG entries. Undo older patch. Issue 90.
|
||||||
|
|
||||||
Matches might be highlighted correctly. Inefficient patch by Christian
|
Matches might be highlighted correctly. Inefficient patch by Christian
|
||||||
|
@@ -3,8 +3,8 @@
|
|||||||
" File: html.vim (Vimscript #2075)
|
" File: html.vim (Vimscript #2075)
|
||||||
" Author: Andy Wokula <anwoku@yahoo.de>
|
" Author: Andy Wokula <anwoku@yahoo.de>
|
||||||
" Last Change: 2013 Jun 12
|
" Last Change: 2013 Jun 12
|
||||||
" Rev Days: 9
|
" Rev Days: 13
|
||||||
" Version: 0.8
|
" Version: 0.9
|
||||||
" Vim Version: Vim7
|
" Vim Version: Vim7
|
||||||
" Description:
|
" Description:
|
||||||
" Improved version of the distributed html indent script, faster on a
|
" Improved version of the distributed html indent script, faster on a
|
||||||
@@ -15,7 +15,10 @@
|
|||||||
" indent/css.vim (2006 Dec 20) from N. Weibull
|
" indent/css.vim (2006 Dec 20) from N. Weibull
|
||||||
"
|
"
|
||||||
" History:
|
" History:
|
||||||
" 2011 Sep 09 added HTML5 tags (thx to J. Zuckerman)
|
" 2012 Oct 21 (v0.9) added support for shiftwidth()
|
||||||
|
" 2011 Sep 09 (v0.8) added HTML5 tags (thx to J. Zuckerman)
|
||||||
|
" 2008 Apr 28 (v0.6) revised customization
|
||||||
|
" 2008 Mar 09 (v0.5) fixed 'indk' issue (thx to C.J. Robinson)
|
||||||
" }}}
|
" }}}
|
||||||
|
|
||||||
" Init Folklore, check user settings (2nd time ++) "{{{
|
" Init Folklore, check user settings (2nd time ++) "{{{
|
||||||
@@ -36,6 +39,15 @@ if exists("*HtmlIndent")
|
|||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
" Patch 7.3.694
|
||||||
|
if exists('*shiftwidth')
|
||||||
|
let s:ShiftWidth = function('shiftwidth')
|
||||||
|
else
|
||||||
|
func! s:ShiftWidth()
|
||||||
|
return &shiftwidth
|
||||||
|
endfunc
|
||||||
|
endif
|
||||||
|
|
||||||
let s:cpo_save = &cpo
|
let s:cpo_save = &cpo
|
||||||
set cpo-=C
|
set cpo-=C
|
||||||
"}}}
|
"}}}
|
||||||
@@ -50,7 +62,7 @@ func! HtmlIndent_CheckUserSettings() "{{{
|
|||||||
|
|
||||||
let indone = {"zero": 0
|
let indone = {"zero": 0
|
||||||
\,"auto": "indent(prevnonblank(v:lnum-1))"
|
\,"auto": "indent(prevnonblank(v:lnum-1))"
|
||||||
\,"inc": "b:indent.blocktagind + &shiftwidth"}
|
\,"inc": "b:indent.blocktagind + s:ShiftWidth()"}
|
||||||
if exists("g:html_indent_script1")
|
if exists("g:html_indent_script1")
|
||||||
let s:js1indent = get(indone, g:html_indent_script1, indone.zero)
|
let s:js1indent = get(indone, g:html_indent_script1, indone.zero)
|
||||||
endif
|
endif
|
||||||
@@ -196,7 +208,7 @@ func! s:Blocktag(blocktag, ind) "{{{
|
|||||||
endif
|
endif
|
||||||
let s:newstate.blocklnr = v:lnum
|
let s:newstate.blocklnr = v:lnum
|
||||||
" save allover indent for the endtag
|
" save allover indent for the endtag
|
||||||
let s:newstate.blocktagind = b:indent.baseindent + (s:nextrel + s:curind) * &shiftwidth
|
let s:newstate.blocktagind = b:indent.baseindent + (s:nextrel + s:curind) * s:ShiftWidth()
|
||||||
if a:ind == 3
|
if a:ind == 3
|
||||||
return "SCRIPT" " all except this must be lowercase
|
return "SCRIPT" " all except this must be lowercase
|
||||||
" line is to be checked again for the type attribute
|
" line is to be checked again for the type attribute
|
||||||
@@ -277,7 +289,7 @@ func! s:FreshState(lnum) "{{{
|
|||||||
" check preceding tags in the line:
|
" check preceding tags in the line:
|
||||||
let s:altline = tagline[: stopcol-2]
|
let s:altline = tagline[: stopcol-2]
|
||||||
call s:CountITags(1)
|
call s:CountITags(1)
|
||||||
let state.blocktagind = indent(stopline) + (s:curind + s:nextrel) * &shiftwidth
|
let state.blocktagind = indent(stopline) + (s:curind + s:nextrel) * s:ShiftWidth()
|
||||||
return state
|
return state
|
||||||
elseif stopline == state.lnum
|
elseif stopline == state.lnum
|
||||||
" handle special case: previous line (= state.lnum) contains a
|
" handle special case: previous line (= state.lnum) contains a
|
||||||
@@ -288,7 +300,7 @@ func! s:FreshState(lnum) "{{{
|
|||||||
let [bline, bcol] = searchpos('<'.blocktag[1:].'\>', "bW")
|
let [bline, bcol] = searchpos('<'.blocktag[1:].'\>', "bW")
|
||||||
let s:altline = tolower(getline(bline)[: bcol-2])
|
let s:altline = tolower(getline(bline)[: bcol-2])
|
||||||
call s:CountITags(1)
|
call s:CountITags(1)
|
||||||
let state.baseindent = indent(bline) + (s:nextrel+s:curline) * &shiftwidth
|
let state.baseindent = indent(bline) + (s:nextrel+s:curline) * s:ShiftWidth()
|
||||||
return state
|
return state
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
@@ -303,7 +315,7 @@ func! s:FreshState(lnum) "{{{
|
|||||||
" check preceding tags in the line:
|
" check preceding tags in the line:
|
||||||
let s:altline = tolower(getline(comline)[: comcol-2])
|
let s:altline = tolower(getline(comline)[: comcol-2])
|
||||||
call s:CountITags(1)
|
call s:CountITags(1)
|
||||||
let state.blocktagind = indent(comline) + (s:curind + s:nextrel) * &shiftwidth
|
let state.blocktagind = indent(comline) + (s:curind + s:nextrel) * s:ShiftWidth()
|
||||||
return state
|
return state
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -320,18 +332,18 @@ func! s:FreshState(lnum) "{{{
|
|||||||
let s:altline = tolower(getline(comline)[: comcol-2])
|
let s:altline = tolower(getline(comline)[: comcol-2])
|
||||||
endif
|
endif
|
||||||
call s:CountITags(1)
|
call s:CountITags(1)
|
||||||
let state.baseindent = indent(comline) + (s:nextrel+s:curline) * &shiftwidth
|
let state.baseindent = indent(comline) + (s:nextrel+s:curline) * s:ShiftWidth()
|
||||||
return state
|
return state
|
||||||
" TODO check tags that follow "-->"
|
" TODO check tags that follow "-->"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" else no comments
|
" else no comments
|
||||||
call s:CountITags(1)
|
call s:CountITags(1)
|
||||||
let state.baseindent = indent(state.lnum) + s:nextrel * &shiftwidth
|
let state.baseindent = indent(state.lnum) + s:nextrel * s:ShiftWidth()
|
||||||
" line starts with end tag
|
" line starts with end tag
|
||||||
let swendtag = match(s:altline, '^\s*</') >= 0
|
let swendtag = match(s:altline, '^\s*</') >= 0
|
||||||
if !swendtag
|
if !swendtag
|
||||||
let state.baseindent += s:curind * &shiftwidth
|
let state.baseindent += s:curind * s:ShiftWidth()
|
||||||
endif
|
endif
|
||||||
return state
|
return state
|
||||||
endfunc "}}}
|
endfunc "}}}
|
||||||
@@ -373,10 +385,10 @@ func! s:CSSIndent() "{{{
|
|||||||
" indent for first content line after comments
|
" indent for first content line after comments
|
||||||
return eval(s:css1indent)
|
return eval(s:css1indent)
|
||||||
endif
|
endif
|
||||||
let ind = indent(pnum) + s:css_countbraces(pnum, 1) * &sw
|
let ind = indent(pnum) + s:css_countbraces(pnum, 1) * s:ShiftWidth()
|
||||||
let pline = getline(pnum)
|
let pline = getline(pnum)
|
||||||
if pline =~ '}\s*$'
|
if pline =~ '}\s*$'
|
||||||
let ind -= (s:css_countbraces(pnum, 0) - (pline =~ '^\s*}')) * &sw
|
let ind -= (s:css_countbraces(pnum, 0) - (pline =~ '^\s*}')) * s:ShiftWidth()
|
||||||
endif
|
endif
|
||||||
return ind
|
return ind
|
||||||
endfunc "}}}
|
endfunc "}}}
|
||||||
@@ -421,11 +433,12 @@ endfunc "}}}
|
|||||||
|
|
||||||
func! HtmlIndent() "{{{
|
func! HtmlIndent() "{{{
|
||||||
let s:curline = tolower(getline(v:lnum))
|
let s:curline = tolower(getline(v:lnum))
|
||||||
|
let indentunit = s:ShiftWidth()
|
||||||
|
|
||||||
let s:newstate = {}
|
let s:newstate = {}
|
||||||
let s:newstate.lnum = v:lnum
|
let s:newstate.lnum = v:lnum
|
||||||
|
|
||||||
" is the first non-blank in the line the start of a tag?
|
" does the line start with a closing tag?
|
||||||
let swendtag = match(s:curline, '^\s*</') >= 0
|
let swendtag = match(s:curline, '^\s*</') >= 0
|
||||||
|
|
||||||
if prevnonblank(v:lnum-1) == b:indent.lnum && s:usestate
|
if prevnonblank(v:lnum-1) == b:indent.lnum && s:usestate
|
||||||
@@ -446,11 +459,11 @@ func! HtmlIndent() "{{{
|
|||||||
let s:curline = strpart(s:curline, blockend+strlen(endtag))
|
let s:curline = strpart(s:curline, blockend+strlen(endtag))
|
||||||
call s:CountITags()
|
call s:CountITags()
|
||||||
if swendtag && b:indent.block != 5
|
if swendtag && b:indent.block != 5
|
||||||
let indent = b:indent.blocktagind + s:curind * &shiftwidth
|
let indent = b:indent.blocktagind + s:curind * indentunit
|
||||||
let s:newstate.baseindent = indent + s:nextrel * &shiftwidth
|
let s:newstate.baseindent = indent + s:nextrel * indentunit
|
||||||
else
|
else
|
||||||
let indent = s:Alien{b:indent.block}()
|
let indent = s:Alien{b:indent.block}()
|
||||||
let s:newstate.baseindent = b:indent.blocktagind + s:nextrel * &shiftwidth
|
let s:newstate.baseindent = b:indent.blocktagind + s:nextrel * indentunit
|
||||||
endif
|
endif
|
||||||
call extend(b:indent, s:newstate, "force")
|
call extend(b:indent, s:newstate, "force")
|
||||||
return indent
|
return indent
|
||||||
@@ -467,11 +480,11 @@ func! HtmlIndent() "{{{
|
|||||||
let s:newstate.block = b:indent.block
|
let s:newstate.block = b:indent.block
|
||||||
call s:CountITags()
|
call s:CountITags()
|
||||||
if swendtag
|
if swendtag
|
||||||
let indent = b:indent.baseindent + s:curind * &shiftwidth
|
let indent = b:indent.baseindent + s:curind * indentunit
|
||||||
let s:newstate.baseindent = indent + s:nextrel * &shiftwidth
|
let s:newstate.baseindent = indent + s:nextrel * indentunit
|
||||||
else
|
else
|
||||||
let indent = b:indent.baseindent
|
let indent = b:indent.baseindent
|
||||||
let s:newstate.baseindent = indent + (s:curind + s:nextrel) * &shiftwidth
|
let s:newstate.baseindent = indent + (s:curind + s:nextrel) * indentunit
|
||||||
endif
|
endif
|
||||||
call extend(b:indent, s:newstate, "force")
|
call extend(b:indent, s:newstate, "force")
|
||||||
return indent
|
return indent
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
" Language: SAP - ABAP/R4
|
" Language: SAP - ABAP/R4
|
||||||
" Revision: 2.1
|
" Revision: 2.1
|
||||||
" Maintainer: Marius Piedallu van Wyk <lailoken@gmail.com>
|
" Maintainer: Marius Piedallu van Wyk <lailoken@gmail.com>
|
||||||
" Last Change: 2012 Oct 23
|
" Last Change: 2013 Jun 13
|
||||||
" Comment: Thanks to EPI-USE Labs for all your assistance. :)
|
" Comment: Thanks to EPI-USE Labs for all your assistance. :)
|
||||||
|
|
||||||
" For version < 6.0: Clear all syntax items
|
" For version < 6.0: Clear all syntax items
|
||||||
@@ -140,7 +140,7 @@ syn keyword abapStatement CHANGING EXCEPTION EXCEPTIONS DEFAULT CHECKBOX COMMENT
|
|||||||
syn keyword abapStatement ID NUMBER FOR TITLE OUTPUT
|
syn keyword abapStatement ID NUMBER FOR TITLE OUTPUT
|
||||||
|
|
||||||
" Special ABAP specific tables:
|
" Special ABAP specific tables:
|
||||||
syn match abapSpecialTables "\<\(sy\|\(p\|pa\)\d\d\d\d\|t\d\d\d.\|innnn\)-"me=e-1 contained
|
syn match abapSpecialTables "\<\(sy\|\(hrp\|p\|pa\)\d\d\d\d\|t\d\d\d.\|innnn\)-"me=e-1 contained
|
||||||
syn match abapStructure "\<\w\+-[^\>]"me=e-2 contains=abapSpecialTables,abapStatement,abapComplexStatement
|
syn match abapStructure "\<\w\+-[^\>]"me=e-2 contains=abapSpecialTables,abapStatement,abapComplexStatement
|
||||||
syn match abapField "-\w\+"ms=s+1
|
syn match abapField "-\w\+"ms=s+1
|
||||||
|
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
" Vim syntax file
|
" Vim syntax file
|
||||||
" Language: Objective-C
|
" Language: Objective-C
|
||||||
" Maintainer: Kazunobu Kuriyama <kazunobu.kuriyama@nifty.com>
|
" Maintainer: Kazunobu Kuriyama <kazunobu.kuriyama@nifty.com>
|
||||||
" Last Change: 2013 Jun 12
|
" Last Change: 2013 Jun 13
|
||||||
" Remark: Modern Objective-C Edition
|
" Remark: Modern Objective-C Edition
|
||||||
|
|
||||||
""" Preparation for loading ObjC stuff
|
""" Preparation for loading ObjC stuff
|
||||||
@@ -20,7 +20,7 @@ set cpo&vim
|
|||||||
syn keyword objcPreProcMacro __OBJC__ __OBJC2__ __clang__
|
syn keyword objcPreProcMacro __OBJC__ __OBJC2__ __clang__
|
||||||
|
|
||||||
" Defined Types
|
" Defined Types
|
||||||
syn keyword objcPrincipalType id Class SEL IMP BOOL
|
syn keyword objcPrincipalType id Class SEL IMP BOOL instancetype
|
||||||
syn keyword objcUsefulTerm nil Nil NO YES
|
syn keyword objcUsefulTerm nil Nil NO YES
|
||||||
|
|
||||||
" Preprocessor Directives
|
" Preprocessor Directives
|
||||||
@@ -37,6 +37,7 @@ syn match objcInternalRep display /@selector\>\|@encode\>/
|
|||||||
syn match objcException display /@try\>\|@throw\>\|@catch\|@finally\>/
|
syn match objcException display /@try\>\|@throw\>\|@catch\|@finally\>/
|
||||||
syn match objcThread display /@synchronized\>/
|
syn match objcThread display /@synchronized\>/
|
||||||
syn match objcPool display /@autoreleasepool\>/
|
syn match objcPool display /@autoreleasepool\>/
|
||||||
|
syn match objcModuleImport display /@import\>/
|
||||||
|
|
||||||
" ObjC Constant Strings
|
" ObjC Constant Strings
|
||||||
syn match objcSpecial display contained "%@"
|
syn match objcSpecial display contained "%@"
|
||||||
@@ -84,7 +85,7 @@ syn match objcProtocolList display /<\h\w*\(\s*,\s*\h\w*\)*>/ contains=objcPrinc
|
|||||||
|
|
||||||
" shorthand
|
" shorthand
|
||||||
syn cluster objcCEntities contains=cType,cStructure,cStorageClass,cString,cCharacter,cSpecialCharacter,cNumbers,cConstant,cOperator,cComment,cCommentL,cStatement,cLabel,cConditional,cRepeat
|
syn cluster objcCEntities contains=cType,cStructure,cStorageClass,cString,cCharacter,cSpecialCharacter,cNumbers,cConstant,cOperator,cComment,cCommentL,cStatement,cLabel,cConditional,cRepeat
|
||||||
syn cluster objcObjCEntities contains=objcHiddenArgument,objcPrincipalType,objcString,objcUsefulTerm,objcProtocol,objcInternalRep,objcException,objcThread,objcPool,@objcTypeQualifier,objcLiteralSyntaxNumber,objcLiteralSyntaxOp,objcLiteralSyntaxChar,objcLiteralSyntaxSpecialChar,objcProtocolList,objcColon,objcFastEnumKeyword,objcType,objcClass,objcMacro,objcEnum,objcEnumValue,objcExceptionValue,objcNotificationValue,objcConstVar,objcPreProcMacro
|
syn cluster objcObjCEntities contains=objcHiddenArgument,objcPrincipalType,objcString,objcUsefulTerm,objcProtocol,objcInternalRep,objcException,objcThread,objcPool,objcModuleImport,@objcTypeQualifier,objcLiteralSyntaxNumber,objcLiteralSyntaxOp,objcLiteralSyntaxChar,objcLiteralSyntaxSpecialChar,objcProtocolList,objcColon,objcFastEnumKeyword,objcType,objcClass,objcMacro,objcEnum,objcEnumValue,objcExceptionValue,objcNotificationValue,objcConstVar,objcPreProcMacro
|
||||||
|
|
||||||
" Objective-C Message Expressions
|
" Objective-C Message Expressions
|
||||||
syn region objcMethodCall start=/\[/ end=/\]/ contains=objcMethodCall,objcBlocks,@objcObjCEntities,@objcCEntities
|
syn region objcMethodCall start=/\[/ end=/\]/ contains=objcMethodCall,objcBlocks,@objcObjCEntities,@objcCEntities
|
||||||
@@ -399,6 +400,7 @@ hi def link objcInternalRep cOperator
|
|||||||
hi def link objcException cOperator
|
hi def link objcException cOperator
|
||||||
hi def link objcThread cOperator
|
hi def link objcThread cOperator
|
||||||
hi def link objcPool cOperator
|
hi def link objcPool cOperator
|
||||||
|
hi def link objcModuleImport cOperator
|
||||||
hi def link objcSpecial cSpecial
|
hi def link objcSpecial cSpecial
|
||||||
hi def link objcString cString
|
hi def link objcString cString
|
||||||
hi def link objcHiddenArgument cStatement
|
hi def link objcHiddenArgument cStatement
|
||||||
|
Reference in New Issue
Block a user