我需要在perl文档中使用utf-8字符。 如果我使用:
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中使用特殊字符的方法?
这是一个使用德语变音符号的小例子“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)
答案 0 :(得分:18)
使用=encoding utf-8
作为文件中的第一个POD指令,并使用相当新的perldoc
(例如来自5.10-maint)。然后它应该工作。
答案 1 :(得分:6)
找到此RT票.... http://rt.cpan.org/Public/Bug/Display.html?id=39000
这个“bug”似乎是在Perl 5.10中引入的,也许这个pod2man --utf8需要使用。
答案 2 :(得分:0)
perldoc -t MyMod.pm
来自perldoc手册:
-t使用pod2text而不是Pod :: Man和groff显示pod(除非指定-n,否则-t是win32的默认值)