aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2023-08-21 17:09:31 +0800
committerzeertzjq <zeertzjq@outlook.com>2023-08-21 17:16:10 +0800
commit0f48173ab531a9012321714bbc29ae4cd57b7ac7 (patch)
tree28bd9ef86d37fd8f7bafea3f3c90b37167e7cbeb /src
parent8cd0ca1ce742a09df0b1b8201aaa13655d922b6c (diff)
downloadrneovim-0f48173ab531a9012321714bbc29ae4cd57b7ac7.tar.gz
rneovim-0f48173ab531a9012321714bbc29ae4cd57b7ac7.tar.bz2
rneovim-0f48173ab531a9012321714bbc29ae4cd57b7ac7.zip
vim-patch:589edb340454
Updte runtime files https://github.com/vim/vim/commit/589edb340454e7f1b19358f129287a636d53d0e1 Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat (limited to 'src')
-rw-r--r--src/nvim/eval.lua33
1 files changed, 18 insertions, 15 deletions
diff --git a/src/nvim/eval.lua b/src/nvim/eval.lua
index e786901c2f..544df33249 100644
--- a/src/nvim/eval.lua
+++ b/src/nvim/eval.lua
@@ -10460,28 +10460,31 @@ M.funcs = {
current state. Mostly useful in callbacks that want to do
work that may not always be safe. Roughly this works like:
- callback uses state() to check if work is safe to do.
- If yes, then do it right away.
- Otherwise add to work queue and add SafeState autocommand.
- - When SafeState is triggered, check with state() if the work
- can be done now, and if yes remove it from the queue and
- execute.
+ Yes: then do it right away.
+ No: add to work queue and add a |SafeState| autocommand.
+ - When SafeState is triggered and executes your autocommand,
+ check with `state()` if the work can be done now, and if yes
+ remove it from the queue and execute.
+ Remove the autocommand if the queue is now empty.
Also see |mode()|.
When {what} is given only characters in this string will be
added. E.g, this checks if the screen has scrolled: >vim
- if state('s') != ''
+ if state('s') == ''
+ " screen has not scrolled
These characters indicate the state, generally indicating that
something is busy:
- m halfway a mapping, :normal command, feedkeys() or
- stuffed command
- o operator pending or waiting for a command argument
- a Insert mode autocomplete active
- x executing an autocommand
- S not triggering SafeState
- c callback invoked, including timer (repeats for
- recursiveness up to "ccc")
- s screen has scrolled for messages
+ m halfway a mapping, :normal command, feedkeys() or
+ stuffed command
+ o operator pending or waiting for a command argument,
+ e.g. after |f|
+ a Insert mode autocomplete active
+ x executing an autocommand
+ S not triggering SafeState
+ c callback invoked, including timer (repeats for
+ recursiveness up to "ccc")
+ s screen has scrolled for messages
]=],
fast = true,
name = 'state',