# HG changeset patch # User Bram Moolenaar # Date 1564320605 -7200 # Node ID d9aa921b719894f5967c746e7d31e47d04b2e4b7 # Parent 63ae37bd4cfde4656714af9db38e494079034c31 patch 8.1.1768: man plugin changes setting in current window commit https://github.com/vim/vim/commit/bca9c301936c9ba4ee67528f81393debf83844b9 Author: Bram Moolenaar Date: Sun Jul 28 15:28:45 2019 +0200 patch 8.1.1768: man plugin changes setting in current window Problem: Man plugin changes setting in current window. Solution: Set options later. (Jason Franklin) diff --git a/runtime/ftplugin/man.vim b/runtime/ftplugin/man.vim --- a/runtime/ftplugin/man.vim +++ b/runtime/ftplugin/man.vim @@ -174,7 +174,6 @@ func GetPage(cmdmods, ...) else let open_cmd = a:cmdmods . ' split' endif - setl nonu fdc=0 endif endif @@ -183,7 +182,7 @@ func GetPage(cmdmods, ...) " Avoid warning for editing the dummy file twice setl buftype=nofile noswapfile - setl ma nonu nornu nofen + setl fdc=0 ma nofen nonu nornu silent exec "norm! 1GdG" let unsetwidth = 0 if empty($MANWIDTH) diff --git a/src/testdir/test_man.vim b/src/testdir/test_man.vim --- a/src/testdir/test_man.vim +++ b/src/testdir/test_man.vim @@ -1,6 +1,6 @@ runtime ftplugin/man.vim -function Test_g_ft_man_open_mode() +func Test_g_ft_man_open_mode() vnew let l:h = winheight(1) q @@ -48,9 +48,9 @@ function Test_g_ft_man_open_mode() q unlet g:ft_man_open_mode -endfunction +endfunc -function Test_nomodifiable() +func Test_nomodifiable() let wincnt = winnr('$') Man vim if wincnt == winnr('$') @@ -59,9 +59,9 @@ function Test_nomodifiable() endif call assert_false(&l:modifiable) q -endfunction +endfunc -function Test_buffer_count_hidden() +func Test_buffer_count_hidden() %bw! set hidden @@ -85,4 +85,29 @@ function Test_buffer_count_hidden() q set hidden& -endfunction +endfunc + +" Check that we do not alter the settings in the initial window. +func Test_local_options() + %bw! + set foldcolumn=1 number + + let wincnt = winnr('$') + Man vim + if wincnt == winnr('$') + " Vim manual page cannot be found. + return + endif + + " man page + call assert_false(&nu) + call assert_equal(0, &fdc) + + " initial window + wincmd p + call assert_true(&nu) + call assert_equal(1, &fdc) + + %bw! + set foldcolumn& number& +endfunc diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -778,6 +778,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1768, +/**/ 1767, /**/ 1766,