如题; 简单来说就是c/c++函数无法被高亮,如图:
只有一些关键字,或者函数定义,变量定义的时候可以高亮;但是函数体内调用的别的函数,都可以正常跳转,但只能现实白色;有大神有办法吗?很迷惑啊。。
一般都是这样的啊,要不然就全是颜色了。
想要这个功能可以看看hilight symbol相关的包,论坛里有讨论这个的帖子。
gnu有个cflow,功能是显示函数的调用关系
结合cflow倒是可以考虑
gtags的数据有点大,让elisp处理会很耗时的
好像还有专门实现语法高亮的软件,只是不知道精细到哪种粒度
哈哈,有时候代码逻辑就大片又没有高亮
如果gtags是global的话,有一个sqlite的选项,可以生成sqlite的数据库
这样就能更灵活的控制变量或是函数的显示颜色了,你只需要通关附加表的方式记录颜色信息就可以了。
感觉老兄你总喜欢把简单的问题复杂化。。。
在global的sqlite选项的时候生成的数据库里面新增一个表记录颜色
在emacs里读取记录的颜色值,然后再把颜色显示出来
你需要知道点elisp和sqlite
有个叫二八的原则,知道百分之二十就行了
操作指南嘛? 你的想象力就是了!
show me your code
如果你以为这个问题简单的话
SO?现在还不知道是spacemacs的问题还是gtags的问题呢。你推荐sql了算是负责任的行为?我不能理解
不是我认为这个问题简单,如果只是spacemacs的显示配置出错了呢。那人家折腾的sql算个啥?
在我看来,不如把Gtags的数据用font-lock加上颜色。
Where are yours?
好 等我有时间
我也算有这样的需求
不过我觉得他有点难
但按照我的想法能实现
以后我会贴图上来
好了 该你表态了
你可以放弃的,毕竟你连个想法也没有
如果是写c++的话
这个应该对你有帮助
PS: 另外现在emacs上写c / c++ 最好的体验个人推荐ccls,里面就有提供semantic highlight的功能:
(setq ccls-sem-highlight-method 'font-lock)
;; alternatively, (setq ccls-sem-highlight-method 'overlay)
可以试下
过多的高亮,等于没有高亮。