Package: man-db
Version: 2.5.5-2
Severity: normal
When a manual page declares the ISO-8859-2 encoding, "\('o" is rendered
as "o", although ISO-8859-2 does include the "ó" character.
$ ./test-encodings UTF-8 ISO-8859-1 ISO-8859-2
UTF-8: ó = ó
ISO-8859-1: ó = ó
ISO-8859-2: o = ó
-- System Information:
Debian Release: squeeze/sid
APT prefers unstable
APT policy: (900, 'unstable'), (500, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.29-2-686 (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=pl_PL.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages man-db depends on:
ii bsdmainutils 6.1.10 collection of more utilities from
ii debconf [debconf-2.0] 1.5.26 Debian configuration management sy
ii dpkg 1.15.2 Debian package management system
ii groff-base 1.18.1.1-22 GNU troff text-formatting system (
ii libc6 2.9-16 GNU C Library: Shared libraries
ii libgdbm3 1.8.3-4 GNU dbm database routines (runtime
ii zlib1g 1:1.2.3.3.dfsg-13 compression library - runtime
man-db recommends no packages.
Versions of packages man-db suggests:
ii elinks [www-browser] 0.12~pre4-1 advanced text-mode WWW browser
ii groff 1.18.1.1-22 GNU troff text-formatting system
ii iceweasel [www-browser] 3.0.11-1 lightweight web browser based on M
ii less 429-2 pager program similar to more
ii w3m [www-browser] 0.5.2-2+b1 WWW browsable pager with excellent
-- debconf-show failed
--
Jakub Wilk
#!/bin/sh
tmpfile=`mktemp`
for encoding in "$@"
do
echo "'\\\" -*- coding: $encoding -*-" > "$tmpfile"
echo "$encoding: \\('o = Ăł" | iconv -f UTF-8 -t $encoding >> "$tmpfile"
man --debug -l "$tmpfile" 2>debug.$encoding
done
rm -f -- "$tmpfile"
ruid=500, euid=500
++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/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 `/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 `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/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'
`/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'
`5' `' `-5'
`4' `' `-5'
`9' `' `-5'
`6' `' `-5'
`7' `' `-5'
is a tty
real user = 500; effective user = 500
using pager -s as pager
++priv_drop_count = 2
chdir /home/jwilk/trunk/bugs/man-db
Starting pipeline: [input: {0, /tmp/tmp.W6mzqY9HNM}, output: {-1, NULL}]
pre-processors `-*- coding: ISO-8859-1 -*-' from file
preprocessor encoding: ISO-8859-1
page_encoding = ISO-8859-1
source_encoding = ISO-8859-1
cat_charset = ANSI_X3.4-1968
locale_charset = UTF-8
roff_device (locale) = utf8
roff_encoding = ISO-8859-1
output_encoding = UTF-8
less_charset = utf-8
Terminal width 160
Terminal width 160 not within cat page range [80, 80]
Using 156-character lines
format: 1, save_cat: 0, found: 1
Setting LESS to -ix8RmPm Manual page tmp\.W6mzqY9HNM ?ltline %lt?L/%L.:byte
%bB?s/%s..?e (END):?pB %pB\%..$PM Manual page tmp\.W6mzqY9HNM ?ltline
%lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB\%..$
Setting MAN_PN to tmp\.W6mzqY9HNM
++priv_drop_count = 3
Starting pipeline: /usr/bin/zsoelim | /usr/lib/man-db/manconv -f
UTF-8:ISO-8859-1 -t ISO-8859-1//IGNORE | nroff -mandoc -rLL=156n -rLT=156n
-Tutf8 [input: {-1, NULL}, output: {-1, NULL}]
Started "/usr/bin/zsoelim", pid 1782
Started "/usr/lib/man-db/manconv -f UTF-8:ISO-8859-1 -t ISO-8859-1//IGNORE",
pid 1783
Started "nroff", pid 1786
Starting pipeline: pager -s [input: {-1, NULL}, output: {0, NULL}]
Started "pager", pid 1787
source pipeline 0 returned error or EOF
source pipeline 1 returned error or EOF
Waiting for pipeline: [input: {0, /tmp/tmp.W6mzqY9HNM}, output: {-1, NULL}]
Waiting for pipeline: /usr/bin/zsoelim | /usr/lib/man-db/manconv -f
UTF-8:ISO-8859-1 -t ISO-8859-1//IGNORE | nroff -mandoc -rLL=156n -rLT=156n
-Tutf8 [input: {-1, NULL}, output: {-1, NULL}]
Active processes (3):
"/usr/bin/zsoelim" (1782) -> 0
"/usr/lib/man-db/manconv -f UTF-8:ISO-8859-1 -t ISO-8859-1//IGNORE" (1783) -> 0
"nroff" (1786) -> 0
Waiting for pipeline: pager -s [input: {-1, NULL}, output: {0, NULL}]
Active processes (1):
"pager" (1787) -> -1
Active processes (1):
"pager" (1787) -> 0
--priv_drop_count = 2
--priv_drop_count = 1
ruid=500, euid=500
++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/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 `/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 `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/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'
`/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'
`5' `' `-5'
`4' `' `-5'
`9' `' `-5'
`6' `' `-5'
`7' `' `-5'
is a tty
real user = 500; effective user = 500
using pager -s as pager
++priv_drop_count = 2
chdir /home/jwilk/trunk/bugs/man-db
Starting pipeline: [input: {0, /tmp/tmp.W6mzqY9HNM}, output: {-1, NULL}]
pre-processors `-*- coding: ISO-8859-2 -*-' from file
preprocessor encoding: ISO-8859-2
page_encoding = ISO-8859-2
source_encoding = ISO-8859-2
cat_charset = ANSI_X3.4-1968
locale_charset = UTF-8
roff_device (locale) = ascii8
roff_encoding = ISO-8859-2
output_encoding = ISO-8859-2
less_charset = utf-8
Terminal width 160
Terminal width 160 not within cat page range [80, 80]
Using 156-character lines
format: 1, save_cat: 0, found: 1
Setting LESS to -ix8RmPm Manual page tmp\.W6mzqY9HNM ?ltline %lt?L/%L.:byte
%bB?s/%s..?e (END):?pB %pB\%..$PM Manual page tmp\.W6mzqY9HNM ?ltline
%lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB\%..$
Setting MAN_PN to tmp\.W6mzqY9HNM
++priv_drop_count = 3
Starting pipeline: /usr/bin/zsoelim | /usr/lib/man-db/manconv -f
UTF-8:ISO-8859-2 -t ISO-8859-2//IGNORE | nroff -mandoc -rLL=156n -rLT=156n
-Tascii8 | iconv -c -f ISO-8859-2 -t UTF-8//TRANSLIT [input: {-1, NULL},
output: {-1, NULL}]
Started "/usr/bin/zsoelim", pid 1795
Started "/usr/lib/man-db/manconv -f UTF-8:ISO-8859-2 -t ISO-8859-2//IGNORE",
pid 1796
Started "nroff", pid 1799
Started "iconv", pid 1800
Starting pipeline: pager -s [input: {-1, NULL}, output: {0, NULL}]
Started "pager", pid 1802
source pipeline 0 returned error or EOF
source pipeline 1 returned error or EOF
Waiting for pipeline: [input: {0, /tmp/tmp.W6mzqY9HNM}, output: {-1, NULL}]
Waiting for pipeline: /usr/bin/zsoelim | /usr/lib/man-db/manconv -f
UTF-8:ISO-8859-2 -t ISO-8859-2//IGNORE | nroff -mandoc -rLL=156n -rLT=156n
-Tascii8 | iconv -c -f ISO-8859-2 -t UTF-8//TRANSLIT [input: {-1, NULL},
output: {-1, NULL}]
Active processes (4):
"/usr/bin/zsoelim" (1795) -> 0
"/usr/lib/man-db/manconv -f UTF-8:ISO-8859-2 -t ISO-8859-2//IGNORE" (1796) -> 0
"nroff" (1799) -> 0
"iconv" (1800) -> 0
Waiting for pipeline: pager -s [input: {-1, NULL}, output: {0, NULL}]
Active processes (1):
"pager" (1802) -> -1
Active processes (1):
"pager" (1802) -> 0
--priv_drop_count = 2
--priv_drop_count = 1
ruid=500, euid=500
++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/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 `/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 `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/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'
`/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'
`5' `' `-5'
`4' `' `-5'
`9' `' `-5'
`6' `' `-5'
`7' `' `-5'
is a tty
real user = 500; effective user = 500
using pager -s as pager
++priv_drop_count = 2
chdir /home/jwilk/trunk/bugs/man-db
Starting pipeline: [input: {0, /tmp/tmp.W6mzqY9HNM}, output: {-1, NULL}]
pre-processors `-*- coding: UTF-8 -*-' from file
preprocessor encoding: UTF-8
page_encoding = UTF-8
source_encoding = ISO-8859-1
cat_charset = ANSI_X3.4-1968
locale_charset = UTF-8
roff_device (locale) = utf8
roff_encoding = ISO-8859-1
output_encoding = UTF-8
less_charset = utf-8
Terminal width 160
Terminal width 160 not within cat page range [80, 80]
Using 156-character lines
format: 1, save_cat: 0, found: 1
Setting LESS to -ix8RmPm Manual page tmp\.W6mzqY9HNM ?ltline %lt?L/%L.:byte
%bB?s/%s..?e (END):?pB %pB\%..$PM Manual page tmp\.W6mzqY9HNM ?ltline
%lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB\%..$
Setting MAN_PN to tmp\.W6mzqY9HNM
++priv_drop_count = 3
Starting pipeline: /usr/bin/zsoelim | /usr/lib/man-db/manconv -f UTF-8 -t
ISO-8859-1//IGNORE | nroff -mandoc -rLL=156n -rLT=156n -Tutf8 [input: {-1,
NULL}, output: {-1, NULL}]
Started "/usr/bin/zsoelim", pid 1769
Started "/usr/lib/man-db/manconv -f UTF-8 -t ISO-8859-1//IGNORE", pid 1770
Started "nroff", pid 1773
Starting pipeline: pager -s [input: {-1, NULL}, output: {0, NULL}]
Started "pager", pid 1774
source pipeline 0 returned error or EOF
source pipeline 1 returned error or EOF
Waiting for pipeline: [input: {0, /tmp/tmp.W6mzqY9HNM}, output: {-1, NULL}]
Waiting for pipeline: /usr/bin/zsoelim | /usr/lib/man-db/manconv -f UTF-8 -t
ISO-8859-1//IGNORE | nroff -mandoc -rLL=156n -rLT=156n -Tutf8 [input: {-1,
NULL}, output: {-1, NULL}]
Active processes (3):
"/usr/bin/zsoelim" (1769) -> 0
"/usr/lib/man-db/manconv -f UTF-8 -t ISO-8859-1//IGNORE" (1770) -> 0
"nroff" (1773) -> -1
Active processes (1):
"nroff" (1773) -> 0
Waiting for pipeline: pager -s [input: {-1, NULL}, output: {0, NULL}]
Active processes (1):
"pager" (1774) -> -1
Active processes (1):
"pager" (1774) -> 0
--priv_drop_count = 2
--priv_drop_count = 1