Mercurial > vim
diff src/ex_docmd.c @ 20645:b60bb094af52 v8.2.0876
patch 8.2.0876: :pwd does not give a hint about the scope of the directory
Commit: https://github.com/vim/vim/commit/950587242cad52d067a15f0f0c83528a28f75731
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Jun 1 16:26:19 2020 +0200
patch 8.2.0876: :pwd does not give a hint about the scope of the directory
Problem: :pwd does not give a hint about the scope of the directory
Solution: Make ":verbose pwd" show the scope. (Takuya Fujiwara, closes https://github.com/vim/vim/issues/5469)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 01 Jun 2020 16:30:03 +0200 |
parents | d571231175b4 |
children | 3437bf2ce2d4 |
line wrap: on
line diff
--- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -6619,9 +6619,10 @@ post_chdir(cdscope_T scope) /* * Change directory function used by :cd/:tcd/:lcd Ex commands and the - * chdir() function. If 'winlocaldir' is TRUE, then changes the window-local - * directory. If 'tablocaldir' is TRUE, then changes the tab-local directory. - * Otherwise changes the global directory. + * chdir() function. + * scope == CDSCOPE_WINDOW: changes the window-local directory + * scope == CDSCOPE_TABPAGE: changes the tab-local directory + * Otherwise: changes the global directory * Returns TRUE if the directory is successfully changed. */ int @@ -6751,7 +6752,18 @@ ex_pwd(exarg_T *eap UNUSED) #ifdef BACKSLASH_IN_FILENAME slash_adjust(NameBuff); #endif - msg((char *)NameBuff); + if (p_verbose > 0) + { + char *context = "global"; + + if (curwin->w_localdir != NULL) + context = "window"; + else if (curtab->tp_localdir != NULL) + context = "tabpage"; + smsg("[%s] %s", context, (char *)NameBuff); + } + else + msg((char *)NameBuff); } else emsg(_("E187: Unknown"));