"SAVED and set. (mismatch)"(尤其是"mismatch"部分)在 emacs 定制中意味着什么?



我只是想在emacs中自定义一些org-mode导出设置,所以我做了M-x自定义组>组织导出html

可能相关:在这个过程中,我使用了一些C-o来打开新行,所以这个值在屏幕上看起来很好,我可以判断我在做什么。当我感到满意时,我单击State按钮,然后选择Save for Future Sessions。因为(我推测)C-o换行符,它然后说:

CHANGED outside Customize; operating on it here may be unreliable. (mismatch)

所以,我选择了Reset to Saved,它去掉了它,但用这个替换了它:

SAVED and set. (mismatch)

好的,所以…一切都很好。。。除了在这两行中,(mismatch)是什么意思?我的emacs init文件中保存的内容和我正在查看的内容不匹配?这两者之间不匹配。。。好吧,环顾四周,我甚至看到一些自定义条目,上面写着:

STANDARD. (mismatch)

标准不匹配?(顺便说一下,还有一些人只说STANDARD.。)

我想了解"不匹配"是什么意思。有什么提示吗?

谢谢!


附录

我只是在cus-edit.el中挖掘了一下,在评论中发现了这一点:

;; 8. mismatch
;;    The widget value is not valid member of the :type specified for the
;;    option.

这有点帮助。。。这只是意味着org-mode的类型说明符是错误的吗?从这个角度来看(在org-html.el中),它指定了:type 'string,但实际上它似乎是一个plist(甚至其默认值的形式是'(("en" "[data here]"))。)这只是org-mode的清洁度不好吗?但是,即使是这里的另一个变量也表示"不匹配",但从逻辑上讲,它似乎有一个合理的值。值是t(我检查了我的emacs init,它只是符号t,没有引号或任何东西),它的类型说明符是:

:type '(choice (const :tag "No postamble" nil) (const :tag "Auto preamble" 'auto) (const :tag "Default formatting string" t) (string :tag "Custom formatting string") (function :tag "Function (must return a string)")))

这似乎与第三条线相匹配。不'(choice ...不是org-export-html-postamble-format0的有效值吗?

看起来有两个错误:

  • org.html.el中的一个平凡的变量,它为该变量声明:type 'string,即使该变量的值不是字符串。

  • 在这种不匹配的情况下,customize中的一个错误说"在customize外部更改",尽管不匹配实际上直接来自customize,而不是外部。

请用M-x report-emacs-bug报告。

因为(我想)C-o换行符,它接着说:更改外部自定义;在这里操作它可能不可靠。(不匹配)

我从未研究过细节,但我认为"在自定义之外更改"几乎肯定意味着在您的配置中的某个地方,org-export-html-postamble-format变量是直接在代码中设置的。如果变量只是通过自定义接口设置的,那么错误的文本肯定不会表明这是可能的。

最新更新