GroovyスクリプトでGroovyスクリプトを整形してみる。

また jEdit ネタで。結構便利なのではないかと思ったので。

Groovyのソースコードフォーマットマクロを作ってみた。といってもエディタの先頭行から末尾行まで以下の処理を繰り返すだけ。

  1. 行の末尾に移動
  2. 改行を削除
  3. 改行をはさむ

改行するとエディタが自動インデントしてくれるので、結果整形されます。

もちろん jEdit のインデント機能が完全であるわけではないので制限はあるのですが、かなりきれいになります。

1
2
3
4
5
6
7
8
textArea.with {
    goToBufferStart(false)
    (getText().readLines().size() - 1).times {
        goToEndOfWhiteSpace(false)
        delete()
        insertEnterAndIndent()
    }
}

もちろん、事前に jEditエディタマクロをGroovyで組むための設定 が必要です。