所以,假设我有一个文件file.c和一个文件anothr.c。我想分别为每个文件设置编译命令,例如:gcc -Wall -O3 -o f file.c
和gcc -Wall -std=c99 -o a another.c
。如何为该缓冲区设置gcc
命令,以便每次打开它时,它都知道如何编译它?是否有// -*-
指令或类似的东西?感谢。
答案 0 :(得分:4)
是的,您可以在文件中使用该指令,还可以设置其他值。在第一或第二行尝试:
// -*- compile-command: "gcc -Wall -O3 -o f file.c" -*-
然后使用C-x v
重新加载文件,以使设置生效。
我有时也会设置c-indent-level: 4; c-basic-offset: 4;
之类的内容。
答案 1 :(得分:3)
根据file local variables所述的评论声明格式,您要查找的内容称为here,有时只称为“本地变量”。
除了Dirk's answer中给出的语法之外,您还可以在文件末尾写一个“局部变量”块:
/* Local Variables: */
/* compile-command:"gcc -Wall -O3 -o f file.c" */
/* End: */
如果您不想手动输入每个条目,可以使用交互式功能add-file-local-variable
来帮助维护此列表。