svn commit: r213470 - head/usr.bin/man
Gordon Tetlow
gordon at FreeBSD.org
Wed Oct 6 07:22:57 UTC 2010
Author: gordon
Date: Wed Oct 6 07:22:56 2010
New Revision: 213470
URL: http://svn.freebsd.org/changeset/base/213470
Log:
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)
Modified:
head/usr.bin/man/man.sh
Modified: head/usr.bin/man/man.sh
==============================================================================
--- head/usr.bin/man/man.sh Wed Oct 6 04:30:40 2010 (r213469)
+++ head/usr.bin/man/man.sh Wed Oct 6 07:22:56 2010 (r213470)
@@ -368,7 +368,9 @@ man_find_and_display() {
if find_file $p $sect $MACHINE "$1"; then
found_page=yes
man_display_page
- if [ -z "$aflag" ]; then
+ if [ -n "$aflag" ]; then
+ continue 2
+ else
return
fi
fi
@@ -378,7 +380,9 @@ man_find_and_display() {
if find_file $p $sect $MACHINE_ARCH "$1"; then
found_page=yes
man_display_page
- if [ -z "$aflag" ]; then
+ if [ -n "$aflag" ]; then
+ continue 2
+ else
return
fi
fi
@@ -387,7 +391,9 @@ man_find_and_display() {
if find_file $p $sect '' "$1"; then
found_page=yes
man_display_page
- if [ -z "$aflag" ]; then
+ if [ -n "$aflag" ]; then
+ continue 2
+ else
return
fi
fi
More information about the svn-src-all
mailing list