changing default (man) pager

7,136

Your

PAGER=less

sets the shell variable PAGER to the value less. For man (or anything other than the current shell) to see this, you will have to additionally make PAGER an environment variable. You do this with export, either through

PAGER=less
export PAGER

or

export PAGER=less

A shell variable is "exported into the environment" with export. This is the same in all sh-like shells. Exporting a variable in this way is the corollary to the csh/tcsh setenv command.

Share:
7,136

Related videos on Youtube

stevica
Author by

stevica

Updated on September 18, 2022

Comments

  • stevica
    stevica over 1 year

    I'm working on Solaris 10, using bash. Want to change default pager from "more" to "less" (because "less is more" :). Tried to do the following:

    PAGER=less
    

    PS. When I do it in csh via

    setenv PAGER less
    

    then it works

    • schily
      schily over 5 years
      Do not use just less since the default is to use more -s. less seems to implement the same option. BTW: if you have an editor that allows you to exit a binary without destroing the binary, edit /usr/bin/man and replace nroff -u0 by nroff -u1 for better readable output. IIRC, there are three such strings in the binary.
    • stevica
      stevica over 5 years
      @schily; I think you wanted to say edit a binary and not exit a binary, right? Hm, not sure that I have such a thing, what would it be, some hexeditor? I can see the strings with strings.Thank you for the suggestion!
    • schily
      schily over 5 years
      Ok, it seems that I made 2 typos and fixed only one. Any modern editor schould be able to so this, vi is not usable.
    • Jeff Schaller
      Jeff Schaller over 5 years
      Notice the (small but important) distinction with setenv saying that it sets environment variables.
    • stevica
      stevica over 5 years
      @JeffSchaller I do notice. The thing is that with csh I have more experience and still fighting my way through bash. Up to now I was even thinking that Bash doesn't make a distinction between environment and any other variable.