PerlTidy的中文问题[转]

来源:互联网 发布:大数据需要学什么 编辑:程序博客网 时间:2024/05/22 14:16

名 称:PerlTidy的中文问题
出 处:中国Perl协会 FPC
作 者:[[chiesa]]
审 效:[[alexe]]
Perlchina提醒您:请保护作者的著作权,维护作者劳动的结晶。
(作者最后更新:2005/9/12)

"PerlTidy":http://search.cpan.org/~shancock/Perl-Tidy-20031021/. 是perl代码的美化工具。

常见使用方法:

perltidy -b *.pl

PerlTidy还可以将代码转化为html文档,用法是:


perltidy -html test.pl

但是在转化过程中发现如果代码中出现中文,那么转化出来的html中会出现乱码。

察看PerlTidy的代码,问题出在Perl::Tidy 库中。

在tidy.pm的4816行,有如下代码:

HTML::Entities::encode_entities($token);

问题就出在这里,中文字符在这里被转码。

将其修改成:


HTML::Entities::encode_entities($token,'<>&"');

即可。

--------------------------------------------------------------------------------------------------------------

加个Windows下安Perl-Tidy的命令,自己记性不好,总忘...

ppm> s tidy
Searching in Active Repositories
  1. Exporter-Tidy        [0.06] Another way of exporting symbols
  2. Perl-Tidy      [20031021.0] indent and reformat perl scripts
  3. XML-Tidy      [1.2.54HJnFa] tidy indenting of XML documents
  4. XML-Tidy      [1.2.54HJnFa] tidy indenting of XML documents
ppm> install Perl-Tidy
====================
Install 'Perl-Tidy' version 20031021.0 in ActivePerl 5.8.4.810.
====================
Downloaded 298342 bytes.
Extracting 9/9: blib/arch/auto/Perl/Tidy/.exists
Installing C:/Perl/html/bin/perltidy.html
Installing C:/Perl/html/site/lib/Perl/Tidy.html
Installing C:/Perl/site/lib/Perl/Tidy.pm
Installing C:/Perl/bin/perltidy
Installing C:/Perl/bin/perltidy.bat
Successfully installed Perl-Tidy version 20031021.0 in ActivePerl 5.8.4.810.
ppm> q

原创粉丝点击