我公司的一只猫走过了一个键盘,并留下了一行有效的1000多行可执行Perl代码供我维护。如何自动整理Perl源代码?
感谢Perl的TMTOWTDI理念,我发现自己正在搜索谷歌来理解她制作的每一行代码。
要添加到我的痛苦中,代码不会缩进,并且在一行中发现两个语句频繁出现,无法确定一个循环是外部还是内部。
我该如何自动将这个Perl代码搞清楚?是的,我敢打赌,会有一些CPAN模块可以做到这一点。如何一些外部工具?任何线索?
我公司的一只猫走过了一个键盘,并留下了一行有效的1000多行可执行Perl代码供我维护。如何自动整理Perl源代码?
感谢Perl的TMTOWTDI理念,我发现自己正在搜索谷歌来理解她制作的每一行代码。
要添加到我的痛苦中,代码不会缩进,并且在一行中发现两个语句频繁出现,无法确定一个循环是外部还是内部。
我该如何自动将这个Perl代码搞清楚?是的,我敢打赌,会有一些CPAN模块可以做到这一点。如何一些外部工具?任何线索?
Perl::Tidy
可以做到这一点,以及更多。它通常通过它安装的可执行文件perltidy
使用。
Perl Tidy是一个非常有用的工具。它配备了一系列令人信服的选项。
有一个在http://perltidy.sourceforge.net/和http://perltidy.sourceforge.net/tutorial.html
例如-i=8
一些指导会取代的空格数缩进(默认值= 4)和-bl
把括号在新行:
if ($something)
{
print ".....";
}
我建议玩代码的副本并查看您最喜欢的选项。
您可以从CPAN安装它,或根据您的平台和品味在http://perltidy.sourceforge.net/上更改其他选项!
下面是如何使用perltidy
使用非默认行为的几个例子:
启用拥抱,别人的(如} else {
),限行长度超过300个字符的所有.pl文件
$ perltidy -ce -l=300 *.pl
维护老逗号断点,在script.pl冻结现有的空格
$ perltidy -boc -fws script.pl
备份脚本,然后修改script1.pl,script2.pl就地
$ perltidy -b script1.pl script2.pl
“模糊处理”脚本通过剥离它尽可能多的空白尽可能的。
$ perltidy --mangle scipt.pl
与大多数事情一样,如果你search CPAN,你有你的答案的速度比它需要你登录到堆栈溢出。 :)
在这种情况下,它是Perl::Tidy其他人已经提到过。我们在有效的Perl编程也有一些关于这方面的建议。
您也可以使用在线工具http://www.cleancss.com/perl-beautify/。
-1为闹闹 – MkV 2010-10-16 08:56:44
@MkV伤害 – 2010-10-16 09:05:26
+1为闹事:) – ttvd 2010-10-16 13:22:19