如何在Pod和perldoc中使用Unicode字符?

mal*_*tin 21 documentation unicode perl perldoc internationalization

我需要在perl文档中使用utf-8字符.如果我使用:

perldoc MyMod.pm
Run Code Online (Sandbox Code Playgroud)

我看到奇怪的人物.如果我使用:

pod2text MyMod.pm
Run Code Online (Sandbox Code Playgroud)

一切都好.

我使用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
Run Code Online (Sandbox Code Playgroud)

是否有关于在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)
Run Code Online (Sandbox Code Playgroud)

mor*_*itz 18

使用=encoding utf-8在你的文件的第一个POD指令,并使用一个相当新的perldoc(例如,从5.10-MAINT).然后它应该工作.


dra*_*tun 6

找到这张RT票.... http://rt.cpan.org/Public/Bug/Display.html?id=39000

这个"bug"似乎是用Perl 5.10引入的,也许这个pod2man --utf8需要使用.