Ответ 1
Если вы хотите, чтобы он был действительно глобальным, это делает трюк:
(define-globalized-minor-mode global-hs-minor-mode
hs-minor-mode hs-minor-mode)
(global-hs-minor-mode 1)
Я использую код ths в файле .emacs, чтобы навсегда включить hs-minor-mode и изменить ярлык:
(setq-default hs-minor-mode t)
(global-set-key (kbd "C-c C-h") (kbd "C-c @ C-h")) ;;hiding block of code
(global-set-key (kbd "C-c C-r") (kbd "C-c @ C-s")) ;;revealing block of code
Но режим не активируется автоматически. что я должен делать?
Если вы хотите, чтобы он был действительно глобальным, это делает трюк:
(define-globalized-minor-mode global-hs-minor-mode
hs-minor-mode hs-minor-mode)
(global-hs-minor-mode 1)
Вы можете включить hs-minor-mode
для определенного режима, такого как режим C, С++, используя c-mode-common-hook
.
(add-hook 'c-mode-common-hook #'hs-minor-mode)
В Emacs 24 или более поздней версии вы можете включить его во всех режимах программирования, используя prog-mode-hook
.
(add-hook 'prog-mode-hook #'hs-minor-mode)
Если вы хотите включить его всюду и запустить буфер с кодом, сложенным hs-hide-all, выполните
(defun my-hide-all()
(interactive)
(hs-minor-mode)
(hs-hide-all))
(add-hook 'prog-mode-hook 'my-hide-all)