vim - emacs如何为特定的symbol修改颜色
问题描述
现在我emacs中显示的代码颜色如下所示我现在希望new这个关键字可以用其他的颜色高亮而不是白色,然后在代码中的数字也可以用其他颜色高亮而不是白色自己折腾了一个elisp配置
(add-hook ’after-change-major-mode-hook ’(lambda () (font-lock-add-keywords nil ’(('[^a-zA-Z]([0-9]+)[^a-zA-Z]' 1 font-lock-warning-face prepend)))))
但是发现一个问题就是,普通代码中的数字的确是用非白色高亮了,可是字符串中的数字也被高亮了,我想重新写一个判断是否为字符串的hook去覆盖,但是折腾了半天也不对,new关键字的高亮也是一样,在代码中高亮了,字符串和注释中也是被高亮了,反而不好看了
而且还有一个问题就是,上面这个简陋的正则只能让
foo1
显示正常
如果是
foo11foo111
之类的变量中连续超过两个数字的话,变量中得数字也会被不同颜色高亮了
正则不是很精通,请大大们指点一下,该装什么mode或者写个啥hook可以满足我地需求
问题解答
回答1:不用那么麻烦, 具体技术就不做多解释了, 除了修改 color theme , 我有用下面这种脚注法, 下面是高亮 l1 l2 l3 三个字符串的:
#+STARTUP: content# Local Variables:# eval: (highlight-phrase 'bl1b' (quote hi-pink))# eval: (highlight-phrase 'bl2b' (quote hi-yellow))# eval: (highlight-phrase 'bl3b' (quote hi-green))# End:
理论上, 挂到某个 mode-hook 里就可以实现跟 mode 关联了. 更多细节可以相关搜索.
相关文章:
1. docker api 开发的端口怎么获取?2. docker gitlab 如何git clone?3. android - 目前有哪些用Vue.js开发移动App的方案?4. java - 如图代码,Collection 类中的iterator()是抽象方法,为什么可以调用?5. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!6. angular.js - angular有没有可以本地构建静态代码的工具7. java - 我用Tomcat访问SQL server数据库时,出现以下错误,该怎么解决?8. 路由配置不生效9. 想找个php大神仿个网站。10. 我毕业以后在工作之余学了 PHP,都是自学 现在在找这方面的工作 求前辈指导学习方向 工作常用的知识