HS-Minor-ModeをEMACSのPHPモードで自動的にロードするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/4767557

  •  16-10-2019
  •  | 
  •  

質問

私のお気に入りのモードでは、次のスニペットを使用して、スタートアップにHS-Minor-Modeをロードします。

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

これまでのところ、CSS-Mode、Perl-Mode、SH-Mode(Bash)、およびLisp-Modeで作業しています。しかし、何らかの理由で、手動でロードできる場合でも、PHPモードにロードされません。

これが私の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)

私は何か間違ったことをしていますか? HS-Minor-Modeを関数でラッピングしようとしましたが、それでもロードされません。ただし、私の過負荷のキーはそうします。どうしたんだ?

役に立ちましたか?

解決

モード関数は通常、数値引数を受け入れてそれらを有効/無効にし、引数が提供されない場合はトグルとして機能するため、一般的なルールとして使用する必要があります。

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

他のヒント

一般的にお勧めします

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

なぜなら hideshow PHP固有のモードではありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top