Hallo beisammen.
Derzeit arbeite ich an meinem ersten
Opensource Projekt, für das ich mit
pod2man auch Linux manpages erstelle. Leider habe ich nun festgestellt, dass
Pod::Man sich dabei nicht um die Sonderzeichen (Umlaute) kümmert. So beobachte ich beispielsweise das Phänomen, dass die erzeugten Manpages verschieden behandelt werden. Dabei zeigt sich das ein direkter Aufruf der
groff Datei problemlos funktioniert, nachdem ich das Tool aber installiert habe zerhackt es mir die deutschen Umlaute. Bei der Installation werden die Manpages natürlich in die dafür vorgesehenen Ordner
/usr/share/man/man[15]/ kopiert.
Beispiel:
# Umlaute werden korrekt ausgegeben.
../docs $ man ./splitbox.1.gz
# Umlaute werden nicht korrekt ausgegeben.
~/ $ man splitbox
Nun bin ich auf der Mailingliste
ubuntu-de auf einen
Artikel gestoßen worden, der im Bezug auf englische "quotation marks" ein Problem in
Pod::Man behandelt, welches im mitgelieferten Modul von Perl 5.10 behoben sein soll. So habe ich also weitergesucht und bin auf ein, zwar schon sehr altes aber dennoch hilfreiches
Posting gestoßen, welches mir zumindest schon mal eine IMHO rudimentäre Lösung offenbarte.
Meine Lösung:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/bin/bash
# $1 == language (en/de)
# $2 == gz
SCRIPT=splitbox
VERSION=0.0.3
DOCS=/home/uwe/work/MyOpenSource/Perl/$SCRIPT/docs/$VERSION/$1
pod2man --section=1 --release=$VERSION $DOCS/$SCRIPT.pod ./$SCRIPT.1
pod2man --section=5 --release=$VERSION $DOCS/$SCRIPT.conf.pod ./$SCRIPT.conf.5
for i in ./$SCRIPT.1 ./$SCRIPT.conf.5; do
sed -e '1,$ s/ä/\\[char228]/g' $i > $i.new; mv $i.new $i
sed -e '1,$ s/ö/\\[char246]/g' $i > $i.new; mv $i.new $i
sed -e '1,$ s/ü/\\[char252]/g' $i > $i.new; mv $i.new $i
sed -e '1,$ s/Ä/\\[char196]/g' $i > $i.new; mv $i.new $i
sed -e '1,$ s/Ö/\\[char214]/g' $i > $i.new; mv $i.new $i
sed -e '1,$ s/Ü/\\[char220]/g' $i > $i.new; mv $i.new $i
sed -e '1,$ s/ß/\\[char223]/g' $i > $i.new; mv $i.new $i
done
if [ "$2" == "gz" ]; then
gzip ./$SCRIPT.1
gzip ./$SCRIPT.conf.5
fi
Dieser Ansatz erscheint mir jedoch etwas unbeholfen, wobei ich mir nun auch überlege, ob die Manpages auf einem Linux-System, dass keine UTF-8 Locales eingerichtet hat, korrekt ausgegeben werden.
Und an dieser Stelle möchte ich doch einmal nachfragen, welche Erfahrungen Ihr diesbezüglich gesammelt habt. Ich gehe einfach mal davon aus, dass unter Euch jemand ist, der auf ähnliche Probleme gestoßen ist, wenn es um die Manpage-Erstellung geht.
Herzliche Grüße
Uwe