smi*_*dha 9 emacs syntax-highlighting
在Emacs中,是否可以使用不同的颜色标记不同数据类型的所有变量?例如,如果我在C/C++我的程序中有以下变量
int i,j;
float g,h;
char a,b;
Run Code Online (Sandbox Code Playgroud)
然后在整个源代码中,i和j将标记为红色,g和h标记为绿色,a和b标记为蓝色.
我不确定将来会有多大用处,但我觉得它在阅读代码时会帮助我,并且是匈牙利符号的一个很好的替代品(不是我使用这种符号:D).
不会。Emacs 不知道特定表达式的类型。C这样做就相当于用ELisp.
然而,隧道尽头有一盏灯。
例如,如果您OCaml使用 编辑代码tuareg-mode,您可以向 Emacs 询问任何表达式的类型,因为ocaml编译器提供了该信息;因此你应该能够要求它按类型突出显示变量。这是要遵循的道路。
唉,gcc不提供该信息;然而,它的扩展gccxml却可以。
此外,其他C编译器(例如,clang)提供了开箱即用的信息,并且有一个semantic-clang.el依赖于这些功能的新文件(尽管仅用于完成,而不用于语法突出显示)。
因此,这里没有任何开箱即用的东西,但如果您愿意使用clang而不是gcc为CEDET开发做出贡献,您可能会得到您想要的东西。