# HG changeset patch # User Bram Moolenaar # Date 1596820504 -7200 # Node ID 9099eb378758c98c0896f2f2d897f83d8b5da7c3 # Parent c04ddd4aa2456f1a833df520f5efa1e3951af5e2 patch 8.2.1386: backslash not removed afer space with space in 'isfname' Commit: https://github.com/vim/vim/commit/994b89d28dc54c896e00eba66e247addb0540272 Author: Bram Moolenaar Date: Fri Aug 7 19:12:41 2020 +0200 patch 8.2.1386: backslash not removed afer space with space in 'isfname' Problem: Backslash not removed afer space in option with space in 'isfname'. Solution: Do remove backslash before space, also when it is in 'isfname'. (Yasuhiro Matsumoto, closes #6651) diff --git a/src/option.c b/src/option.c --- a/src/option.c +++ b/src/option.c @@ -1311,12 +1311,12 @@ do_set( { if (flags & (P_SECURE | P_NO_ML)) { - errmsg = _("E520: Not allowed in a modeline"); + errmsg = N_("E520: Not allowed in a modeline"); goto skip; } if ((flags & P_MLE) && !p_mle) { - errmsg = _("E992: Not allowed in a modeline when 'modelineexpr' is off"); + errmsg = N_("E992: Not allowed in a modeline when 'modelineexpr' is off"); goto skip; } #ifdef FEAT_DIFF @@ -1338,7 +1338,7 @@ do_set( // Disallow changing some options in the sandbox if (sandbox != 0 && (flags & P_SECURE)) { - errmsg = _(e_sandbox); + errmsg = e_sandbox; goto skip; } #endif @@ -1763,6 +1763,7 @@ do_set( #ifdef BACKSLASH_IN_FILENAME && !((flags & P_EXPAND) && vim_isfilec(arg[1]) + && !VIM_ISWHITE(arg[1]) && (arg[1] != '\\' || (s == newval && arg[2] != '\\'))) diff --git a/src/testdir/test_options.vim b/src/testdir/test_options.vim --- a/src/testdir/test_options.vim +++ b/src/testdir/test_options.vim @@ -973,4 +973,13 @@ func Test_opt_winminwidth() set winwidth& endfunc +" Test for setting option value containing spaces with isfname+=32 +func Test_isfname_with_options() + set isfname+=32 + setlocal keywordprg=:term\ help.exe + call assert_equal(':term help.exe', &keywordprg) + set isfname& + setlocal keywordprg& +endfunc + " vim: shiftwidth=2 sts=2 expandtab diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -755,6 +755,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1386, +/**/ 1385, /**/ 1384,