我有一个插件系统设置(将在编译时)搜索插件目录中的所有插件。
我的问题是我试图允许flycheck添加这些插件'包含路径的标题。
我遇到的问题是,我无法弄清楚如何使表达式实际评估其值。 (表达式被视为一个值,而不是被评估)
((c++-mode . ((flycheck-clang-include-path . (split-string (substring
(shell-command-to-string
(concat "echo src;"
"cd /home/czipperz/vick &&"
"[ \"$(ls plugins)\" ] &&"
"[ \"$(find plugins -name src -type d)\" ] &&"
" find plugins -name src -type d")) 0 -1)
"\n+")))))
当我打开文件时出现错误:Error while checking syntax automatically: (split-string (substring ...) "\n+") of flycheck-clang-include-path for option "-I" is not a list of strings
。
答案 0 :(得分:1)
python main.py
# Outputs:
i'm myclass in module_a
i'm myclass in module_x
伪变量有助于在局部变量配置中进行评估。
e.g:
如果您在eval
表单中设置变量,请注意您设置缓冲区本地值(作为一般规则,只需使用eval
而不是{ {1}}在这些情况下)。
答案 1 :(得分:0)
表达式被视为值而不是被评估
这正是原因。 .dir-locals.el文件的内容不是要评估的elisp,而是要作为数据读取的列表。
作为替代方案,请考虑在init文件中添加对//duplicate Play Timer
var i = 0;
var original = document.getElementById('Play_Start');
var count = 1;
function duplicatePlay() {
if (count < 20) {
var clone = original.cloneNode(true); // "deep" clone
clone.id = "Play_Start" + ++i; // there can only be one element with an ID
original.parentNode.appendChild(clone);
$(clone).effect( "highlight", {color:"#FEFFB9"}, 3000 );
count++;
} else {
}
}
的调用。此函数使用符号作为类名和变量列表(您可以以任何方式计算)。然后使用dir-locals-set-class-variables
将特定目录名称(作为路径指定)设置为您创建的新类。 Emacs手册包含一个例子; dir-locals-set-directory-class
会带你去。