diff options
author | zeertzjq <zeertzjq@outlook.com> | 2023-09-23 07:08:03 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-23 07:08:03 +0800 |
commit | c68c121f50ee0eae7f26ed043689105086572f55 (patch) | |
tree | a474d1a8e2e5b175df1b4b6525609642760ce3d6 /runtime/lua/vim | |
parent | dae6770b761a5e760c6c4d7e618bb13afa961376 (diff) | |
parent | 44f698bb1afccb90fd8835fa7e35bfcebbd6d828 (diff) | |
download | rneovim-c68c121f50ee0eae7f26ed043689105086572f55.tar.gz rneovim-c68c121f50ee0eae7f26ed043689105086572f55.tar.bz2 rneovim-c68c121f50ee0eae7f26ed043689105086572f55.zip |
Merge pull request #25286 from rktjmp/doc-vim-schedule-wrap
docs: add more context to vim.schedule_wrap
Diffstat (limited to 'runtime/lua/vim')
-rw-r--r-- | runtime/lua/vim/_editor.lua | 19 | ||||
-rw-r--r-- | runtime/lua/vim/_meta/builtin.lua | 6 |
2 files changed, 18 insertions, 7 deletions
diff --git a/runtime/lua/vim/_editor.lua b/runtime/lua/vim/_editor.lua index 8322777633..e4a2dadb09 100644 --- a/runtime/lua/vim/_editor.lua +++ b/runtime/lua/vim/_editor.lua @@ -316,18 +316,29 @@ do end end ---- Defers callback `cb` until the Nvim API is safe to call. +--- Returns a function which calls {fn} via |vim.schedule()|. +--- +--- The returned function passes all arguments to {fn}. +--- +--- Example: +--- +--- ```lua +--- function notify_readable(_err, readable) +--- vim.notify("readable? " .. tostring(readable)) +--- end +--- vim.uv.fs_access(vim.fn.stdpath("config"), "R", vim.schedule_wrap(notify_readable)) +--- ``` --- ---@see |lua-loop-callbacks| ---@see |vim.schedule()| ---@see |vim.in_fast_event()| ----@param cb function +---@param fn function ---@return function -function vim.schedule_wrap(cb) +function vim.schedule_wrap(fn) return function(...) local args = vim.F.pack_len(...) vim.schedule(function() - cb(vim.F.unpack_len(args)) + fn(vim.F.unpack_len(args)) end) end end diff --git a/runtime/lua/vim/_meta/builtin.lua b/runtime/lua/vim/_meta/builtin.lua index 0a6dd3e151..92c23f7764 100644 --- a/runtime/lua/vim/_meta/builtin.lua +++ b/runtime/lua/vim/_meta/builtin.lua @@ -194,10 +194,10 @@ function vim.str_utfindex(str, index) end --- @return string|nil Converted string if conversion succeeds, `nil` otherwise. function vim.iconv(str, from, to, opts) end ---- Schedules {callback} to be invoked soon by the main event-loop. Useful +--- Schedules {fn} to be invoked soon by the main event-loop. Useful --- to avoid |textlock| or other temporary restrictions. ---- @param callback fun() -function vim.schedule(callback) end +--- @param fn function +function vim.schedule(fn) end --- Wait for {time} in milliseconds until {callback} returns `true`. --- |