From bdc8a81a09382935d96c00828ce11f1414d410d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcela=20Ma=C5=A1l=C3=A1=C5=88ov=C3=A1?= Date: Thu, 16 Aug 2007 11:26:13 +0000 Subject: [PATCH] -Tascii | -Tlatin1 | -Tutf8 | -Tcp1047 | -Tascii8 | -Tnippon) weren't supported in nroff script. --- groff.spec | 6 +++++- nroff | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 61 insertions(+), 3 deletions(-) diff --git a/groff.spec b/groff.spec index 132cbed..a82e5c5 100644 --- a/groff.spec +++ b/groff.spec @@ -3,7 +3,7 @@ Summary: A document formatting system Name: groff Version: 1.18.1.4 -Release: 5%{?dist} +Release: 6%{?dist} License: GPL Group: Applications/Publishing URL: http://groff.ffii.org @@ -233,6 +233,10 @@ exit 0 %endif %changelog +* Thu Aug 16 2007 Marcela Maslanova - 1.18.1.4-6 +- another encoding are print correct with nroff +- Resolves: rhbz#251064 + * Mon Jul 2 2007 Marcela Maslanova - 1.18.1.4-5 - Resolves: rhbz#245934 diff --git a/nroff b/nroff index fb9d176..5588a4f 100644 --- a/nroff +++ b/nroff @@ -4,7 +4,52 @@ prog="$0" charset_in=iso-8859-1 charset_out=`locale charmap 2>/dev/null` -opts="-mtty-char -Tutf8" +opts= +othercoding=0 + +# Default device. +# First try the "locale charmap" command, because it's most reliable. +# On systems where it doesn't exist, look at the environment variables. +case "`locale charmap 2>/dev/null`" in + UTF-8) + T=-Tutf8 ;; + ISO-8859-1) + T=-Tlatin1 ;; + IBM-1047) + T=-Tcp1047 ;; + EUC-JP) + T=-Tnippon ;; + EUC-KR) + T=-Tkorean ;; + *) + case "${LC_ALL-${LC_CTYPE-${LANG}}}" in + *.UTF-8) + T=-Tutf8 ;; + iso_8859_1 | *.ISO-8859-1) + T=-Tlatin1 ;; + *.IBM-1047) + T=-Tcp1047 ;; + ja_JP.ujis | ja_JP.eucJP) + T=-Tnippon ;; + ko_KR.eucKR) + T=-Tkorean ;; + *) + case "$LESSCHARSET" in + utf-8) + T=-Tutf8 ;; + latin1) + T=-Tlatin1 ;; + cp1047) + T=-Tcp1047 ;; + japanese) + T=-Tnippon ;; + ko) + T=-Tkorean ;; + *) + T=-Tascii8 ;; + esac ;; + esac ;; +esac for i do @@ -13,7 +58,7 @@ do opts="$opts -P-c" ;; -h) opts="$opts -P-h" ;; - -[eq] | -s* | -u* | -T* ) + -[eq] | -s*) # ignore these options ;; -[mrnoT]) @@ -21,6 +66,12 @@ do exit 1 ;; -[iptSUC] | -[mrno]*) opts="$opts $1" ;; + -Tascii | -Tlatin1 | -Tutf8 | -Tcp1047 | -Tascii8 | -Tnippon | -Tkorean) + othercoding=1 + T=$1 ;; + -T*) + # ignore other devices + ;; -v | --version) echo $"GNU nroff (groff) with Red Hat i18n/l10n support" exit 0 ;; @@ -69,6 +120,9 @@ export LC_ALL=en_US.UTF-8 # This shell script is intended for use with man, so warnings are # probably not wanted. Also load nroff-style character definitions. +if [ "$othercoding" == 0 ]; then + opts="-mtty-char -Tutf8" +fi if [ $charset_in = utf-8 -a $charset_out = UTF-8 ]; then if [ $TMPFILE = buf ]; then