【问题标题】:Check whether mode is on emacs检查模式是否在emacs上
【发布时间】:2012-12-11 23:27:03
【问题描述】:

如何检查当前缓冲区中是否开启了某个模式?

我在 LaTeX 上试过这个,我想在 & 上使用 align 函数对齐,但前提是我在 LaTeX 缓冲区中,而不是在 ESS 模式缓冲区中。

如何对此进行检查?我试过了:

(if (equal reftex-mode t) (message "TRUE"))

(if (equal LaTeX-mode t) (message "TRUE"))

但是 reftex 是全局设置的,而 LaTeX 的东西根本不起作用。想法?

另外,在这些变量没有初始化的情况下,如何防止出现“void variable”错误?

【问题讨论】:

  • boundp 是检查 void 变量的方法。

标签: emacs mode


【解决方案1】:

针对“主要模式”变量进行测试:

(defun a-function()
    (if (eq major-mode 'latex-mode)
        (message "LaTeX mode is ON")
      (message "LaTeX mode is OFF")))

【讨论】:

  • 太好了,Dan,很高兴在这里看到一位新的 Emacs 黑客 :)))
猜你喜欢
  • 2014-12-31
  • 2011-08-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多