douma5954 2011-01-22 11:32
浏览 150
已采纳

如何在emacs中的php模式下自动加载hs-minor-mode?

For my favorite modes, I use the following snippet to load hs-minor-mode on startup:

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

So far it's gotten working on css-mode, perl-mode, sh-mode (bash), and lisp-mode. But for some reason it won't load for php-mode, even if I can load it manually.

Here's my php-mode settings:

(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)

Am I doing anything wrong? I tried wrapping hs-minor-mode in a function and it still won't load. My overloaded keys, however, do. What's the deal?

  • 写回答

2条回答 默认 最新

  • dongzhang0418 2011-01-22 11:55
    关注

    Mode functions typically accept a numeric argument to enable/disable them, and act as toggles if no argument is supplied, so as a general rule you should use:

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助