如何在指定的主要模式下禁用全局次要模式

How to disable global minor mode in a specified major mode

我使用 Prelude,我想在除网络模式之外的所有程序模式中启用 hs-minor-mode。我写了

(add-hook 'prog-mode-hook #'hs-minor-mode)          
(make-variable-buffer-local 'hs-minor-mode)        
(add-hook 'web-mode-hook (lambda () (setq hs-minor-mode nil)))      

在personal.el中,但它不起作用!

我该怎么办?

通常情况下,要禁用次要模式,仅设置变量是不够的。您必须调用模式功能。所以尝试这样的事情:

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