Package: man-db
Version: 2.7.6.1-2
Severity: normal

Dear Maintainer,

because things weren't working as expected, I wanted to read some
manpages. However, because I was in a non-existing working directory man
failed with a useless error message.

How to reproduce:
➜  ~ sshfs 192.168.1.1:/mnt/ /mnt/fladderiep/home
➜  ~ cd /mnt/fladderiep/home
➜  home kill $(pidof sshfs)
➜  home man
What manual page do you want?
➜  home man man
man: can't change directory to '(unreachable)/': No such file or
directory
man: command exited with status 255: sed -e '/^[[:space:]]*$/{ N;
/^[[:space:]]*\n[[:space:]]*$/D; }' | (cd (unreachable)/ &&
LESS=-ix8RmPm Manual page man(1) ?ltline %lt?L/%L.:byte %bB?s/%s..?e
(END):?pB %pB\%.. (press h for help or q to quit)$PM Manual page man(1)
?ltline %lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB\%.. (press h for help
or q to quit)$-R MAN_PN=man(1) less)

I read that you'd like to see the man --debug output, my first try to
redirect the output, it turned out that the manpages was dumped there,
no errors:
man --debug man >/tmp/manohman

Now it gets funny:
man --debug man >/tmp/manohman 2>&1
echo $?
0

But inside that file, the error isn't there. Back to the backlogs!

