19

emacs では、次のように入力します。

public void foo(String one,
    String two) {

次のように表にします。

public void foo(String one,
                String two) {

私はむしろそうしないで、他の行の継続のようにパラメータを揃えただけです。これを行わないようにするにはどうすればよいですか?

4

2 に答える 2

37

これは、WindowsでGNUEmacs23.1を使用するEmacsCCモードの情報マニュアルからのものです。

  1. 正しくインデントされていないJavaクラスの構築を開始します。あなたの場合、まさにあなたが上でタイプしたもの。
  2. 正しくインデントされていない行の先頭にカーソルを移動します。あなたの場合、「文字列2){」。
  3. Cc Cs(c-show-syntactic-information)を押して、Emacsにあなたが見ていると思われる構文要素を尋ねます。あなたの場合、それは((arglist-cont-nonempty nm))のようなものを言うでしょう。
  4. Cc Co(c-set-offset)を使用して、この構文要素のインデントレベルを変更するように指示します。
  5. デフォルトでは、構文要素はarglist-cont-nonemptyなどと見なされます。そのデフォルトが正しい場合は、RETを押すだけです。
  6. ここで、オフセットの計算に使用する式を知りたいと思います。あなたの場合、デフォルトはelisp式です。それを削除し、代わりに単一のプラス記号+を使用してください。
  7. 正しく機能していることを確認するためにテストします。別の行でTABを押すか、Mxインデント領域などを押します。
  8. 永続的にするには、これを.emacsファイルに追加します。

(setq c-offsets-alist'((arglist-cont-nonempty。+)))

于 2009-09-02T04:22:52.347 に答える
2

各ソース ファイルの最初の行でモード スタイルを指定するのが好きです。試す:

// -*- mode: java; c-file-style: "stroustrup" -*-

これにより、合理的な集計が可能になります。「k&r」も試してみてください。

于 2010-03-03T17:03:58.267 に答える