Man Page

From ArchWiki

Jump to: navigation, search
Article summary
Information on man pages, along with recommendations on how to improve their usage
Languages
English
Image:Tango-view-fullscreen.png This article needs expansion.
Please help expand this article so the intended scope is covered in sufficient detail. (Discuss)

Man pages (abbreviation for "manual pages") are the extensive documentation that comes preinstalled with almost all substantial UNIX-like operating systems, including Arch Linux. The command used to display them is man.

In spite their scope, man pages are designed to be self-contained documents, consequentially limiting themselves to referring to another man page when it comes to related subjects. This is a sharp contrast with the hyperlink-aware info files, GNU's attempt at replacing the traditional man page format.

Contents

Colored man pages

For some users, color-enabled man pages allow for a clearer presentation and easier digestion of the content. Given that users new to Linux are prone to spend a considerable amount of time familiarizing themselves with basic userspace tools, setting up a comfortable environment is a necessity to most.

There are two prevalent methods for achieving colored man pages: using most, or opting for less. The former is simpler to configure, at the expense of the advanced functionality that is native to less.

First method: using 'most'

Install most using pacman:

# pacman -S most

This is similar to less and more, yet allows rendering colored text in an easier way.

Edit /etc/man_db.conf, uncomment the pager definition and change it to:

DEFINE     pager     most -s

Test the new setup by typing:

$ man whatever_man_page

Modifying the color values requires editing ~/.mostrc (creating the file if it is not present) or editing /etc/most.conf for system-wide changes. Example ~/.mostrc:

% Color settings
color normal lightgray black
color status yellow blue
color underline yellow black
color overstrike brightblue black

Another example showing keybindings similar to less (jump to line is set to 'J'):

% less-like keybindings
unsetkey "^K"
unsetkey "g"
unsetkey "G"
unsetkey ":"

setkey next_file ":n"
setkey find_file ":e"
setkey next_file ":p"
setkey toggle_options ":o"
setkey toggle_case ":c"
setkey delete_file ":d"
setkey exit ":q"

setkey bob "g"
setkey eob "G"
setkey down "e"
setkey down "E"
setkey down "j"
setkey down "^N"
setkey up "y"
setkey up "^Y"
setkey up "k"
setkey up "^P"
setkey up "^K"
setkey page_down "f"
setkey page_down "^F"
setkey page_up "b"
setkey page_up "^B"
setkey other_window "z"
setkey other_window "w"
setkey search_backward "?"
setkey bob "p"
setkey goto_mark "'"
setkey find_file "E"
setkey edit "v"

Second method: using 'less'

Source: nion's blog - less colors for man pages

Alternatively, getting an approximate coloured result in manual pages with less is also a possibility. This method has the advantage that less has a bigger feature set than most, and that might be the preference for advanced users.

Just add the following to ~/.shellrc, replacing shell as needed; e.g. bash:

export LESS_TERMCAP_mb=$'\e[1;31m'
export LESS_TERMCAP_md=$'\e[1;31m'
export LESS_TERMCAP_me=$'\e[0m'
export LESS_TERMCAP_se=$'\e[0m'
export LESS_TERMCAP_so=$'\e[1;44;33m'
export LESS_TERMCAP_ue=$'\e[0m'
export LESS_TERMCAP_us=$'\e[1;32m'

To customize the colors, see Wikipedia:ANSI escape code for reference.

Reading man pages with a browser

Instead of the standard interface, using browsers such as elinks and Firefox to view man pages effectively enables info pages' main benefit; hyperlinked text.

First, install man2html using yaourt or another AUR helper:

$ yaourt -S man2html

Now, convert a man page:

$ man bash | man2html -compress -cgi-url man$section/$title.$section$subsection.html > ~/man/bash.html

Another use for man2html is exporting to raw, printer-friendly text:

$ man bash | man2html -bare > ~/bash.txt
Personal tools