diff options
Diffstat (limited to 'src/nvim/ex_docmd.c')
-rw-r--r-- | src/nvim/ex_docmd.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/nvim/ex_docmd.c b/src/nvim/ex_docmd.c index 0f345df22b..b880ec4f6d 100644 --- a/src/nvim/ex_docmd.c +++ b/src/nvim/ex_docmd.c @@ -5266,8 +5266,7 @@ static void ex_command(exarg_T *eap) } else if (!ASCII_ISUPPER(*name)) { EMSG(_("E183: User defined commands must start with an uppercase letter")); return; - } else if ((name_len == 1 && *name == 'X') - || (name_len <= 4 && STRNCMP(name, "Next", name_len) == 0)) { + } else if (name_len <= 4 && STRNCMP(name, "Next", name_len) == 0) { EMSG(_("E841: Reserved name, cannot be used for user defined command")); return; } else { @@ -8432,13 +8431,15 @@ static void ex_pedit(exarg_T *eap) { win_T *curwin_save = curwin; + // Open the preview window or popup and make it the current window. g_do_tagpreview = p_pvh; prepare_tagpreview(true); - keep_help_flag = bt_help(curwin_save->w_buffer); + + // Edit the file. do_exedit(eap, NULL); - keep_help_flag = FALSE; + if (curwin != curwin_save && win_valid(curwin_save)) { - /* Return cursor to where we were */ + // Return cursor to where we were validate_cursor(); redraw_later(VALID); win_enter(curwin_save, true); @@ -9181,7 +9182,7 @@ makeopens( // Take care of tab-local working directories if applicable if (tp->tp_localdir) { - if (fputs("if has('nvim') | tcd ", fd) < 0 + if (fputs("if exists(':tcd') == 2 | tcd ", fd) < 0 || ses_put_fname(fd, tp->tp_localdir, &ssop_flags) == FAIL || fputs(" | endif", fd) < 0 || put_eol(fd) == FAIL) { |