[…]
ult_src: File /usr/share/man/man1/man.1.gz in mantree /usr/share/man
found ultimate source file /usr/share/man/man1/man.1.gz
converted /usr/share/man/man1/man.1.gz to /usr/share/man/cat1/man.1.gz
is_changed: a=/usr/share/man/man1/man.1.gz,
b=/usr/share/man/cat1/man.1.gz (-2)
converted /var/cache/man/cat1/man.1.gz to /var/cache/man/cat1/man.1.gz
will try cat file /var/cache/man/cat1/man.1.gz
chdir /usr/share/man
pre-processors `t' from file
page_encoding = ISO-8859-1
source_encoding = ISO-8859-1
locale_charset = UTF-8
roff_device (locale) = utf8
roff_encoding = ISO-8859-1
output_encoding = UTF-8
less_charset = utf-8
Terminal width 150
Terminal width 150 not within cat page range [80, 80]
Using 146-character lines
formatted_encoding = UTF-8
format: 1, save_cat: 0, found: 1
add_output_iconv: source UTF-8, target UTF-8
Setting LESS to -ix8RmPm Manual page man(1) ?ltline %lt?L/%L.:byte
%bB?s/%s..?e (END):?pB %pB\%.. (press h for help or q to quit)$PM Manual
%page man(1) ?ltline %lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB\%..
%(press h for help or q to quit)$
Setting MAN_PN to man(1)
++priv_drop_count = 1
man: can't change directory to '(unreachable)/': No such file or
directory
man: command exited with status 255: sed -e '/^[[:space:]]*$/{ N;
/^[[:space:]]*\n[[:space:]]*$/D; }' | (cd (unreachable)/ &&
LESS=-ix8RmPm Manual page man(1) ?ltline %lt?L/%L.:byte %bB?s/%s..?e
(END):?pB %pB\%.. (press h for help or q to quit)$PM Manual page man(1)
?ltline %lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB\%.. (press h for help
or q to quit)$ MAN_PN=man(1) pager)
hashtable_free: 12 entries, 12 (100%) unique

I don't have a fancy solution for this, I'd already be happy with a
nicer error message, even if it's possible to work around it, there
might be more funky edge-cases with disconnected or high-latency network
storage.

-- System Information:
Debian Release: 9.7
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-8-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8),
LANGUAGE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages man-db depends on:
ii  bsdmainutils           9.0.12+nmu1
ii  debconf [debconf-2.0]  1.5.61
ii  dpkg                   1.18.25
ii  groff-base             1.22.3-9
ii  libc6                  2.24-11+deb9u3
ii  libgdbm3               1.8.3-14
ii  libpipeline1           1.4.1-2
ii  zlib1g                 1:1.2.8.dfsg-5

man-db recommends no packages.

Versions of packages man-db suggests:
pn  groff                               <none>
ii  less                                481-2.1
ii  links2 [www-browser]                2.14-2+b1
ii  lynx [www-browser]                  2.8.9dev11-1
ii  w3m [www-browser]                   0.5.3-34+deb9u1

-- debconf information:
  man-db/auto-update: true
  man-db/install-setuid: false

*** /tmp/manohman
ruid=1000, euid=1000
rgid=1000, egid=1000
++priv_drop_count = 1
>From the config file /etc/manpath.config:

Mandatory mandir `/usr/man'.
Mandatory mandir `/usr/share/man'.
Mandatory mandir `/usr/local/share/man'.
Path `/bin' mapped to mandir `/usr/share/man'.
Path `/usr/bin' mapped to mandir `/usr/share/man'.
Path `/sbin' mapped to mandir `/usr/share/man'.
Path `/usr/sbin' mapped to mandir `/usr/share/man'.
Path `/usr/local/bin' mapped to mandir `/usr/local/man'.
Path `/usr/local/bin' mapped to mandir `/usr/local/share/man'.
Path `/usr/local/sbin' mapped to mandir `/usr/local/man'.
Path `/usr/local/sbin' mapped to mandir `/usr/local/share/man'.
Path `/usr/X11R6/bin' mapped to mandir `/usr/X11R6/man'.
Path `/usr/bin/X11' mapped to mandir `/usr/X11R6/man'.
Path `/usr/games' mapped to mandir `/usr/share/man'.
Path `/opt/bin' mapped to mandir `/opt/man'.
Path `/opt/sbin' mapped to mandir `/opt/man'.
Global mandir `/usr/man', catdir `/var/cache/man/fsstnd'.
Global mandir `/usr/share/man', catdir `/var/cache/man'.
Global mandir `/usr/local/man', catdir `/var/cache/man/oldlocal'.
Global mandir `/usr/local/share/man', catdir `/var/cache/man/local'.
Global mandir `/usr/X11R6/man', catdir `/var/cache/man/X11R6'.
Global mandir `/opt/man', catdir `/var/cache/man/opt'.
Added section `1'.
Added section `n'.
Added section `l'.
Added section `8'.
Added section `3'.
Added section `2'.
Added section `3posix'.
Added section `3pm'.
Added section `3perl'.
Added section `3am'.
Added section `5'.
Added section `4'.
Added section `9'.
Added section `6'.
Added section `7'.
`/usr/man'      `'      `1'
`/usr/share/man'        `'      `1'
`/usr/local/share/man'  `'      `1'
`/bin'  `/usr/share/man'        `0'
`/usr/bin'      `/usr/share/man'        `0'
`/sbin' `/usr/share/man'        `0'
`/usr/sbin'     `/usr/share/man'        `0'
`/usr/local/bin'        `/usr/local/man'        `0'
`/usr/local/bin'        `/usr/local/share/man'  `0'
`/usr/local/sbin'       `/usr/local/man'        `0'
`/usr/local/sbin'       `/usr/local/share/man'  `0'
`/usr/X11R6/bin'        `/usr/X11R6/man'        `0'
`/usr/bin/X11'  `/usr/X11R6/man'        `0'
`/usr/games'    `/usr/share/man'        `0'
`/opt/bin'      `/opt/man'      `0'
`/opt/sbin'     `/opt/man'      `0'
`/usr/man'      `/var/cache/man/fsstnd' `-1'
`/usr/share/man'        `/var/cache/man'        `-1'
`/usr/local/man'        `/var/cache/man/oldlocal'       `-1'
`/usr/local/share/man'  `/var/cache/man/local'  `-1'
`/usr/X11R6/man'        `/var/cache/man/X11R6'  `-1'
`/opt/man'      `/var/cache/man/opt'    `-1'
`1'     `'      `-5'
`n'     `'      `-5'
`l'     `'      `-5'
`8'     `'      `-5'
`3'     `'      `-5'
`2'     `'      `-5'
`3posix'        `'      `-5'
`3pm'   `'      `-5'
`3perl' `'      `-5'
`3am'   `'      `-5'
`5'     `'      `-5'
`4'     `'      `-5'
`9'     `'      `-5'
`6'     `'      `-5'
`7'     `'      `-5'
real user = 1000; effective user = 1000

using pager as pager

path directory /home/kwadronaut/dev/git-subrepo/lib is not in the config
file
but does have a ../man, man, ../share/man, or share/man subdirectory
adding /home/kwadronaut/dev/git-subrepo/man to manpath

path directory /home/kwadronaut/bin is not in the config file
and doesn't have ../man, man, ../share/man, or share/man subdirectories

path directory /usr/local/bin is in the config file
adding /usr/local/man to manpath
adding /usr/local/share/man to manpath

path directory /usr/bin is in the config file
adding /usr/share/man to manpath

path directory /bin is in the config file
/usr/share/man is already in the manpath

path directory /usr/local/games is not in the config file
but does have a ../man, man, ../share/man, or share/man subdirectory
/usr/local/man is already in the manpath

path directory /usr/games is in the config file
/usr/share/man is already in the manpath

path directory /snap/bin is not in the config file
and doesn't have ../man, man, ../share/man, or share/man subdirectories

adding mandatory man directories

warning: /usr/man: No such file or directory
/usr/share/man is already in the manpath
/usr/local/share/man is already in the manpath
add_nls_manpaths(): processing
/home/kwadronaut/dev/git-subrepo/man:/home/kwadronaut/dev/git-subrepo/man:/usr/local/man:/usr/local/share/man:/usr/share/man
checking for locale en_US.utf8
/home/kwadronaut/dev/git-subrepo/man:/home/kwadronaut/dev/git-subrepo/man
reduced to /home/kwadronaut/dev/git-subrepo/man
manpath search path (with duplicates) =
/home/kwadronaut/dev/git-subrepo/man:/usr/local/man:/usr/local/share/man:/usr/share/man:/home/kwadronaut/dev/git-subrepo/man:/home/kwadronaut/dev/git-subrepo/man:/usr/local/man:/usr/local/share/man:/usr/share/man
adding /home/kwadronaut/dev/git-subrepo/man to manpathlist
adding /usr/local/man to manpathlist
adding /usr/local/share/man to manpathlist
adding /usr/share/man to manpathlist
adding /home/kwadronaut/dev/git-subrepo/man to manpathlist
adding /home/kwadronaut/dev/git-subrepo/man to manpathlist
adding /usr/local/man to manpathlist
adding /usr/local/share/man to manpathlist
adding /usr/share/man to manpathlist
Removing duplicate manpath entry /usr/local/share/man (2) ->
/usr/local/man (1)
Removing duplicate manpath entry /home/kwadronaut/dev/git-subrepo/man
(3) -> /home/kwadronaut/dev/git-subrepo/man (0)
Removing duplicate manpath entry /home/kwadronaut/dev/git-subrepo/man
(3) -> /home/kwadronaut/dev/git-subrepo/man (0)
Removing duplicate manpath entry /usr/local/man (3) -> /usr/local/man (1)
Removing duplicate manpath entry /usr/local/share/man (3) ->
/usr/local/man (1)
Removing duplicate manpath entry /usr/share/man (3) -> /usr/share/man (2)
final search path =
/home/kwadronaut/dev/git-subrepo/man:/usr/local/man:/usr/share/man
--priv_drop_count = 0
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 1
trying section 1 with globbing
Layout is GNU (1)
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: miss
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man1*
matched: /home/kwadronaut/dev/git-subrepo/man/man1
update_directory_cache /home/kwadronaut/dev/git-subrepo/man/man1: miss
globbing pattern in /home/kwadronaut/dev/git-subrepo/man/man1: man.1*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat1*
hashtable_free: 0 entries, 0 (0%) unique
Failed to open /home/kwadronaut/dev/git-subrepo/man/index.db O_RDONLY
--priv_drop_count = 0
searching in /usr/local/man, section 1
trying section 1 with globbing
update_directory_cache /usr/local/man: miss
globbing pattern in /usr/local/man: man1*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat1*
hashtable_free: 0 entries, 0 (0%) unique
Failed to open /var/cache/man/oldlocal/index.db O_RDONLY
searching in /usr/share/man, section 1
trying section 1 with globbing
update_directory_cache /usr/share/man: miss
globbing pattern in /usr/share/man: man1*
matched: /usr/share/man/man1
update_directory_cache /usr/share/man/man1: miss
globbing pattern in /usr/share/man/man1: man.1*
matched: /usr/share/man/man1/man.1.gz
hashtable_free: 1 entries, 1 (100%) unique

ult_src: File /usr/share/man/man1/man.1.gz in mantree /usr/share/man
candidate: 0 0 man /usr/share/man /usr/share/man/man1/man.1.gz A - 1 1
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section n
trying section n with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: mann*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: catn*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section n
trying section n with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: mann*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: catn*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section n
trying section n with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: mann*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: catn*
hashtable_free: 0 entries, 0 (0%) unique
Succeeded in opening /var/cache/man/index.db O_RDONLY
found 2 names/extensions
multi key lookup (man   1)
multi key lookup (man   7)
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section l
trying section l with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: manl*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: catl*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section l
trying section l with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: manl*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: catl*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section l
trying section l with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: manl*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: catl*
hashtable_free: 0 entries, 0 (0%) unique
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 8
trying section 8 with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man8*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat8*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section 8
trying section 8 with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: man8*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat8*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section 8
trying section 8 with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: man8*
matched: /usr/share/man/man8
update_directory_cache /usr/share/man/man8: miss
globbing pattern in /usr/share/man/man8: man.8*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: cat8*
hashtable_free: 0 entries, 0 (0%) unique
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 3
trying section 3 with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man3*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section 3
trying section 3 with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: man3*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section 3
trying section 3 with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: man3*
matched: /usr/share/man/man3
update_directory_cache /usr/share/man/man3: miss
globbing pattern in /usr/share/man/man3: man.3*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 2
trying section 2 with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man2*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat2*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section 2
trying section 2 with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: man2*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat2*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section 2
trying section 2 with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: man2*
matched: /usr/share/man/man2
update_directory_cache /usr/share/man/man2: miss
globbing pattern in /usr/share/man/man2: man.2*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: cat2*
hashtable_free: 0 entries, 0 (0%) unique
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 3posix
trying section 3posix with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man3*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section 3posix
trying section 3posix with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: man3*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section 3posix
trying section 3posix with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: man3*
matched: /usr/share/man/man3
update_directory_cache /usr/share/man/man3: hit
globbing pattern in /usr/share/man/man3: man.3posix*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 3pm
trying section 3pm with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man3*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section 3pm
trying section 3pm with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: man3*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section 3pm
trying section 3pm with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: man3*
matched: /usr/share/man/man3
update_directory_cache /usr/share/man/man3: hit
globbing pattern in /usr/share/man/man3: man.3pm*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 3perl
trying section 3perl with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man3*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section 3perl
trying section 3perl with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: man3*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section 3perl
trying section 3perl with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: man3*
matched: /usr/share/man/man3
update_directory_cache /usr/share/man/man3: hit
globbing pattern in /usr/share/man/man3: man.3perl*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 3am
trying section 3am with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man3*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section 3am
trying section 3am with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: man3*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section 3am
trying section 3am with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: man3*
matched: /usr/share/man/man3
update_directory_cache /usr/share/man/man3: hit
globbing pattern in /usr/share/man/man3: man.3am*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: cat3*
hashtable_free: 0 entries, 0 (0%) unique
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 5
trying section 5 with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man5*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat5*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section 5
trying section 5 with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: man5*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat5*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section 5
trying section 5 with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: man5*
matched: /usr/share/man/man5
update_directory_cache /usr/share/man/man5: miss
globbing pattern in /usr/share/man/man5: man.5*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: cat5*
hashtable_free: 0 entries, 0 (0%) unique
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 4
trying section 4 with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man4*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat4*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section 4
trying section 4 with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: man4*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat4*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section 4
trying section 4 with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: man4*
matched: /usr/share/man/man4
update_directory_cache /usr/share/man/man4: miss
globbing pattern in /usr/share/man/man4: man.4*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: cat4*
hashtable_free: 0 entries, 0 (0%) unique
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 9
trying section 9 with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man9*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat9*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section 9
trying section 9 with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: man9*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat9*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section 9
trying section 9 with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: man9*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: cat9*
hashtable_free: 0 entries, 0 (0%) unique
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 6
trying section 6 with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man6*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat6*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section 6
trying section 6 with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: man6*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat6*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section 6
trying section 6 with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: man6*
matched: /usr/share/man/man6
update_directory_cache /usr/share/man/man6: miss
globbing pattern in /usr/share/man/man6: man.6*
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: cat6*
hashtable_free: 0 entries, 0 (0%) unique
++priv_drop_count = 1
searching in /home/kwadronaut/dev/git-subrepo/man, section 7
trying section 7 with globbing
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: man7*
update_directory_cache /home/kwadronaut/dev/git-subrepo/man: hit
globbing pattern in /home/kwadronaut/dev/git-subrepo/man: cat7*
hashtable_free: 0 entries, 0 (0%) unique
--priv_drop_count = 0
searching in /usr/local/man, section 7
trying section 7 with globbing
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: man7*
update_directory_cache /usr/local/man: hit
globbing pattern in /usr/local/man: cat7*
hashtable_free: 0 entries, 0 (0%) unique
searching in /usr/share/man, section 7
trying section 7 with globbing
update_directory_cache /usr/share/man: hit
globbing pattern in /usr/share/man: man7*
matched: /usr/share/man/man7
update_directory_cache /usr/share/man/man7: miss
globbing pattern in /usr/share/man/man7: man.7*
matched: /usr/share/man/man7/man.7.gz
hashtable_free: 1 entries, 1 (100%) unique

ult_src: File /usr/share/man/man7/man.7.gz in mantree /usr/share/man
candidate: 0 0 man /usr/share/man /usr/share/man/man7/man.7.gz A - 7 7
search: 0 0 man /usr/share/man /usr/share/man/man1/man.1.gz A man 1 1
(dup: 0)
Checking physical location: /usr/share/man/man1/man.1.gz

ult_src: File /usr/share/man/man1/man.1.gz in mantree /usr/share/man
found ultimate source file /usr/share/man/man1/man.1.gz
converted /usr/share/man/man1/man.1.gz to /usr/share/man/cat1/man.1.gz
is_changed: a=/usr/share/man/man1/man.1.gz,
b=/usr/share/man/cat1/man.1.gz (-2)
converted /var/cache/man/cat1/man.1.gz to /var/cache/man/cat1/man.1.gz
will try cat file /var/cache/man/cat1/man.1.gz
chdir /usr/share/man
pre-processors `t' from file
page_encoding = ISO-8859-1
source_encoding = ISO-8859-1
locale_charset = UTF-8
roff_device (locale) = utf8
roff_encoding = ISO-8859-1
output_encoding = UTF-8
less_charset = utf-8
Terminal width 74
Terminal width 74 not within cat page range [80, 80]
Using 72-character lines
formatted_encoding = UTF-8
format: 1, save_cat: 0, found: 1
add_output_iconv: source UTF-8, target UTF-8
++priv_drop_count = 1
opening - (parent path: /usr/share/man)
opened -
trying encoding UTF-8 -> UTF-8//IGNORE
MAN(1)                     Manual pager utils                     MAN(1)

