# HG changeset patch # User Christian Brabandt # Date 1510421406 -3600 # Node ID 79a7544561107eaf38fb9ca1e017b8664fb7617f # Parent 358131b55d362bb9295f9b9eb00795a9944256ee patch 8.0.1289: mkview always includes the local directory commit https://github.com/vim/vim/commit/13e904199c2af6aac9b289a7f520d8e16f6e478a Author: Bram Moolenaar Date: Sat Nov 11 18:16:48 2017 +0100 patch 8.0.1289: mkview always includes the local directory Problem: Mkview always includes the local directory. Solution: Add the "curdir" value in 'viewoptions'. (Eric Roberts, closes #2316) diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -8387,7 +8387,7 @@ A jump table for the options with a shor security reasons. *'viewoptions'* *'vop'* -'viewoptions' 'vop' string (default: "folds,options,cursor") +'viewoptions' 'vop' string (default: "folds,options,cursor,curdir") global {not in Vi} {not available when compiled without the |+mksession| @@ -8405,6 +8405,7 @@ A jump table for the options with a shor slashes unix with Unix end-of-line format (single ), even when on Windows or DOS + curdir the window-local directory, if set with `:lcd` "slash" and "unix" are useful on Windows when sharing view files with Unix. The Unix version of Vim cannot source dos format scripts, diff --git a/src/ex_docmd.c b/src/ex_docmd.c --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -11695,9 +11695,11 @@ put_view( } /* - * Local directory. + * Local directory, if the current flag is not view options or the "curdir" + * option is included. */ - if (wp->w_localdir != NULL) + if (wp->w_localdir != NULL + && (flagp != &vop_flags || (*flagp & SSOP_CURDIR))) { if (fputs("lcd ", fd) < 0 || ses_put_fname(fd, wp->w_localdir, flagp) == FAIL diff --git a/src/option.c b/src/option.c --- a/src/option.c +++ b/src/option.c @@ -2926,7 +2926,8 @@ static struct vimoption options[] = {"viewoptions", "vop", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP, #ifdef FEAT_SESSION (char_u *)&p_vop, PV_NONE, - {(char_u *)"folds,options,cursor", (char_u *)0L} + {(char_u *)"folds,options,cursor,curdir", + (char_u *)0L} #else (char_u *)NULL, PV_NONE, {(char_u *)0L, (char_u *)0L} diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -762,6 +762,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1289, +/**/ 1288, /**/ 1287,