2011-01-22 14 views
2

は、私は起動時にHS-マイナーモードをロードするために次のコードを使用します。hs-minor-modeをemacsのPHPモードで自動的にロードするにはどうすればよいですか?私の好きなモードについて

(add-hook '____-mode-hook 'hs-minor-mode) 

は、これまでのところ、それは、CSSモード、perlのモード、SH-モード(bashの)に取り組ん得て、リスプモード。しかし、私はそれを手動でロードすることができますが、何らかの理由でそれはPHPモードのために読み込まれません。私は何も悪いことをやって

(defun php-overload-keys() 
(let ((map php-mode-map)) 
    (define-key map "\t" 'dumb-indent-relative) 
    (define-key map "\177" 'backward-delete-char) 
    (define-key map "," nil) 
    (define-key map ";" nil) 
    (define-key map ":" nil) 
    (define-key map "*" nil) 
    (define-key map "{" nil) 
    (define-key map "}" nil) 
    (define-key map "(" nil) 
    (define-key map ")" nil) 
    (define-key map "/" nil) 
    (use-local-map map))) 

(add-hook 'php-mode-hook 'php-overload-keys) 
(add-hook 'php-mode-hook 'hs-minor-mode) 

アム:

は、ここに私のphp-モードの設定ですか?関数内でhs-minor-modeをラップしようとしましたが、それでも読み込まれません。しかし、私のオーバーロードされたキーはそうです。どうしたんだ?

答えて

6

モード機能は、使用すべき原則ように、通常、それらを無効/有効にするために数値引数を受け入れ、引数を指定しない場合はトグルとして機能:私が推薦する一般的に

(add-hook 'php-mode-hook (lambda() (hs-minor-mode 1)))

+0

驚くばかりです。 *喜んでコードを書く* – user572491

0

(add-hook 'prog-mode-hook #'(lambda() (hs-minor-mode t))) 

hideshowはPHP固有のモードではないためです。

関連する問題