summaryrefslogtreecommitdiff
path: root/runtime/doc
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2013-06-15 21:39:51 +0200
committerBram Moolenaar <Bram@vim.org>2013-06-15 21:39:51 +0200
commit52b91d801aa1af208aeb25f707da823d40671e4a (patch)
tree6b59e56acd017613258a4f91752cc4dde9cadc94 /runtime/doc
parentdf9259abcee07f217e36f85f4fd77d059fb1bbe7 (diff)
downloadvim-git-52b91d801aa1af208aeb25f707da823d40671e4a.tar.gz
Updated runtime files.
Diffstat (limited to 'runtime/doc')
-rw-r--r--runtime/doc/autocmd.txt8
-rw-r--r--runtime/doc/if_lua.txt88
-rw-r--r--runtime/doc/indent.txt16
-rw-r--r--runtime/doc/tags1
-rw-r--r--runtime/doc/todo.txt29
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