Mercurial > vim
changeset 27187:8950a7b6cc89 v8.2.4122
patch 8.2.4122: ":command Cmd" does not show custom completion argument
Commit: https://github.com/vim/vim/commit/3f3597be3ffa9ae226b2e9831e4ed64c8ae43c42
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Jan 17 19:06:56 2022 +0000
patch 8.2.4122: ":command Cmd" does not show custom completion argument
Problem: ":command Cmd" does not show custom completion argument.
Solution: Show the completion argument when using ":verbose".
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 17 Jan 2022 20:15:03 +0100 |
parents | 0ef7a05715d3 |
children | f06a8d622851 |
files | src/testdir/test_usercommands.vim src/usercmd.c src/version.c |
diffstat | 3 files changed, 11 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/testdir/test_usercommands.vim +++ b/src/testdir/test_usercommands.vim @@ -589,10 +589,10 @@ func Test_command_list() \ execute('command DoCmd')) " Test output in verbose mode. - command! DoCmd : + command! -nargs=+ -complete=customlist,SomeFunc DoCmd :ls call assert_match("^\n" \ .. " Name Args Address Complete Definition\n" - \ .. " DoCmd 0 :\n" + \ .. " DoCmd + customlist,SomeFunc :ls\n" \ .. "\tLast set from .*/test_usercommands.vim line \\d\\+$", \ execute('verbose command DoCmd'))
--- a/src/usercmd.c +++ b/src/usercmd.c @@ -548,6 +548,13 @@ uc_list(char_u *name, size_t name_len) { STRCPY(IObuff + len, command_complete[j].name); len += (int)STRLEN(IObuff + len); + if (p_verbose > 0 && cmd->uc_compl_arg != NULL + && STRLEN(cmd->uc_compl_arg) < 200) + { + IObuff[len] = ','; + STRCPY(IObuff + len + 1, cmd->uc_compl_arg); + len += (int)STRLEN(IObuff + len); + } break; }