When I run man [program]
, the man page text is output on the terminal (a la cat
, without a pager that provides interactivity) instead of opening the man page file in less
(so you can scroll, search, etc.):
➜ man git commit
GIT-COMMIT(1) Git Manual GIT-COMMIT(1)
NAME
git-commit - Record changes to the repository
SYNOPSIS
[...the rest of the man page]
I've verified that echo $PAGER
returns less
. Running man -D -P less [program]
still outputs to the terminal "like cat
does", without providing the ability to scroll or search etc., like less
usually does.
Using the debug flag -d
, man
says "using /usr/bin/less as pager
". I'm at a loss for what is happening.
Other useful information:
➜ env | grep LESS
LESS=-R -M
LESS_TERMCAP_mb=
LESS_TERMCAP_md=
LESS_TERMCAP_me=
LESS_TERMCAP_so=
LESS_TERMCAP_se=
LESS_TERMCAP_us=
LESS_TERMCAP_ue=
➜ echo $TERM
xterm-256color
I do get an error for only one program. I don't believe it is directly relevant, but see this GH issue for details on that. tl;dr, the error that appears is troff: <standard input>:1: name expected (got '\ '): treated as missing
This is also cross posted to the Manjaro forums here.
Update:
Issue is with zpm-zsh/colorize. I thought doing \man
would ignore the function, but \
only ignores aliases. Removing this plugin solves the issue, but I'd like to understand why.
less
writes to standard output, thatless
is not involved here? Use the standard litany. What exactly did the computer do? How exactly is that not as expected? "It used standard output." is not exact.echo "$TERM"
and the number of columns and lines reported bystty -a
please.stty
please. Notssty