Подтвердить что ты не робот

Как использовать символы Unicode в Pod и perldoc?

Мне нужно использовать символы 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

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

Вот небольшой пример использования немецких умляутов "Просто тест: äöüßÄÖ":

$ 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)
4b9b3361

Ответ 1

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

Ответ 2

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

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

Ответ 3

perldoc -t MyMod.pm

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

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