16

私の会社の猫がキーボードの上を歩き、1000 行以上の有効な実行可能 Perl コードを維持するために残してしまいました。

Perl の TMTOWTDI 哲学のおかげで、彼女が作成したコードのすべての行を理解するために Google を検索していることに気づきました。

私の悲惨さに加えて、コードはインデントされておらず、1行に2つのステートメントが頻繁に出現し、ループが外側か内側かを判断できません。

この Perl コードを正常な状態に自動設定するにはどうすればよいですか? はい、それを行うCPANモジュールがいくつかあるに違いありません。外部ツールはどうですか?手がかりはありますか?

4

5 に答える 5

23

Perl::Tidyそれを行うことができます。通常、perltidyインストールする実行可能ファイルを通じて使用されます。

于 2010-10-16T08:12:56.927 に答える
6

perltidyデフォルト以外の動作で使用する方法のいくつかの例を次に示します。

  • cuddled-elses(例} else {)を有効にし、すべての.plファイルの行の長さを300文字に制限します

    $ 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
    
于 2010-10-16T09:57:09.720 に答える
6

Perl Tidy は非常に便利なユーティリティです。それはオプションの不快な配列が付属しています。http://perltidy.sourceforge.net/およびhttp://perltidy.sourceforge.net/tutorial.html
にいくつかのガイダンスがあります。

たとえば-i=8、インデントするスペースの数をオーバーライドし (デフォルト = 4) -bl、新しい行に中括弧を配置します。

 if ( $something )
 {
     print ".....";
 }

コードのコピーで遊んで、どのオプションが一番好きかを確認することをお勧めします。

プラットフォームと好みに応じて、CPAN からインストールするか、http://perltidy.sourceforge.net/ のさまざまなオプションからインストールできます

于 2010-10-16T08:31:25.757 に答える
1

ほとんどの場合と同様に、CPAN を検索すると、Stack Overflow にログインするよりも早く答えが得られます。:)

この場合、他の人がすでに言及しているように、それはPerl::Tidyです。これについては、Effective Perl Programmingにも長いアドバイスがあります。

于 2010-10-16T19:12:40.373 に答える
0

オンライン ツールhttp://www.cleancss.com/perl-beautify/も使用できます。

于 2016-05-02T08:17:14.957 に答える