aboutsummaryrefslogtreecommitdiffhomepage
path: root/share
diff options
context:
space:
mode:
Diffstat (limited to 'share')
-rw-r--r--share/functions/__fish_print_commands.fish8
-rw-r--r--share/functions/__fish_print_help.fish8
2 files changed, 11 insertions, 5 deletions
diff --git a/share/functions/__fish_print_commands.fish b/share/functions/__fish_print_commands.fish
index 21c0876d..bac2bd73 100644
--- a/share/functions/__fish_print_commands.fish
+++ b/share/functions/__fish_print_commands.fish
@@ -1,5 +1,7 @@
function __fish_print_commands --description "Print a list of documented fish commands"
- if test -d $__fish_datadir/man/man1/
- find $__fish_datadir/man/man1/ -type f -name \*.1 -execdir basename '{}' .1 ';'
- end
+ if test -d $__fish_datadir/man/man1/
+ for file in $__fish_datadir/man/man1/**.1*
+ string replace -r '.*/' '' -- $file | string replace -r '.1(.gz)?$' ''
+ end
+ end
end
diff --git a/share/functions/__fish_print_help.fish b/share/functions/__fish_print_help.fish
index 3d5ac0b6..265f9615 100644
--- a/share/functions/__fish_print_help.fish
+++ b/share/functions/__fish_print_help.fish
@@ -11,7 +11,7 @@ function __fish_print_help --description "Print help message for the specified f
end
# Do nothing if the file does not exist
- if not test -e "$__fish_datadir/man/man1/$item.1"
+ if not test -e "$__fish_datadir/man/man1/$item.1" -o -e "$__fish_datadir/man/man1/$item.1.gz"
return
end
@@ -39,7 +39,11 @@ function __fish_print_help --description "Print help message for the specified f
set cols (math $cols - 4) # leave a bit of space on the right
set rLL -rLL=$cols[1]n
end
- set help (nroff -man -c -t $rLL "$__fish_datadir/man/man1/$item.1" ^/dev/null)
+ if test -e "$__fish_datadir/man/man1/$item.1"
+ set help (nroff -man -c -t $rLL "$__fish_datadir/man/man1/$item.1" ^/dev/null)
+ else if test -e "$__fish_datadir/man/man1/$item.1.gz"
+ set help (gunzip -c "$__fish_datadir/man/man1/$item.1.gz" ^/dev/null | nroff -man -c -t $rLL ^/dev/null)
+ end
# The original implementation trimmed off the top 5 lines and bottom 3 lines
# from the nroff output. Perhaps that's reliable, but the magic numbers make