1

Emacs 23.3.1 で Austin Haas の actionscript-mode を使用しています。多くの引数を持つ ActionScript で関数を記述するとき、私はそれをいくつかの行に分割するのが好きです。次のように見せたい

public function foo(bar:Bar,
                    baz:Baz,
                    qux:Qux):void {...}

しかし、actionscript-mode のインデントを使用すると、次のようになります。

public function foo(bar:Bar,
    baz:Baz,
    qux:Qux):void {...}

これは私をとても悩ませます。これを修正する方法はありますか?

4

1 に答える 1

1

簡単な答えは次のとおりです。それを行う良い方法がまったくないと思います。現在、インデントは前の行のみに基づいており、E4X が使用されている場合、またはネストされたオブジェクト リテラルまたは配列リテラルなどが使用されている場合は完全に壊れています :(

ただし、以下は、変更したい各インスタンスに適用される手作業を気にしない場合に役立つ可能性があるものです。

(defun as3-align-regex ()
  (interactive)
  (let ((align-to-tab-stop nil))
    (align-regexp (region-beginning) (region-end)
          "\\(\\s(\\|\\s-\\)\\(\\sw+\\)" 1 1 nil)))

最初の括弧、ブラケット、またはスペースから始まり、整列させたい最後の用語まで、リージョンを選択する必要があることに注意してください。それはちょっと醜いですが、良い解決策はあまりにも多くの努力を必要とするでしょう.

于 2012-05-19T10:48:31.247 に答える