2013-09-25 31 views
1

升級到EMACS 24.3(我覺得從24.2),也是MELPA php-mode包升級到20130920.1850版本,php-mode現在縮進,具體如下:PHP模式突然縮進不同

array('a' => 1, 
'b' => 2); 

什麼以前一樣:

array('a' => 1, 
     'b' => 2); 

如何恢復以前的行爲?

更新:最終,我提交了一個issue on Github,並且php-mode的維護者確認存在一個錯誤。

+0

恢復到以前版本的php模式? – phils

+2

請注意,MELPA會爲您提供一個存儲庫的當前主管,根據相關項目的不同,這個存儲庫很容易變得不穩定。在這種情況下,它來自Github,因此您可以檢查[問題跟蹤器](https://github.com/ejmr/php-mode/issues)以獲取php模式,並在需要時記錄一個新的。 – phils

回答

1

這是我在等待php模式修復這個錯誤時使用的醜陋解決方法(它假定您使用默認的php縮進樣式:pear)。我希望能夠快速解決問題,但已經有好幾個月了。

(eval-after-load "php-mode" 
    '(progn 
    (c-add-style 
     "pear" 
     '((c-basic-offset . 4) 
     (c-offsets-alist . ((block-open . -) 
          (block-close . 0) 
          (topmost-intro-cont . (first c-lineup-cascaded-calls 
                 php-lineup-arglist-intro)) 
          (brace-list-intro . +) 
          (brace-list-entry . c-lineup-cascaded-calls) 
          (arglist-close . php-lineup-arglist-close) 
          (arglist-intro . php-lineup-arglist-intro) 
          (knr-argdecl . [0]) 
          (statement-cont . (first c-lineup-cascaded-calls +)))))))) 
+0

謝謝。但是,我不需要解決方法。儘管[我的錯誤報告](https://github.com/ejmr/),最新版本的[php-mode可從Github獲得](https://github.com/ejmr/php-mode/)似乎縮進了。 php-mode/issues/130)仍然是開放的。 – feklee