NAME
       man - an interface to the on-line reference manuals

SYNOPSIS
       man [-C file] [-d] [-D] [--warnings[=warnings]] [-R encoding] [-L
       locale] [-m system[,...]] [-M  path]  [-S  list]  [-e  extension]
       [-i|-I]  [--regex|--wildcard] [--names-only] [-a] [-u] [--no-sub‐
       pages] [-P pager] [-r prompt] [-7]  [-E  encoding]  [--no-hyphen‐
       ation]   [--no-justification]   [-p   string]  [-t]  [-T[device]]
       [-H[browser]] [-X[dpi]] [-Z] [[section] page[.section] ...] ...
       man -k [apropos options] regexp ...
       man -K [-w|-W] [-S list] [-i|-I] [--regex] [section] term ...
       man -f [whatis options] page ...
       man -l [-C file] [-d] [-D] [--warnings[=warnings]] [-R  encoding]
       [-L locale] [-P pager] [-r prompt] [-7] [-E encoding] [-p string]
       [-t] [-T[device]] [-H[browser]] [-X[dpi]] [-Z] file ...
       man -w|-W [-C file] [-d] [-D] page ...
       man -c [-C file] [-d] [-D] page ...
       man [-?V]

DESCRIPTION
       man is the system's manual pager.  Each page  argument  given  to
       man  is normally the name of a program, utility or function.  The
       manual page associated with each of these arguments is then found
       and  displayed.   A section, if provided, will direct man to look
       only in that section of the manual.  The  default  action  is  to
       search  in  all of the available sections following a pre-defined
       order ("1 n l 8 3 2 3posix 3pm 3perl 3am 5 4 9 6 7"  by  default,
       unless  overridden  by the SECTION directive in /etc/manpath.con‐
       fig), and to show only the first page found, even if page  exists
       in several sections.

       The  table below shows the section numbers of the manual followed
       by the types of pages they contain.

       1   Executable programs or shell commands
       2   System calls (functions provided by the kernel)
       3   Library calls (functions within program libraries)
       4   Special files (usually found in /dev)
       5   File formats and conventions eg /etc/passwd
       6   Games
       7   Miscellaneous (including  macro  packages  and  conventions),
           e.g. man(7), groff(7)
       8   System administration commands (usually only for root)
       9   Kernel routines [Non standard]

       A manual page consists of several sections.

       Conventional section names include NAME, SYNOPSIS, CONFIGURATION,
       DESCRIPTION, OPTIONS, EXIT STATUS, RETURN VALUE, ERRORS, ENVIRON‐
       MENT,  FILES,  VERSIONS,  CONFORMING TO,  NOTES,  BUGS,  EXAMPLE,
       AUTHORS, and SEE ALSO.

       The following conventions apply to the SYNOPSIS section  and  can
       be used as a guide in other sections.

       bold text          type exactly as shown.
       italic text        replace with appropriate argument.
       [-abc]             any or all arguments within [ ] are optional.

       -a|-b              options   delimited   by   |  cannot  be  used
                          together.
       argument ...       argument is repeatable.
       [expression] ...   entire expression within [ ] is repeatable.

       Exact rendering may vary depending on  the  output  device.   For
       instance,  man  will  usually  not be able to render italics when
       running in a terminal,  and  will  typically  use  underlined  or
       coloured text instead.

       The  command  or  function  illustration is a pattern that should
       match all possible invocations.  In some cases it is advisable to
       illustrate  several exclusive invocations as is shown in the SYN‐
       OPSIS section of this manual page.

