diff options
author | Bram Moolenaar <Bram@vim.org> | 2021-07-07 20:26:08 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2021-07-07 20:26:08 +0200 |
commit | 90df4b9d423485f7db16e3a65cab4f14edc815ae (patch) | |
tree | 1477a8fa59c5061882816599bd38960c84e42eb9 /runtime/doc/eval.txt | |
parent | 303215d60cece0462f040035502b5bc95373bd6e (diff) | |
download | vim-git-90df4b9d423485f7db16e3a65cab4f14edc815ae.tar.gz |
Update runtime files
Diffstat (limited to 'runtime/doc/eval.txt')
-rw-r--r-- | runtime/doc/eval.txt | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index 401f055f7..e5f9b4651 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 8.2. Last change: 2021 Jun 23 +*eval.txt* For Vim version 8.2. Last change: 2021 Jul 01 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1588,7 +1588,17 @@ The lambda expression is also useful for Channel, Job and timer: > Handler called Handler called -Note how execute() is used to execute an Ex command. That's ugly though. +Note that it is possible to cause memory to be used and not freed if the +closure is referenced by the context it depends on: > + function Function() + let x = 0 + let F = {-> x} + endfunction +The closure uses "x" from the function scope, and "F" in that same scope +refers to the closure. This cycle results in the memory not being freed. +Recommendation: don't do this. + +Notice how execute() is used to execute an Ex command. That's ugly though. In Vim9 script you can use a command block, see |inline-function|. Lambda expressions have internal names like '<lambda>42'. If you get an error @@ -1963,7 +1973,8 @@ v:fcs_choice What should happen after a |FileChangedShell| event was Vim behaves like it is empty, there is no warning message. *v:fname* *fname-variable* -v:fname The file name set by 'includeexpr'. Empty otherwise. +v:fname When evaluating 'includeexpr': the file name that was + detected. Empty otherwise. *v:fname_in* *fname_in-variable* v:fname_in The name of the input file. Valid while evaluating: @@ -5803,7 +5814,7 @@ getmousepos() *getmousepos()* are zero. When the position is after the text then "column" is the - length of the text in bytes. + length of the text in bytes plus one. If the mouse is over a popup window then that window is used. @@ -8921,6 +8932,10 @@ screenpos({winid}, {lnum}, {col}) *screenpos()* The "curscol" value is where the cursor would be placed. For a Tab it would be the same as "endcol", while for a double width character it would be the same as "col". + The |conceal| feature is ignored here, the column numbers are + as if 'conceallevel' is zero. You can set the cursor to the + right position and use |screencol()| to get the value with + |conceal| taken into account. Can also be used as a |method|: > GetWinid()->screenpos(lnum, col) @@ -11892,6 +11907,7 @@ diff Compiled with |vimdiff| and 'diff' support. digraphs Compiled with support for digraphs. directx Compiled with support for DirectX and 'renderoptions'. dnd Compiled with support for the "~ register |quote_~|. +drop_file Compiled with |drop_file| support. ebcdic Compiled on a machine with ebcdic character set. emacs_tags Compiled with support for Emacs tags. eval Compiled with expression evaluation support. Always |