2008-10-03 22 views
5

Ich habe Probleme mit meinem PHP-Code nicht korrekt Einrücken ...PHP-Modus für Emacs

ich meinen Code möchte wie diese

if (foo) 
{ 
    print "i am indented"; 
} 

zu sehen, aber es sieht immer wie folgt aus:

Ich müde googeln für ähnliche Dinge und versuchte, meine .emacs hinzuzufügen, aber es hat überhaupt nicht funktioniert.

Irgendwelche Gedanken?

(add-hook 'php-mode-hook 
      (function (lambda() 
         ;; GNU style 
         (setq php-indent-level 4 
          php-continued-statement-offset 4 
          php-continued-brace-offset 0 
          php-brace-offset 0 
          php-brace-imaginary-offset 0 
          php-label-offset -4)))) 

Antwort

1

Passen Sie die Variable c-default-style an. Du willst entweder deinen "Other" -Modus (oder "php" wenn verfügbar) auf "bsd" setzen oder du kannst den Style in allen Modi auf bsd setzen.

Von dem, was ich verstehe, PHP-Modus ist auf der Oberseite des c-Modus gebaut, so dass es seine Anpassungen erbt.

1

Versuchen mit diesem:

(defun my-build-tab-stop-list (width) 
    (let ((num-tab-stops (/ 80 width)) 
     (counter 1) 
     (ls nil)) 
    (while (<= counter num-tab-stops) 
     (setq ls (cons (* width counter) ls)) 
     (setq counter (1+ counter))) 
    (nreverse ls))) 

(add-hook 'c-mode-common-hook 
     #'(lambda() 
      ;; You an remove this, if you don't want fixed tab-stop-widths 
      (set (make-local-variable 'tab-stop-list) 
       (my-build-tab-stop-list tab-width)) 
      (setq c-basic-offset tab-width) 
      (c-set-offset 'defun-block-intro tab-width) 
      (c-set-offset 'arglist-intro tab-width) 
      (c-set-offset 'arglist-close 0) 
      (c-set-offset 'defun-close 0) 
      (setq abbrev-mode nil))) 
12

anpassen c-default-Stil Variable. Fügen Sie diese auf Ihre .emacs-Datei:

(setq c-default-style "bsd" 
     c-basic-offset 4) 

Description of bsd style.