]> granicus.if.org Git - vim/commitdiff
patch 8.1.1870: using :pedit from a help file sets help filetype v8.1.1870
authorBram Moolenaar <Bram@vim.org>
Sat, 17 Aug 2019 13:08:00 +0000 (15:08 +0200)
committerBram Moolenaar <Bram@vim.org>
Sat, 17 Aug 2019 13:08:00 +0000 (15:08 +0200)
Problem:    Using :pedit from a help file sets the preview window to help
            filetype. (Wang Shidong)
Solution:   Do not set "keep_help_flag". (closes #3536)

src/ex_docmd.c
src/testdir/test_window_cmd.vim
src/version.c

index cea3936a5b3c424a833bf46777bc34122dd30fd3..941ad840b6477d54901cf0629711458c1b7edef4 100644 (file)
@@ -8612,16 +8612,16 @@ 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);
index 7af7d07221d902daaa37e761d5c940abae1ca4fc..9927e27576e37868d569843744453107c384cbf6 100644 (file)
@@ -190,6 +190,21 @@ func Test_window_preview()
   call assert_fails('wincmd P', 'E441:')
 endfunc
 
+func Test_window_preview_from_help()
+  filetype on
+  call writefile(['/* some C code */'], 'Xpreview.c')
+  help
+  pedit Xpreview.c
+  wincmd P
+  call assert_equal(1, &previewwindow)
+  call assert_equal('c', &filetype)
+  wincmd z
+
+  filetype off
+  close
+  call delete('Xpreview.c')
+endfunc
+
 func Test_window_exchange()
   e Xa
 
@@ -582,6 +597,7 @@ func Test_winrestcmd()
 endfunc
 
 func Fun_RenewFile()
+  " Need to wait a bit for the timestamp to be older.
   sleep 2
   silent execute '!echo "1" > tmp.txt'
   sp
@@ -599,7 +615,6 @@ func Test_window_prevwin()
   call writefile(['2'], 'tmp.txt')
   new tmp.txt
   q
-  " Need to wait a bit for the timestamp to be older.
   call Fun_RenewFile()
   call assert_equal(2, winnr())
   wincmd p
index cb59ef034c2fbfe048db4232e6b9a52eced70d3b..8e2ac300c7737ff0cf9627da06b1fe7d167b6547 100644 (file)
@@ -769,6 +769,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1870,
 /**/
     1869,
 /**/