Package: par
Version: 1.51-1
Severity: important
Par does not handle UTF-8 multibyte characters properly. To introduce
this problem I made UTF-8 encoded text file of nonsense Finnish text
with some multibyte characters (ä's and ö's).
$ cat teksti.txt | par j
Tässä tyhjänpäiväinen virke, jonka avulla testaan, kuinka
ääkköset ja UTF-8 -koodaus toimivat par-työkalun kanssa. Tässä
tyhjänpäiväinen virke, jonka avulla testaan, kuinka ääkköset ja
UTF-8 -koodaus toimivat par-työkalun kanssa. Tässä tyhjänpäiväinen
virke, jonka avulla testaan, kuinka ääkköset ja UTF-8 -koodaus
toimivat par-työkalun kanssa. Tässä tyhjänpäiväinen virke, jonka
avulla testaan, kuinka ääkköset ja UTF-8 -koodaus toimivat
par-työkalun kanssa. Tässä tyhjänpäiväinen virke, jonka avulla
testaan, kuinka ääkköset ja UTF-8 -koodaus toimivat par-työkalun
kanssa. Tässä tyhjänpäiväinen virke, jonka avulla testaan, kuinka
ääkköset ja UTF-8 -koodaus toimivat par-työkalun kanssa. Tässä
tyhjänpäiväinen virke, jonka avulla testaan, kuinka ääkköset ja
UTF-8 -koodaus toimivat par-työkalun kanssa. Tässä tyhjänpäiväinen
virke, jonka avulla testaan, kuinka ääkköset ja UTF-8 -koodaus
toimivat par-työkalun kanssa. Tässä tyhjänpäiväinen virke, jonka
avulla testaan, kuinka ääkköset ja UTF-8 -koodaus toimivat
par-työkalun kanssa. Tässä tyhjänpäiväinen virke, jonka avulla
testaan, kuinka ääkköset ja UTF-8 -koodaus toimivat par-työkalun
kanssa. Tässä tyhjänpäiväinen virke, jonka avulla testaan, kuinka
ääkköset ja UTF-8 -koodaus toimivat par-työkalun kanssa.
If I convert this text to ISO-8859-15, use par to justify it, and then
convert it back to UTF-8 (just to make it show right), I get correct
justification. This is because all characters take one byte.
$ cat teksti.txt | iconv -f utf-8 -t iso-8859-15 | par j | iconv -f \
iso-8859-15 -t utf-8
Tässä tyhjänpäiväinen virke, jonka avulla testaan, kuinka ääkköset
ja UTF-8 -koodaus toimivat par-työkalun kanssa. Tässä tyhjänpäiväinen
virke, jonka avulla testaan, kuinka ääkköset ja UTF-8 -koodaus toimivat
par-työkalun kanssa. Tässä tyhjänpäiväinen virke, jonka avulla testaan,
kuinka ääkköset ja UTF-8 -koodaus toimivat par-työkalun kanssa. Tässä
tyhjänpäiväinen virke, jonka avulla testaan, kuinka ääkköset ja UTF-8
-koodaus toimivat par-työkalun kanssa. Tässä tyhjänpäiväinen virke,
jonka avulla testaan, kuinka ääkköset ja UTF-8 -koodaus toimivat
par-työkalun kanssa. Tässä tyhjänpäiväinen virke, jonka avulla testaan,
kuinka ääkköset ja UTF-8 -koodaus toimivat par-työkalun kanssa. Tässä
tyhjänpäiväinen virke, jonka avulla testaan, kuinka ääkköset ja UTF-8
-koodaus toimivat par-työkalun kanssa. Tässä tyhjänpäiväinen virke,
jonka avulla testaan, kuinka ääkköset ja UTF-8 -koodaus toimivat
par-työkalun kanssa. Tässä tyhjänpäiväinen virke, jonka avulla testaan,
kuinka ääkköset ja UTF-8 -koodaus toimivat par-työkalun kanssa. Tässä
tyhjänpäiväinen virke, jonka avulla testaan, kuinka ääkköset ja UTF-8
-koodaus toimivat par-työkalun kanssa. Tässä tyhjänpäiväinen virke,
jonka avulla testaan, kuinka ääkköset ja UTF-8 -koodaus toimivat
par-työkalun kanssa.
I think this problem is not only with left-right justifications but
with every occasion par tries to calculate lengths of words and lines
which contain UTF-8 multibyte characters. Therefore even the left
justification that I mostly use does not quite work as it should
(althougt it's still usable). The conversion I showed above maybe a
solution of some kind but of course not all the Unicode characters can
be converted to an 8 bit charset. So I guess this can be counted as a
bug.
Thanks
- TL
-- System Information:
Debian Release: 3.1
APT prefers testing
APT policy: (850, 'testing'), (800, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.8-2-k7
Locale: LANG=en_IE.UTF-8, LC_CTYPE=fi_FI.UTF-8 (charmap=UTF-8)
Versions of packages par depends on:
ii libc6 2.3.2.ds1-21 GNU C Library: Shared libraries an
-- no debconf information
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]