aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/nvim/api/ui_events.in.h2
-rw-r--r--src/nvim/ex_getln.c6
-rw-r--r--test/functional/ui/cmdline_spec.lua17
3 files changed, 21 insertions, 4 deletions
diff --git a/src/nvim/api/ui_events.in.h b/src/nvim/api/ui_events.in.h
index 5602dc6df3..700d99dc6b 100644
--- a/src/nvim/api/ui_events.in.h
+++ b/src/nvim/api/ui_events.in.h
@@ -67,7 +67,7 @@ void popupmenu_select(Integer selected)
FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
void tabline_update(Tabpage current, Array tabs)
FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
-void cmdline_show(Array content, Integer pos, String firstc, String prompt, Integer level)
+void cmdline_show(Array content, Integer pos, String firstc, String prompt, Integer indent, Integer level)
FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
void cmdline_pos(Integer pos, Integer level)
FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
diff --git a/src/nvim/ex_getln.c b/src/nvim/ex_getln.c
index 548459a8ce..6f941e66ef 100644
--- a/src/nvim/ex_getln.c
+++ b/src/nvim/ex_getln.c
@@ -2726,7 +2726,11 @@ void ui_ext_cmdline_show(void)
ADD(text, STRING_OBJ(cstr_to_string("Normal")));
ADD(text, STRING_OBJ(cstr_to_string((char *)(ccline.cmdbuff))));
ADD(content, ARRAY_OBJ(text));
- ui_call_cmdline_show(content, ccline.cmdpos, cchar_to_string((char)ccline.cmdfirstc), cstr_to_string((char *)(ccline.cmdprompt)), ccline.level);
+ ui_call_cmdline_show(content, ccline.cmdpos,
+ cchar_to_string((char)ccline.cmdfirstc),
+ cstr_to_string((char *)(ccline.cmdprompt)),
+ ccline.cmdindent,
+ ccline.level);
}
/*
diff --git a/test/functional/ui/cmdline_spec.lua b/test/functional/ui/cmdline_spec.lua
index 9e2857bc95..1e30ba1449 100644
--- a/test/functional/ui/cmdline_spec.lua
+++ b/test/functional/ui/cmdline_spec.lua
@@ -7,7 +7,7 @@ if helpers.pending_win32(pending) then return end
describe('External command line completion', function()
local screen
local shown = false
- local firstc, prompt, content, pos, char, shift, level, current_hide_level, in_function
+ local firstc, prompt, content, pos, char, shift, indent, level, current_hide_level, in_function
before_each(function()
clear()
@@ -19,7 +19,7 @@ describe('External command line completion', function()
current_hide_level = data[1]
elseif name == "cmdline_show" then
shown = true
- content, pos, firstc, prompt, level = unpack(data)
+ content, pos, firstc, prompt, indent, level = unpack(data)
elseif name == "cmdline_char" then
char, shift = unpack(data)
elseif name == "cmdline_pos" then
@@ -171,6 +171,7 @@ describe('External command line completion', function()
|
]], nil, nil, function()
eq(true, in_function)
+ eq(2, indent)
end)
feed('line1<cr>')
@@ -182,6 +183,7 @@ describe('External command line completion', function()
|
]], nil, nil, function()
eq(true, in_function)
+ eq(2, indent)
end)
feed('endfunction<cr>')
@@ -195,6 +197,17 @@ describe('External command line completion', function()
eq(false, in_function)
end)
+ feed(':sign<c-f>')
+ screen:expect([[
+ |
+ [No Name] |
+ :sign^ |
+ [Command Line] |
+ |
+ ]], nil, nil, function()
+ eq(false, in_function)
+ end)
+
end)
end)
end)