diff options
author | bfredl <bjorn.linse@gmail.com> | 2022-11-07 18:00:21 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-07 18:00:21 +0100 |
commit | 059dfda0caef85688c2b555ec8379e86721e50fd (patch) | |
tree | 6d6378048ed53335fb0190f2e625743a5b196ea6 /src | |
parent | 894c59ec1f39fde259d5b6959c35549a0281943d (diff) | |
parent | c022140ec6a66402e405152054b6ab0141940419 (diff) | |
download | rneovim-059dfda0caef85688c2b555ec8379e86721e50fd.tar.gz rneovim-059dfda0caef85688c2b555ec8379e86721e50fd.tar.bz2 rneovim-059dfda0caef85688c2b555ec8379e86721e50fd.zip |
Merge pull request #20991 from famiu/feat/api/nvim_cmd/command-name
feat(api): add command name to Lua command callback opts
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/api/command.c | 1 | ||||
-rw-r--r-- | src/nvim/lua/executor.c | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/src/nvim/api/command.c b/src/nvim/api/command.c index 8cd2c0f8b8..752d3868d5 100644 --- a/src/nvim/api/command.c +++ b/src/nvim/api/command.c @@ -884,6 +884,7 @@ static void build_cmdline_str(char **cmdlinep, exarg_T *eap, CmdParseInfo *cmdin /// @param command Replacement command to execute when this user command is executed. When called /// from Lua, the command can also be a Lua function. The function is called with a /// single table argument that contains the following keys: +/// - name: (string) Command name /// - args: (string) The args passed to the command, if any |<args>| /// - fargs: (table) The args split by unescaped whitespace (when more than one /// argument is allowed), if any |<f-args>| diff --git a/src/nvim/lua/executor.c b/src/nvim/lua/executor.c index 9d63fe55f9..9cb42a81d3 100644 --- a/src/nvim/lua/executor.c +++ b/src/nvim/lua/executor.c @@ -1985,6 +1985,9 @@ int nlua_do_ucmd(ucmd_T *cmd, exarg_T *eap, bool preview) nlua_pushref(lstate, preview ? cmd->uc_preview_luaref : cmd->uc_luaref); lua_newtable(lstate); + lua_pushstring(lstate, cmd->uc_name); + lua_setfield(lstate, -2, "name"); + lua_pushboolean(lstate, eap->forceit == 1); lua_setfield(lstate, -2, "bang"); |