2008-10-16 13 views
21

Potrzebuję używać utf-8 znaków w mojej perl-dokumentacji. Jeśli używam:Jak używać znaków Unicode w Pod i perldoc?

perldoc MyMod.pm 

Widzę dziwne postacie. Jeśli używam:

pod2text MyMod.pm 

wszystko jest w porządku.

Używam Ubuntu/Debian.

$ locale 
LANG=de_DE.UTF-8 
LC_CTYPE="de_DE.UTF-8" 
LC_NUMERIC="de_DE.UTF-8" 
LC_TIME="de_DE.UTF-8" 
LC_COLLATE="de_DE.UTF-8" 
LC_MONETARY="de_DE.UTF-8" 
LC_MESSAGES="de_DE.UTF-8" 
LC_PAPER="de_DE.UTF-8" 
LC_NAME="de_DE.UTF-8" 
LC_ADDRESS="de_DE.UTF-8" 
LC_TELEPHONE="de_DE.UTF-8" 
LC_MEASUREMENT="de_DE.UTF-8" 
LC_IDENTIFICATION="de_DE.UTF-8" 
LC_ALL=de_DE.UTF-8 

Czy istnieje pytanie dotyczące używania znaków specjalnych w Pod?

Oto mały przykład z wykorzystaniem niemieckich przegłosów "tylko test: äöüßÄÖ":

$ perldoc perl/MyMod.pm 
<standard input>:72: warning: can't find character with input code 159 
<standard input>:72: warning: can't find character with input code 150 
MyMod(3)    User Contributed Perl Documentation    MyMod(3) 

NAME 
     MyMod.pm - Just a Test: äöüÃÃà 

perl v5.10.0      2008-10-16       MyMod(3) 
+0

Jakie dziwne znaki? Znaki zapytania? Pudła? Dziwne kody formatowania ANSI? –

Odpowiedz

18

Użyj =encoding utf-8 jako pierwszej dyrektywy POD w pliku i użyj całkiem niedawnego perldoc (na przykład z 5.10-maint). To powinno działać.

+0

ta odpowiedź wydaje się być poprawna. Dziękuję Ci. znalazłem więcej szczegółów w "perldoc perlpod". – maletin

+0

Dokument wskazuje "= encoding utf8" zamiast "= encoding utf-8". Ale z 5.18 na Ubuntu wydaje się niepotrzebne, aw 5.16 na Mac OS X 10.10.4 wydaje się nie działać. – TextGeek

0

perldoc -t MyMod.pm

z podręcznika perldoc:

-t wyświetlanych pod korzystania pod2text zamiast Pod :: Man i groff (-t jest domyślnym na win32, chyba że podano -n)

Powiązane problemy