forked from aniani/vim
patch 8.2.3149: some plugins have a problem with the error check
Problem: Some plugins have a problem with the error check for using :command with -complete but without -nargs. Solution: In legacy script only give a warning message.
This commit is contained in:
@@ -3613,6 +3613,12 @@ verbose_open(void)
|
||||
*/
|
||||
void
|
||||
give_warning(char_u *message, int hl)
|
||||
{
|
||||
give_warning_with_source(message, hl, FALSE);
|
||||
}
|
||||
|
||||
void
|
||||
give_warning_with_source(char_u *message, int hl, int with_source)
|
||||
{
|
||||
// Don't do this for ":silent".
|
||||
if (msg_silent != 0)
|
||||
@@ -3629,8 +3635,21 @@ give_warning(char_u *message, int hl)
|
||||
keep_msg_attr = HL_ATTR(HLF_W);
|
||||
else
|
||||
keep_msg_attr = 0;
|
||||
if (msg_attr((char *)message, keep_msg_attr) && msg_scrolled == 0)
|
||||
|
||||
if (with_source)
|
||||
{
|
||||
// Do what msg() does, but with a column offset if the warning should
|
||||
// be after the mode message.
|
||||
msg_start();
|
||||
msg_source(HL_ATTR(HLF_W));
|
||||
msg_puts(" ");
|
||||
msg_puts_attr((char *)message, HL_ATTR(HLF_W) | MSG_HIST);
|
||||
msg_clr_eos();
|
||||
(void)msg_end();
|
||||
}
|
||||
else if (msg_attr((char *)message, keep_msg_attr) && msg_scrolled == 0)
|
||||
set_keep_msg(message, keep_msg_attr);
|
||||
|
||||
msg_didout = FALSE; // overwrite this message
|
||||
msg_nowait = TRUE; // don't wait for this message
|
||||
msg_col = 0;
|
||||
|
Reference in New Issue
Block a user