万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

Unity Advent Calendar 2012 24日目 Title:「UnityScriptもコード整形できるか?」

URL: http://atnd.org/events/34621

仕方なくUnityScriptをお使いの方は多々いると思います。
コード整形には苦労しますね。なんせ独自言語なので。
C#とかならMonoDevelopのデフォルトでついてるし、Booならpep8が便利

これらの2つで試しました。

JavaScriptのコード整形&色付け(貼り付け用)
※JsDecoderというのを使っています。公式はなくなってみたいです。ブラウザ上でできる。
http://www.enjoyxstudy.com/misc/20060911/code_paste.html

・jsbeautifier
※英語のサイトです。ブラウザ上でできる。
http://jsbeautifier.org/


まず、最初のサイトは
・元のコード

class Person {
   var species : String;
   var eyeColor : String;
   var hairColor : String;
   function Person(eyeColor : String) {
      species = "homo sapiens";
      this.eyeColor = eyeColor;
      hairColor = "brown";
   }
}

・結果

class Person 
{
    var species : String;
    var eyeColor : String;
    var hairColor : String;
    function Person(eyeColor : String) 
    {
        species = "homo sapiens";
        this.eyeColor = eyeColor;
        hairColor = "brown";
    }
}

うん!なかなか良い感じ?

しかし、↓のように":"の左右にスペースけしたり、")"の前にスペース入れると

function Person(eyeColor:String ) {

")"前のスペースはそのまま再現されちゃうが、":"の左右はきちんと開ける。

function Person(eyeColor : String ) 

次のサイトは?

元のコードを同じのを使った。
結果は・・・

class Person {
    var species: String;
    var eyeColor: String;
    var hairColor: String;

    function Person(eyeColor: String) {
        species = "homo sapiens";
        this.eyeColor = eyeColor;
        hairColor = "brown";
    }
}

species: String;のコロンがおかしいね。はい論外。

ActionScriptの整形ツール使うべきなのか?
まぁそもそもUnityScriptなんか使うのが間違いです。はい。

では次。