[英]emacs - exclude json-mode from js-mode-hook
我正在使用Emacs開發Javascript。
我有一個函數,可以在保存文件時將Javascript代碼格式化為“ 標准樣式 ”。 我的配置如下所示:
(add-hook 'js-mode-hook
(lambda ()
(add-hook 'before-save-hook 'standardfmt t t)))
不幸的是,由於json-mode
繼承自js-mode
,因此該鈎子也具有使用json-mode
應用於緩沖區的副作用。
有沒有一種簡單的方法可以從此掛鈎中排除json-mode
緩沖區?
您可以這樣做:
(add-hook 'js-mode-hook
(lambda ()
(unless (derived-mode-p 'json-mode)
(add-hook 'before-save-hook 'standardfmt t t))))
或者
(add-hook 'js-mode-hook
(lambda ()
(when (eq major-mode 'js-mode) ;; Not a derived mode.
(add-hook 'before-save-hook 'standardfmt t t))))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.