EXAMPLES
       man ls
           Display the manual page for the item (program) ls.

       man man.7
           Display the manual page for macro package man from section 7.

       man -a intro
           Display, in succession, all of  the  available  intro  manual
           pages  contained  within  the manual.  It is possible to quit
           between successive displays or skip any of them.

       man -t alias | lpr -Pps
           Format the manual page referenced by `alias', usually a shell
           manual  page, into the default troff or groff format and pipe
           it to the printer named ps.  The default output for groff  is
           usually  PostScript.   man  --help  should advise as to which
           processor is bound to the -t option.

       man -l -Tdvi ./foo.1x.gz > ./foo.1x.dvi
           This command will decompress and format the nroff source man‐
           ual  page  ./foo.1x.gz  into a device independent (dvi) file.
           The redirection is necessary as the -T flag causes output  to
           be  directed  to  stdout  with no pager.  The output could be
           viewed with a program such as xdvi or further processed  into
           PostScript using a program such as dvips.

       man -k printf
           Search  the  short descriptions and manual page names for the
           keyword printf as regular expression.  Print out any matches.
           Equivalent to apropos printf.

       man -f smail
           Lookup the manual pages referenced by smail and print out the
           short descriptions of any found.  Equivalent to whatis smail.

OVERVIEW
       Many options are available to man in order to give as much flexi‐
       bility  as  possible  to  the  user.   Changes can be made to the
       search path, section order, output processor,  and  other  behav‐
       iours and operations detailed below.

       If  set, various environment variables are interrogated to deter‐
       mine the operation of man.  It is possible to set the `catch all'
       variable  $MANOPT  to  any string in command line format with the
       exception that any spaces used as part of  an  option's  argument
       must  be  escaped  (preceded  by  a  backslash).   man will parse
       $MANOPT prior to parsing its own  command  line.   Those  options
       requiring  an  argument  will  be  overridden by the same options
       found on the command line.  To reset all of the  options  set  in
       $MANOPT,  -D can be specified as the initial command line option.
       This will allow man to `forget' about the  options  specified  in
       $MANOPT although they must still have been valid.

       The  manual pager utilities packaged as man-db make extensive use
       of index database caches.  These caches contain information  such
       as where each manual page can be found on the filesystem and what
       its whatis (short one line description of the man page) contains,
       and allow man to run faster than if it had to search the filesys‐
       tem each time to find the appropriate manual page.  If  requested
       using  the -u option, man will ensure that the caches remain con‐
       sistent, which can obviate the need to manually run  software  to
       update traditional whatis text databases.

       If man cannot find a mandb initiated index database for a partic‐
       ular  manual  page  hierarchy,  it  will  still  search  for  the
       requested  manual pages, although file globbing will be necessary
       to search within that hierarchy.  If whatis or apropos  fails  to
       find  an  index  it will try to extract information from a tradi‐
       tional whatis database instead.

       These utilities support compressed source nroff files having,  by
       default,  the  extensions  of  .Z, .z and .gz.  It is possible to
       deal with any compression extension, but this information must be
       known  at compile time.  Also, by default, any cat pages produced
       are compressed using gzip.  Each `global' manual  page  hierarchy
       such  as  /usr/share/man or /usr/X11R6/man may have any directory
       as its cat page  hierarchy.   Traditionally  the  cat  pages  are
       stored under the same hierarchy as the man pages, but for reasons
       such as those specified in the File Hierarchy Standard (FHS),  it
       may  be better to store them elsewhere.  For details on how to do
       this, please read manpath(5).  For details on  why  to  do  this,
       read the standard.

       International  support  is  available  with this package.  Native
       language manual pages are accessible (if available on  your  sys‐
       tem)  via  use of locale functions.  To activate such support, it
       is necessary to set either $LC_MESSAGES, $LANG or another  system
       dependent  environment  variable to your language locale, usually
       specified in the POSIX 1003.1 based format:

       <language>[_<territory>[.<character-set>[,<version>]]]

       If the desired page is available in your locale, it will be  dis‐
       played in lieu of the standard (usually American English) page.

       Support  for international message catalogues is also featured in
       this package and can be activated  in  the  same  way,  again  if
       available.   If  you find that the manual pages and message cata‐
       logues supplied with this  package  are  not  available  in  your
       native language and you would like to supply them, please contact
       the maintainer who will be coordinating such activity.

       For information regarding other features and extensions available
       with  this  manual pager, please read the documents supplied with
       the package.

