2009-01-24 14 views
5

Ich benutze die bsd Stil der Einrückung in Emacs & Ich möchte es ein wenig ändern. Der zugehörige Teil meiner .emacs Datei ist unten. Wenn ich eine Funktion mit try catch-Blöcken schreibe, werden die geschweiften Klammern eingerückt. Ich möchte, dass sie nicht ähnlich einer Funktion eingerückt werden.versuchen, Blockeinzug in Emacs

Was macht es jetzt?

try 
    { 
    } 
catch 
    { 
    } 

Was ich möchte es tun.

try 
{ 
} 
catch 
{ 
} 

.emacs Datei

(defun my-c-mode-common-hook() 
    ;; my customizations for all of c-mode and related modes 
    ;; other customizations can go here 
    (setq c-default-style "bsd") 
    (setq c-basic-offset 4) 
    (setq indent-tabs-mode nil) 
) 

(add-hook 'c-mode-common-hook 'my-c-mode-common-hook) 

Jede Hilfe würde geschätzt.

+0

Welche Sprache? Verschiedene Sprachen verwenden unterschiedliche Modi und unterschiedliche Einrücklogik. – Cheeso

Antwort

7

Gehen Sie zu der Zeile mit dem Einzug, den Sie ändern möchten, und drücken Sie C-c C-o. Dies führt c-set-offset aus und verwendet standardmäßig die Syntax der aktuellen Zeile (in diesem Fall substatement-open). "+" bedeutet eine Ebene des Einzugs, "-" bedeutet eine Ebene, die nicht eingezogen ist, und "0" bedeutet keine zusätzliche Einrückung. Sie wollen 0. Um es dauerhaft zu machen, fügen Sie (c-set-offset 'substatement-open 0) zu Ihrem Hook hinzu.

+0

Danke, das habe ich gesucht. –