]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
runtime(man): honor cmd modifiers before `g:ft_man_open_mode`
authorIvan Shapovalov <intelfx@intelfx.name>
Sat, 6 Jul 2024 14:56:02 +0000 (16:56 +0200)
committerChristian Brabandt <cb@256bit.org>
Sat, 6 Jul 2024 14:57:18 +0000 (16:57 +0200)
Give priority to (placement) command modifiers, specifically
`:vertical`, `:horizontal` and `:tab`, ahead of `g:ft_man_open_mode`,
so that if the user says e.g. `:vert Man`, Vim does the expected thing.

closes: #15117

Signed-off-by: Ivan Shapovalov <intelfx@intelfx.name>
Signed-off-by: Christian Brabandt <cb@256bit.org>
runtime/autoload/dist/man.vim
runtime/ftplugin/man.vim

index 708e1062b4ffb00f1756da4d4f5cbb52de68541a..d9dbaf47d4f0c11b60241e42ed6bb6185522c91b 100644 (file)
@@ -4,6 +4,7 @@
 " Maintainer:  SungHyun Nam <goweol@gmail.com>
 " Autoload Split: Bram Moolenaar
 " Last Change:         2024 Jan 17 (make it work on AIX, see #13847)
+"              2024 Jul 06 (honor command modifiers, #15117)
 
 let s:cpo_save = &cpo
 set cpo-=C
@@ -165,7 +166,9 @@ func dist#man#GetPage(cmdmods, ...)
       endwhile
     endif
     if &filetype != "man"
-      if exists("g:ft_man_open_mode")
+      if a:cmdmods =~ '\<\(tab\|vertical\|horizontal\)\>'
+       let open_cmd = a:cmdmods . ' split'
+      elseif exists("g:ft_man_open_mode")
         if g:ft_man_open_mode == 'vert'
          let open_cmd = 'vsplit'
         elseif g:ft_man_open_mode == 'tab'
@@ -174,7 +177,7 @@ func dist#man#GetPage(cmdmods, ...)
          let open_cmd = 'split'
         endif
       else
-       let open_cmd = a:cmdmods . ' split'
+       let open_cmd = 'split'
       endif
     endif
   endif
index 87484bf691cee2b944b38ba5292c5f24336d9010..f0723ef7bfea0a779809db557f694c029b473f28 100644 (file)
@@ -4,6 +4,7 @@
 " Maintainer:  SungHyun Nam <goweol@gmail.com>
 " Autoload Split: Bram Moolenaar
 " Last Change: 2024 Jun 06 (disabled the q mapping, #8210)
+"              2024 Jul 06 (use nnoremap, #15130)
 
 " To make the ":Man" command available before editing a manual page, source
 " this script from your startup vimrc file.