vim - emacs如何為特定的symbol修改顏色
問題描述
現在我emacs中顯示的代碼顏色如下所示自己折騰了一個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. mysql - 分庫分表、分區、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處2. javascript - ios返回不執行js怎么解決?3. python - 爬蟲模擬登錄后,爬取csdn后臺文章列表遇到的問題4. 視頻文件不能播放,怎么辦?5. python bottle跑起來以后,定時執行的任務為什么每次都重復(多)執行一次?6. html5 - HTML代碼中的文字亂碼是怎么回事?7. javascript - 求幫助 , ATOM不顯示界面!!!!8. mysql 查詢身份證號字段值有效的數據9. javascript - angular使從elastichearch中取出的文本高亮顯示,如圖所示10. javascript - 為什么在谷歌控制臺 輸出1的時候,輸出的1立馬就不見了
