如果找不到库,我如何建议字节编译器不要编译emacs-lisp源文件?请注意,不可编译文件与应编译的其他文件位于同一目录中。
我看到人们将整个文件包装在条件子句中,但这看起来很恶心。也可以想象自动加载/声明每个函数,但在这种情况下,整个文件充斥着外部调用。还有其他选择吗?
答案 0 :(得分:1)
我不认为这个问题有一个很好的答案/解决方案,不。
你能做的是:
标记文件,使其永远不会编译(即使库可用),文件局部变量中的某处no-byte-compile: t
。
或添加所有必需的declare-function
和defvar
以使字节编译器警告静音。请注意,此选项仅适用于函数和变量,但不适用于宏:如果您使用该库中的宏,则需要额外注意以防止这些宏调用在未加载库时编译(参见例如AUCTex TeX--if-macro-fboundp
中的tex.el
)。