diff options
author | Bram Moolenaar <Bram@vim.org> | 2013-06-15 21:39:51 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2013-06-15 21:39:51 +0200 |
commit | 52b91d801aa1af208aeb25f707da823d40671e4a (patch) | |
tree | 6b59e56acd017613258a4f91752cc4dde9cadc94 /runtime/doc | |
parent | df9259abcee07f217e36f85f4fd77d059fb1bbe7 (diff) | |
download | vim-git-52b91d801aa1af208aeb25f707da823d40671e4a.tar.gz |
Updated runtime files.
Diffstat (limited to 'runtime/doc')
-rw-r--r-- | runtime/doc/autocmd.txt | 8 | ||||
-rw-r--r-- | runtime/doc/if_lua.txt | 88 | ||||
-rw-r--r-- | runtime/doc/indent.txt | 16 | ||||
-rw-r--r-- | runtime/doc/tags | 1 | ||||
-rw-r--r-- | runtime/doc/todo.txt | 29 |
5 files changed, 89 insertions, 53 deletions
diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt index b9d23b359..6acb81414 100644 --- a/runtime/doc/autocmd.txt +++ b/runtime/doc/autocmd.txt @@ -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 @@ -513,9 +513,9 @@ CursorHold When the user doesn't press a key for the time CursorHoldI Just like CursorHold, but in Insert mode. *CursorMoved* -CursorMoved After the cursor was moved in Normal mode. - Also when the text of the cursor line has been - changed, e.g., with "x", "rx" or "p". +CursorMoved After the cursor was moved in Normal or Visual + mode. Also when the text of the cursor line + has been changed, e.g., with "x", "rx" or "p". Not triggered when there is typeahead or when an operator is pending. For an example see |match-parens|. diff --git a/runtime/doc/if_lua.txt b/runtime/doc/if_lua.txt index f6f56048a..56685d0f1 100644 --- a/runtime/doc/if_lua.txt +++ b/runtime/doc/if_lua.txt @@ -10,9 +10,10 @@ The Lua Interface to Vim *lua* *Lua* 2. The vim module |lua-vim| 3. List userdata |lua-list| 4. Dict userdata |lua-dict| -5. Buffer userdata |lua-buffer| -6. Window userdata |lua-window| -7. The luaeval function |lua-luaeval| +5. Funcref userdata |lua-funcref| +6. Buffer userdata |lua-buffer| +7. Window userdata |lua-window| +8. The luaeval function |lua-luaeval| {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, Vim evaluation and command execution, and others. - vim.list() Returns an empty list (see |List|). - - vim.dict() Returns an empty dictionary (see |Dictionary|). + vim.list([arg]) Returns an empty list or, if "arg" is a Lua + table with numeric keys 1, ..., n (a + "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 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 Lua's "type" function, but returns "list", - "dict", "buffer", or "window" if {arg} is a - list, dictionary, buffer, or window, - respectively. Examples: > + "dict", "funcref", "buffer", or "window" if + {arg} is a list, dictionary, funcref, buffer, + or window, respectively. Examples: > :lua l = vim.list() :lua print(type(l), vim.type(l)) :" 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 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 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 "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 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') :lua a = vim.list():add('newlist') diff --git a/runtime/doc/indent.txt b/runtime/doc/indent.txt index 7e89059b1..5bb2459a6 100644 --- a/runtime/doc/indent.txt +++ b/runtime/doc/indent.txt @@ -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 @@ -745,7 +745,7 @@ You can set the indent for the first line after <script> and <style> "inc" auto indent + one indent step 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" @@ -757,7 +757,7 @@ Default value is empty for both variables. Note: the initial "inctags" are only defined once per Vim session. 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: > :call HtmlIndent_CheckUserSettings() @@ -765,11 +765,11 @@ do: > Detail: Calculation of indent inside "blocktags" with "alien" content: BLOCKTAG INDENT EXPR WHEN APPLICABLE ~ - <script> : {customizable} if first line of block - : cindent(v:lnum) if attributes empty or contain "java" - : -1 else (vbscript, tcl, ...) - <style> : {customizable} if first line of block - : GetCSSIndent() else + <script> : {customizable} if first line of block + : cindent(v:lnum) if attributes empty or contain "java" + : -1 else (vbscript, tcl, ...) + <style> : {customizable} if first line of block + : GetCSSIndent() else <!-- --> : -1 diff --git a/runtime/doc/tags b/runtime/doc/tags index f41f74d2c..2ebdf3b0c 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -6674,6 +6674,7 @@ lua-buffer if_lua.txt /*lua-buffer* lua-commands if_lua.txt /*lua-commands* lua-dict if_lua.txt /*lua-dict* lua-eval if_lua.txt /*lua-eval* +lua-funcref if_lua.txt /*lua-funcref* lua-list if_lua.txt /*lua-list* lua-luaeval if_lua.txt /*lua-luaeval* lua-vim if_lua.txt /*lua-vim* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index f5ac22d69..5e3872472 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -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 @@ -36,9 +36,6 @@ not be repeated below, unless there is extra information. --- Python interface -Test 87 fails. -Test 86 fails on some systems. - Python: ":py raw_input('prompt')" doesn't work. (Manu Hack) Win32: The Python interface only works with one version of Python, selected at @@ -54,30 +51,6 @@ Does not work, tests fail. --- 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. Matches might be highlighted correctly. Inefficient patch by Christian |