如何在emacs中列出活动的次要模式?
C-h m
或M-x describe-mode
显示所有活动的次要模式(和主要模式)以及每种模式的简要说明.
所有次要模式命令的列表都存储在变量中minor-mode-list
.通常通过检查相同名称的变量来确定它们是否处于活动状态.所以你可以这样做:
(defun which-active-modes () "Give a message of which minor modes are enabled in the current buffer." (interactive) (let ((active-modes)) (mapc (lambda (mode) (condition-case nil (if (and (symbolp mode) (symbol-value mode)) (add-to-list 'active-modes mode)) (error nil) )) minor-mode-list) (message "Active modes are %s" active-modes)))
注意:这仅适用于当前缓冲区(因为次要模式可能仅在某些缓冲区中启用).