fish-shell/share/functions/__fish_anypager.fish
Johannes Altmanninger b83f3b0e98 __fish_anypager: prefer less over other pagers
This is our traditional behavior; "man" and "git" do the same.
2023-12-17 17:12:13 +01:00

32 lines
747 B
Fish

function __fish_anypager --description "Print a pager to use"
set -l pager
# We prefer $PAGER if we have it
set -q PAGER
and echo $PAGER | read -at pager
# or even $MANPAGER if we're allowed to
if test "$argv[1]" = --with-manpager
set -q MANPAGER
and echo $MANPAGER | read -at pager
end
# We use them if they *exist*
if command -q $pager[1]
printf %s\n $pager
return 0
end
# Cheesy hardcoded list of pagers.
for cmd in less bat lv most more
if command -q $cmd
echo -- $cmd
return 0
end
end
# We have no pager.
# We could fall back to "cat",
# but in some cases that's probably not helpful.
return 1
end