2009-09-02 5 views

Antwort

36

Dies ergibt sich aus dem Handbuch Info für Emacs CC-Modus unter Verwendung von GNU Emacs 23.1 unter Windows:

  1. Starten Sie Ihre Java-Klasse erstellen, die richtig einrücken nicht. In Ihrem Fall genau das, was Sie oben eingegeben haben.
  2. Bewegen Sie den Cursor an den Anfang der Zeile, die nicht richtig eingerückt ist. In Ihrem Fall, "String zwei) {".
  3. Drücken Sie C-c C-s (c-show-syntactic-information), um Emacs nach dem Syntaxelement zu fragen, nach dem Sie suchen. In Ihrem Fall wird es etwas wie ((arglist-cont-nonempty n m)) sagen.
  4. Verwenden Sie C-c C-o (c-set-offset), um anzugeben, dass Sie die Einrückungsstufe für dieses syntaktische Element ändern möchten.
  5. Es ist standardmäßig, was es denkt, dass syntaktisches Element ist, z. B. arglist-cont-nonempty. Drücken Sie einfach RET, wenn dieser Standard korrekt ist.
  6. Jetzt möchte es wissen, welchen Ausdruck für die Berechnung des Offsets verwendet werden soll. In Ihrem Fall ist der Standardwert ein elisp-Ausdruck. Löschen Sie das und verwenden Sie stattdessen nur ein Pluszeichen +.
  7. Testen Sie es, um sicherzustellen, dass es richtig funktioniert: Drücken Sie TAB ein Bündel auf anderen Zeilen oder M-x Einzug-Region oder ähnliches.
  8. Um es dauerhaft zu machen, diese Datei zu Ihrer .emacs hinzu:

(. Setq c-Offsets-alist ‚((arglist-cont-nicht leer +)))

+1

Vielen Dank, dass Sie nicht nur meine Frage beantwortet haben, sondern mich darüber aufgeklärt haben, wie Sie ähnliche Dinge in Zukunft lösen können. :) –

+0

Brillante Antwort. Sehr hilfreich in der Tat. Vielen Dank. –

+0

Hier können Sie sehen, warum ''+' BTW, und welche anderen Optionen verfügbar sind: https://emacswiki.org/emacs/IndentingC#toc13 –

2

Ich möchte den Modus-Stil in der ersten Zeile jeder Quelldatei angeben. Versuchen:

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

Dies wird Ihnen rational tabification geben. Sie könnten auch versuchen "k & r".

+0

Beachten Sie, dass wenn Sie dies in der eigentlichen Datei setzen, überschreiben Sie Anpassungen von anderen Benutzern haben in ihren .emacs-Einstellungen beim Anzeigen Ihrer Datei. Wenn möglich, verschieben Sie diese Dinge in Ihre Konfigurationsdatei. –