changeset 34164:86031416a201

runtime(man): man on AIX does not understand -l Commit: https://github.com/vim/vim/commit/f942db25571e64d413048fcfd9719fdf63a516c6 Author: Christian Brabandt <cb@256bit.org> Date: Wed Jan 17 21:50:16 2024 +0100 runtime(man): man on AIX does not understand -l fixes: https://github.com/vim/vim/issues/13847 Co-authored-by: Ken Takata <kentkt@csc.jp> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Wed, 17 Jan 2024 22:00:03 +0100
parents a3707c48848c
children 38965f1cc21a
files runtime/autoload/dist/man.vim
diffstat 1 files changed, 16 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/autoload/dist/man.vim
+++ b/runtime/autoload/dist/man.vim
@@ -3,7 +3,7 @@
 " Maintainer:	Jason Franklin <jason@oneway.dev>
 " Maintainer:	SungHyun Nam <goweol@gmail.com>
 " Autoload Split: Bram Moolenaar
-" Last Change: 	2023 Jun 28
+" Last Change: 	2024 Jan 17 (make it work on AIX, see #13847)
 
 let s:cpo_save = &cpo
 set cpo-=C
@@ -13,14 +13,26 @@ let s:man_tag_depth = 0
 let s:man_sect_arg = ""
 let s:man_find_arg = "-w"
 try
-  if !has("win32") && $OSTYPE !~ 'cygwin\|linux' && system('uname -s') =~ "SunOS" && system('uname -r') =~ "^5"
-    let s:man_sect_arg = "-s"
-    let s:man_find_arg = "-l"
+  if !has("win32") && $OSTYPE !~ 'cygwin\|linux'
+    " cache the value
+    let uname_s = system('uname -s')
+
+    if uname_s =~ "SunOS" && system('uname -r') =~ "^5"
+      " Special Case for Man on SunOS
+      let s:man_sect_arg = "-s"
+      let s:man_find_arg = "-l"
+    elseif uname_s =~? 'AIX'
+      " Special Case for Man on AIX
+      let s:man_sect_arg = ""
+      let s:man_find_arg = ""
+    endif
   endif
 catch /E145:/
   " Ignore the error in restricted mode
 endtry
 
+unlet! uname_s
+
 func s:ParseIntoPageAndSection()
   " Accommodate a reference that terminates in a hyphen.
   "