DEFAULTS
       man will search for the desired manual  pages  within  the  index
       database  caches.  If the -u option is given, a cache consistency
       check is performed to ensure the databases accurately reflect the
       filesystem.   If this option is always given, it is not generally
       necessary to run mandb after the caches  are  initially  created,
       unless  a  cache becomes corrupt.  However, the cache consistency
       check can be slow on systems with many manual pages installed, so
       it  is  not  performed  by default, and system administrators may
       wish to run mandb every week or so to keep  the  database  caches
       fresh.  To forestall problems caused by outdated caches, man will
       fall back to file globbing if a cache lookup fails,  just  as  it
       would if no cache was present.

       Once a manual page has been located, a check is performed to find
       out if a relative preformatted `cat' file already exists  and  is
       newer  than the nroff file.  If it does and is, this preformatted
       file is (usually) decompressed and then displayed, via use  of  a
       pager.   The  pager can be specified in a number of ways, or else
       will fall back to a default is used (see option -P for  details).
       If  no cat is found or is older than the nroff file, the nroff is
       filtered through various programs and is shown immediately.

       If a cat file can be produced (a relative  cat  directory  exists
       and has appropriate permissions), man will compress and store the
       cat file in the background.

       The filters are deciphered by a number of  means.   Firstly,  the
       command line option -p or the environment variable $MANROFFSEQ is
       interrogated.  If -p was not used and  the  environment  variable
       was  not  set, the initial line of the nroff file is parsed for a
       preprocessor string.  To contain a valid preprocessor string, the
       first line must resemble

       '\" <string>

       where  string  can  be  any  combination  of letters described by
       option -p below.

       If none of the above methods provide any  filter  information,  a
       default set is used.

       A  formatting pipeline is formed from the filters and the primary
       formatter (nroff or [tg]roff with  -t)  and  executed.   Alterna‐
       tively,  if  an executable program mandb_nfmt (or mandb_tfmt with
       -t) exists in the man tree root, it is executed instead.  It gets
       passed  the  manual  source  file,  the  preprocessor string, and
       optionally the device specified with -T or -E as arguments.

OPTIONS
       Non argument options that are duplicated either  on  the  command
       line,  in  $MANOPT,  or  both, are not harmful.  For options that
       require an argument, each duplication will override the  previous
       argument value.

   General options
       -C file, --config-file=file
              Use  this  user configuration file rather than the default
              of ~/.manpath.

       -d, --debug
              Print debugging information.

       -D, --default
              This option is normally issued as the  very  first  option
              and  resets man's behaviour to its default.  Its use is to
              reset those options that may have  been  set  in  $MANOPT.
              Any options that follow -D will have their usual effect.

       --warnings[=warnings]
              Enable  warnings  from groff.  This may be used to perform
              sanity checks on the source text of manual  pages.   warn‐
              ings  is a comma-separated list of warning names; if it is
              not supplied, the default is "mac".   See  the  “Warnings”
              node in info groff for a list of available warning names.

   Main modes of operation
       -f, --whatis
              Equivalent  to  whatis.   Display a short description from
              the manual page, if available.  See whatis(1) for details.

       -k, --apropos
              Equivalent to  apropos.   Search  the  short  manual  page
              descriptions  for  keywords  and display any matches.  See
              apropos(1) for details.

       -K, --global-apropos
              Search for text in all manual pages.   This  is  a  brute-
              force search, and is likely to take some time; if you can,
              you should specify a section to reduce the number of pages
              that  need  to  be  searched.   Search terms may be simple
              strings (the  default),  or  regular  expressions  if  the
              --regex option is used.

              Note  that  this searches the sources of the manual pages,
              not the rendered text, and so may include false  positives
              due  to  things  like comments in source files.  Searching
              the rendered text would be much slower.

       -l, --local-file
              Activate `local' mode.  Format and  display  local  manual
              files  instead  of  searching  through the system's manual
              collection.  Each manual page argument will be interpreted
              as  an  nroff  source  file in the correct format.  No cat
              file is produced.  If '-' is listed as one  of  the  argu‐
              ments,  input  will be taken from stdin.  When this option
              is not used, and man fails  to  find  the  page  required,
              before displaying the error message, it attempts to act as
              if this option was supplied, using the name as a  filename
              and looking for an exact match.

       -w, --where, --path, --location
              Don't  actually display the manual pages, but do print the
              location(s) of the source nroff files that would  be  for‐
              matted.

       -W, --where-cat, --location-cat
              Don't  actually display the manual pages, but do print the
              location(s) of the cat files that would be displayed.   If
              -w  and  -W  are both specified, print both separated by a
              space.

       -c, --catman
              This option is not for general use and should only be used
              by the catman program.

       -R encoding, --recode=encoding
              Instead  of  formatting  the manual page in the usual way,
              output its source converted to the specified encoding.  If
              you  already know the encoding of the source file, you can
              also use manconv(1) directly.  However, this option allows
              you  to  convert several manual pages to a single encoding
              without having to explicitly state the encoding  of  each,
              provided  that  they were already installed in a structure
              similar to a manual page hierarchy.

   Finding manual pages
       -L locale, --locale=locale
              man will normally determine your current locale by a  call
              to  the C function setlocale(3) which interrogates various
              environment variables, possibly including $LC_MESSAGES and
              $LANG.   To temporarily override the determined value, use
              this option to supply a locale  string  directly  to  man.
              Note  that  it  will  not take effect until the search for
              pages actually begins.  Output such as  the  help  message
              will  always  be  displayed  in  the  initially determined
              locale.

       -m system[,...], --systems=system[,...]
              If this system has access to other operating system's man‐
              ual  pages,  they  can  be accessed using this option.  To
              search for a manual page from NewOS's manual page  collec‐
              tion, use the option -m NewOS.

              The  system specified can be a combination of comma delim‐
              ited operating system names.  To include a search  of  the
              native operating system's manual pages, include the system
              name man in the argument string.  This option  will  over‐
              ride the $SYSTEM environment variable.

       -M path, --manpath=path
              Specify an alternate manpath to use.  By default, man uses
              manpath derived code to  determine  the  path  to  search.
              This  option  overrides  the $MANPATH environment variable
              and causes option -m to be ignored.

              A path specified as a manpath must be the root of a manual
              page  hierarchy  structured  into sections as described in
              the man-db manual (under "The manual  page  system").   To
              view  manual  pages  outside  such hierarchies, see the -l
              option.

       -S list, -s list, --sections=list
              List is a colon- or comma-separated list  of  `order  spe‐
              cific'  manual  sections to search.  This option overrides
              the $MANSECT environment variable.  (The  -s  spelling  is
              for compatibility with System V.)

       -e sub-extension, --extension=sub-extension
              Some  systems  incorporate large packages of manual pages,
              such as those that accompany the  Tcl  package,  into  the
              main  manual page hierarchy.  To get around the problem of
              having two  manual  pages  with  the  same  name  such  as
              exit(3),  the  Tcl pages were usually all assigned to sec‐
              tion l.  As this is unfortunate, it is now possible to put
              the pages in the correct section, and to assign a specific
              `extension' to them, in this case, exit(3tcl).  Under nor‐
              mal  operation,  man will display exit(3) in preference to
              exit(3tcl).  To negotiate this situation and to avoid hav‐
              ing to know which section the page you require resides in,
              it is now possible to  give  man  a  sub-extension  string
              indicating  which  package the page must belong to.  Using
              the above example, supplying the option -e tcl to man will
              restrict the search to pages having an extension of *tcl.

       -i, --ignore-case
              Ignore  case when searching for manual pages.  This is the
              default.

       -I, --match-case
              Search for manual pages case-sensitively.

       --regex
              Show all pages with any part  of  either  their  names  or
              their  descriptions matching each page argument as a regu‐
              lar expression, as with apropos(1).  Since there  is  usu‐
              ally  no reasonable way to pick a "best" page when search‐
              ing for a regular expression, this option implies -a.

       --wildcard
              Show all pages with any part  of  either  their  names  or
              their  descriptions  matching  each  page  argument  using
              shell-style wildcards, as with apropos(1) --wildcard.  The
              page  argument  must match the entire name or description,
              or match on word boundaries  in  the  description.   Since
              there  is  usually no reasonable way to pick a "best" page
              when searching for a wildcard, this option implies -a.

       --names-only
              If the --regex or --wildcard option is  used,  match  only
              page  names,  not  page  descriptions,  as with whatis(1).
              Otherwise, no effect.

       -a, --all
              By default, man will exit after displaying the most  suit‐
              able  manual  page it finds.  Using this option forces man
              to display all the manual pages with names that match  the
              search criteria.

       -u, --update
              This option causes man to perform an `inode level' consis‐
              tency check on its database caches to ensure that they are
              an  accurate  representation  of  the filesystem.  It will
              only have a useful effect if man  is  installed  with  the
              setuid bit set.

       --no-subpages
              By default, man will try to interpret pairs of manual page
              names given on the command line as equivalent to a  single
              manual  page  name  containing  a hyphen or an underscore.
              This supports the common pattern of programs  that  imple‐
              ment  a  number  of  subcommands, allowing them to provide
              manual pages for each that can be accessed  using  similar
              syntax  as  would  be used to invoke the subcommands them‐
              selves.  For example:

                $ man -aw git diff
                /usr/share/man/man1/git-diff.1.gz

              To disable this behaviour, use the --no-subpages option.

                $ man -aw --no-subpages git diff
                /usr/share/man/man1/git.1.gz
                /usr/share/man/man3/Git.3pm.gz
                /usr/share/man/man1/diff.1.gz

   Controlling formatted output
       -P pager, --pager=pager
              Specify which output pager to use.  By default,  man  uses
              pager.   This  option  overrides the $MANPAGER environment
              variable, which in turn overrides the  $PAGER  environment
              variable.  It is not used in conjunction with -f or -k.

              The  value  may be a simple command name or a command with
              arguments, and may use shell quoting (backslashes,  single
              quotes,  or  double quotes).  It may not use pipes to con‐
              nect multiple commands; if you need that,  use  a  wrapper
              script,  which  may  take the file to display either as an
              argument or on standard input.

       -r prompt, --prompt=prompt
              If a recent version of less is used as the pager, man will
              attempt  to set its prompt and some sensible options.  The
              default prompt looks like

               Manual page name(sec) line x

              where name denotes the manual page name, sec  denotes  the
              section  it was found under and x the current line number.
              This is achieved by using the $LESS environment variable.

              Supplying -r with a string  will  override  this  default.
              The  string  may  contain  the  text $MAN_PN which will be
              expanded to the name of the current manual  page  and  its
              section  name  surrounded by `(' and `)'.  The string used
              to produce the default could be expressed as

              \ Manual\ page\ \$MAN_PN\ ?ltline\ %lt?L/%L.:
              byte\ %bB?s/%s..?\ (END):?pB\ %pB\\%..
              (press h for help or q to quit)

              It is broken into three lines here for the sake  of  read‐
              ability  only.   For  its  meaning  see the less(1) manual
              page.  The prompt string is first evaluated by the  shell.
              All  double  quotes,  back-quotes  and  backslashes in the
              prompt must be escaped  by  a  preceding  backslash.   The
              prompt  string  may  end in an escaped $ which may be fol‐
              lowed by further options for less.  By  default  man  sets
              the -ix8 options.

              The  $MANLESS  environment variable described below may be
              used to set a default prompt string if none is supplied on
              the command line.

       -7, --ascii
              When viewing a pure ascii(7) manual page on a 7 bit termi‐
              nal or terminal emulator, some characters may not  display
              correctly when using the latin1(7) device description with
              GNU nroff.  This option allows pure ascii manual pages  to
              be displayed in ascii with the latin1 device.  It will not
              translate any latin1 text.  The following table shows  the
              translations  performed: some parts of it may only be dis‐
              played properly when using GNU nroff's latin1(7) device.

              Description      Octal   latin1   ascii
              ────────────────────────────────────────
              continuation      255      ‐        -
              hyphen
              bullet (middle    267      ·        o
              dot)
              acute accent      264      ´        '
              multiplication    327      ×        x
              sign

              If the latin1 column displays correctly, your terminal may
              be set up for latin1 characters and  this  option  is  not
              necessary.  If the latin1 and ascii columns are identical,
              you are reading this page using this option or man did not
              format  this page using the latin1 device description.  If
              the latin1 column is missing or corrupt, you may  need  to
              view manual pages with this option.

              This  option  is ignored when using options -t, -H, -T, or
              -Z and may be useless for nroff other than GNU's.

       -E encoding, --encoding=encoding
              Generate output for a character encoding  other  than  the
              default.   For  backward compatibility, encoding may be an
              nroff device such as ascii, latin1, or utf8 as well  as  a
              true character encoding such as UTF-8.

       --no-hyphenation, --nh
              Normally,  nroff will automatically hyphenate text at line
              breaks even in words that do not contain hyphens, if it is
              necessary  to  do  so  to  lay out words on a line without
              excessive spacing.  This option disables automatic hyphen‐
              ation,  so  words  will only be hyphenated if they already
              contain hyphens.

              If you are writing a manual page and simply want  to  pre‐
              vent  nroff  from  hyphenating  a word at an inappropriate
              point, do not use this option, but consult the nroff docu‐
              mentation instead; for instance, you can put "\%" inside a
              word to indicate that it may be hyphenated at that  point,
              or  put  "\%"  at  the  start of a word to prevent it from
              being hyphenated.

       --no-justification, --nj
              Normally, nroff will automatically justify  text  to  both
              margins.  This option disables full justification, leaving
              justified  only  to  the  left  margin,  sometimes  called
              "ragged-right" text.

              If  you  are writing a manual page and simply want to pre‐
              vent nroff from justifying certain paragraphs, do not  use
              this  option, but consult the nroff documentation instead;
              for instance, you can use the  ".na",  ".nf",  ".fi",  and
              ".ad"  requests to temporarily disable adjusting and fill‐
              ing.

       -p string, --preprocessor=string
              Specify the sequence of preprocessors to run before  nroff
              or  troff/groff.   Not  all installations will have a full
              set of preprocessors.  Some of the preprocessors  and  the
              letters used to designate them are: eqn (e), grap (g), pic
              (p), tbl (t), vgrind (v), refer (r).   This  option  over‐
              rides  the  $MANROFFSEQ  environment variable.  zsoelim is
              always run as the very first preprocessor.

       -t, --troff
              Use groff -mandoc to format the  manual  page  to  stdout.
              This option is not required in conjunction with -H, -T, or
              -Z.

       -T[device], --troff-device[=device]
              This option is used to change groff (or possibly  troff's)
              output to be suitable for a device other than the default.
              It  implies  -t.   Examples  (provided  with   Groff-1.17)
              include dvi, latin1, ps, utf8, X75 and X100.

       -H[browser], --html[=browser]
              This  option  will cause groff to produce HTML output, and
              will display that output in a web browser.  The choice  of
              browser  is determined by the optional browser argument if
              one is provided, by the $BROWSER environment variable,  or
              by a compile-time default if that is unset (usually lynx).
              This option implies -t, and will only work with GNU troff.

       -X[dpi], --gxditview[=dpi]
              This option displays the output of groff  in  a  graphical
              window  using  the  gxditview  program.  The dpi (dots per
              inch) may be 75, 75-12, 100, or 100-12, defaulting to  75;
              the  -12  variants  use a 12-point base font.  This option
              implies -T with the X75, X75-12, X100, or  X100-12  device
              respectively.

       -Z, --ditroff
              groff will run troff and then use an appropriate post-pro‐
              cessor to produce output suitable for the  chosen  device.
              If  groff -mandoc is groff, this option is passed to groff
              and will suppress the use of a post-processor.  It implies
              -t.

   Getting help
       -?, --help
              Print a help message and exit.

       --usage
              Print a short usage message and exit.

       -V, --version
              Display version information.

EXIT STATUS
       0      Successful program execution.

       1      Usage, syntax or configuration file error.

       2      Operational error.

       3      A child process returned a non-zero exit status.

       16     At  least  one of the pages/files/keywords didn't exist or
              wasn't matched.

ENVIRONMENT
       MANPATH
              If $MANPATH is set, its value  is  used  as  the  path  to
              search for manual pages.

       MANROFFOPT
              The  contents of $MANROFFOPT are added to the command line
              every time man invokes the  formatter  (nroff,  troff,  or
              groff).

       MANROFFSEQ
              If  $MANROFFSEQ is set, its value is used to determine the
              set of preprocessors to pass  each  manual  page  through.
              The default preprocessor list is system dependent.

       MANSECT
              If $MANSECT is set, its value is a colon-delimited list of
              sections and it is used to determine which manual sections
              to  search and in what order.  The default is "1 n l 8 3 2
              3posix 3pm 3perl 3am 5 4 9 6 7", unless overridden by  the
              SECTION directive in /etc/manpath.config.

       MANPAGER, PAGER
              If  $MANPAGER or $PAGER is set ($MANPAGER is used in pref‐
              erence), its value is used as the name of the program used
              to display the manual page.  By default, pager is used.

              The  value  may be a simple command name or a command with
              arguments, and may use shell quoting (backslashes,  single
              quotes,  or  double quotes).  It may not use pipes to con‐
              nect multiple commands; if you need that,  use  a  wrapper
              script,  which  may  take the file to display either as an
              argument or on standard input.

       MANLESS
              If $MANLESS is set, its value will be used as the  default
              prompt string for the less pager, as if it had been passed
              using the -r  option  (so  any  occurrences  of  the  text
              $MAN_PN  will  be expanded in the same way).  For example,
              if you want to set the prompt  string  unconditionally  to
              “my prompt string”, set $MANLESS to ‘-Psmy prompt string’.
              Using the -r option overrides this environment variable.

       BROWSER
              If $BROWSER is set, its value is a colon-delimited list of
              commands,  each of which in turn is used to try to start a
              web browser for  man  --html.   In  each  command,  %s  is
              replaced  by  a  filename  containing the HTML output from
              groff, %% is replaced by a single percent sign (%), and %c
              is replaced by a colon (:).

       SYSTEM If  $SYSTEM  is set, it will have the same effect as if it
              had been specified as the argument to the -m option.

       MANOPT If $MANOPT is set, it will be parsed prior to  man's  com‐
              mand  line  and is expected to be in a similar format.  As
              all of the other man specific environment variables can be
              expressed as command line options, and are thus candidates
              for being included in $MANOPT it  is  expected  that  they
              will  become  obsolete.   N.B.   All spaces that should be
              interpreted as  part  of  an  option's  argument  must  be
              escaped.

       MANWIDTH
              If  $MANWIDTH is set, its value is used as the line length
              for which manual pages should be formatted.  If it is  not
              set,  manual  pages  will  be formatted with a line length
              appropriate to the current terminal (using  the  value  of
              $COLUMNS,  an ioctl(2) if available, or falling back to 80
              characters if neither is available).  Cat pages will  only
              be  saved when the default formatting can be used, that is
              when the terminal line length is between 66 and 80 charac‐
              ters.

       MAN_KEEP_FORMATTING
              Normally,  when output is not being directed to a terminal
              (such as to a file or a pipe), formatting  characters  are
              discarded  to  make  it  easier to read the result without
              special tools.  However, if $MAN_KEEP_FORMATTING is set to
              any  non-empty  value,  these  formatting  characters  are
              retained.  This may be useful for wrappers around man that
              can interpret formatting characters.

       MAN_KEEP_STDERR
              Normally,  when  output  is  being  directed to a terminal
              (usually to a pager), any error output  from  the  command
              used to produce formatted versions of manual pages is dis‐
              carded to avoid  interfering  with  the  pager's  display.
              Programs  such  as  groff  often  produce relatively minor
              error messages about typographical problems such  as  poor
              alignment,  which  are  unsightly  and generally confusing
              when displayed along with the manual page.  However,  some
              users  want to see them anyway, so, if $MAN_KEEP_STDERR is
              set to any non-empty value, error output will be displayed
              as usual.

       LANG, LC_MESSAGES
              Depending  on system and implementation, either or both of
              $LANG and $LC_MESSAGES will be interrogated for  the  cur‐
              rent  message  locale.   man  will display its messages in
              that locale (if available).  See setlocale(3) for  precise
              details.

FILES
       /etc/manpath.config
              man-db configuration file.

       /usr/share/man
              A global manual page hierarchy.

       /usr/share/man/index.(bt|db|dir|pag)
              A traditional global index database cache.

       /var/cache/man/index.(bt|db|dir|pag)
              An FHS compliant global index database cache.

SEE ALSO
       apropos(1),  groff(1),  less(1),  manpath(1), nroff(1), troff(1),
       whatis(1),  zsoelim(1),   setlocale(3),   manpath(5),   ascii(7),
       latin1(7),  man(7),  catman(8), mandb(8), the man-db package man‐
       ual, FSSTND

HISTORY
       1990,   1991   –   Originally   written   by   John   W.    Eaton
       (j...@che.utexas.edu).

       Dec  23 1992: Rik Faith (fa...@cs.unc.edu) applied bug fixes sup‐
       plied by Willem Kasdorp (wka...@nikhefk.nikef.nl).

       30th April 1994 – 23rd February  2000:  Wilf.  (g.wilf...@ee.sur‐
       rey.ac.uk)  has been developing and maintaining this package with
       the help of a few dedicated people.

       30th October 1996 –  30th  March  2001:  Fabrizio  Polacco  <fpo‐
       la...@debian.org>  maintained  and  enhanced this package for the
       Debian project, with the help of all the community.

       31st March 2001 – present day: Colin Watson <cjwat...@debian.org>
       is now developing and maintaining man-db.

2.7.6.1                        2016-12-12                         MAN(1)
--priv_drop_count = 0
hashtable_free: 3 entries, 3 (100%) unique

Found 1 man pages
++priv_drop_count = 1
hashtable_free: 12 entries, 12 (100%) unique

Reply via email to