Как использовать символы Юникода в Pod и perldoc? - PullRequest
21 голосов
/ 16 октября 2008

Мне нужно использовать символы utf-8 в моей perl-документации. Если я использую:

perldoc MyMod.pm

Я вижу странные символы. Если я использую:

pod2text MyMod.pm

все хорошо.

Я использую 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

Есть ли HowTo об использовании специальных символов в Pod?

Вот небольшой пример использования умлаутов на немецком языке «Just a 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)

Ответы [ 3 ]

18 голосов
/ 16 октября 2008

Используйте =encoding utf-8 в качестве первой директивы POD в вашем файле и используйте довольно недавний perldoc (например, из 5.10-maint). Тогда это должно работать.

6 голосов
/ 16 октября 2008

Нашел этот RT билет .... http://rt.cpan.org/Public/Bug/Display.html?id=39000

Эта "ошибка", кажется, появилась в Perl 5.10, и, возможно, нужно использовать этот pod2man --utf8.

0 голосов
/ 17 мая 2017

perldoc -t MyMod.pm

Из руководства perldoc:

-t Показать pod, используя pod2text вместо Pod :: Man и groff (-t по умолчанию на win32, если не указан -n)

...