Commit Graph

62 Commits

Author SHA1 Message Date
Gordon Tetlow
deeff310cc Overhaul locale handling.
Use locale(1) to determine the locale instead of trying to hand roll it.
Correctly construct groff call based on charset and locale independently,
not the mix between the two.

Submitted by:	uqs@
2011-04-02 05:01:09 +00:00
Ulrich Spörlein
9b61837ada Use test(1) operators and test for the catpage not being older than the
manpage.

Identical mtimes (as generated by buildworld for these files) precluded
catpages from working.

Approved by:	gordon
2011-01-25 18:32:21 +00:00
Gordon Tetlow
82db8a5e35 Move sysctl invocation to using a variable that's fully pathed.
This prevents errors for users that don't have /sbin in their PATH.

Submitted by:	Max Boyarov
Approved by:	mentor (wes@ implicit)
2010-12-14 06:07:18 +00:00
Gordon Tetlow
57cd97175a Add ability to decompress different format manual pages.
Add support for .so directive in manual pages.

Approved by:	mentor (wes@)
2010-12-03 02:07:34 +00:00
Gordon Tetlow
3d9127f1bc Add the ability to display specific manual pages if passed on the
commandline. This mirrors the old (undocumented) GNU man functionality.
Also document this feature in the implementation notes section of
the manpage.

Submitted by:	arundel
Approved by:	wes (mentor implicit)
2010-10-07 06:34:47 +00:00
Gordon Tetlow
1d7c660a13 If LANG/LC_CTYPE/LC_ALL is set and the localized man page contains a page
also in the base set, the man utility when invoked with -a would display
pages for each locale in the same tree:

$ LANG=en_GB.ISO8859-15 man -wa man
/usr/share/man/en.ISO8859-15/man1/man.1.gz
/usr/share/man/man1/man.1.gz
/usr/share/man/en.ISO8859-15/man7/man.7.gz
/usr/share/man/man7/man.7.gz

Use continue to break out of the loop for the current locale. This results
in behavior more closely matching the old GNU man implementation:

$ LANG=en_GB.ISO8859-15 man -wa man
/usr/share/man/en.ISO8859-15/man1/man.1.gz
/usr/share/man/en.ISO8859-15/man7/man.7.gz

This will still search for a copy of the file in other manual path
locations. If there was a /usr/local/man/man1/man.1.gz file, it would still
be displayed. This is also consistent with the GNU man implementation.

Submitted by:	arundel
Approved by:	wes (mentor implicit)
2010-10-06 07:22:56 +00:00
Christian Brueffer
e809783da2 SEE ALSO should sorted by manpage section first. 2010-10-05 20:39:36 +00:00
Gordon Tetlow
7230d5e626 Add reference to intro(1) in SEE ALSO section.
PR:		docs/151216
Approved by:	wes (mentor, implicit)
2010-10-05 16:14:08 +00:00
Gordon Tetlow
00e05e697e Fix up whatis/apropos issue displaying all output on a single due to
forgotten quotes.

Submitted by:	Brandon Gooch
Approved by:	wes (mentor, implicit)
2010-10-02 06:55:04 +00:00
Gordon Tetlow
c535eb59d1 Implementaiton of man, manpath, whatis, and apropos written entirely in sh.
Features of this new version in favor of the old one:
BSD licensed -- old one is GPL.
Imports configuration from /etc/man.conf and LOCALBASE/etc/man.d/*.conf
allowing ports to extend the base functionality. The pluggable
configuration can supplement the manual search path (retiring use.perl),
add locales, and override language specific toolsets (attempt to merge
the japanese/man port into the base system as much as possible).

Much effort has been made to make this version mirror the functionality
of the existing implementation. For 99% of users, it should be a drop in
replacement.

PR:		gnu/143271, gnu/4419
Reviewed by:	dougb (previous versions)
Approved by:	wes (mentor)
2010-10-01 03:59:18 +00:00
Peter Wemm
65b3003d2d kill the undead 1997-07-13 14:26:00 +00:00
Bruce Evans
c44252b6e8 Finish importing Lite2's src/usr.bin, except for ex, diff, grep, mail,
pascal and vmstat.sparc.  All changed files on the vendor branch should
already have been imported.
1997-07-06 06:54:14 +00:00