最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

oeasy教您玩轉(zhuǎn)vim - 89 - # 高亮細(xì)節(jié)Highlight

2022-01-21 09:06 作者:oeasy  | 我要投稿

高亮細(xì)節(jié) highight

回憶

  • 這個自動命令 autocmd 還是很方便的

  • 打開時、保存時就會有自動執(zhí)行的操作

  • 自動命令有這么幾大元素

    • {event} 觸發(fā)事件

    • {pattern} 文件模式

    • {cmd} 具體執(zhí)行命令

    • {augroup} 命令組

  • 自動命令可以新建、刪除、列表、查詢

  • 還可以強(qiáng)制執(zhí)行

  • 有這個我們可以

    • 針對每種不同的文件的類型

    • 定義相應(yīng)的觸發(fā)事件

    • 然后執(zhí)行各種各樣的命令

    • 方便操作

  • 不過關(guān)于文件類型的高亮顯示還是沒有講的特別清楚

    • 為什么publicjava文件里面就可以改變顏色呢????

顏色方案

git clone http://gitee.com/overmind1980/oeasyvim.git cd oeasyvim vi oeasy.java

  • 字符串是棕色的

  • public、void是綠色的

  • :colorscheme murphy

  • 我們發(fā)現(xiàn)在murphy顏色方案下

  • 字符串不變色了

  • public、void也不變色了

查看配色

  • :hi

  • 查看不到為什么public沒有改變顏色

語法文件syntax

  • 我要找到關(guān)于java語法定義Syntax的文件java.vim

  • 于是我搜索一下

  • sudo find / -name java.vim

  • 這三個java.vim都位于系統(tǒng)的配置文件夾中

    • ft 是 filetype

    • plugin 是 插件

    • /usr/share/vim/vim81/ftplugin/ 對應(yīng)系統(tǒng)的插件

    • ~/.vim/ftplugin 對于用戶的插件

    • ftplugin 對應(yīng)java的系統(tǒng)插件

    • indent 對應(yīng)java的系統(tǒng)縮進(jìn)

    • syntax 對應(yīng)java的系統(tǒng)語法

  • ls /usr/share/vim/vim81/syntax/java.vim

  • vi /usr/share/vim/vim81/syntax/java.vim

查找String

  • /String

    • 找到41個匹配

  • /\<String\>

    • 找到3個匹配

  • 大概率String本身就是那個高亮元素

  • :q 退回到oeasy.java

設(shè)置高亮

  • :colorscheme murphy

  • :hi String ctermfg=brown

    • hi 是highlight

    • String是需要定義顏色的組名稱

    • cterm是color terminal foreground

    • brown 是棕色

  • String的高亮設(shè)置成功

  • 我們來分析一下什么是String

String的定義

  • :e /usr/share/vim/vim81/syntax/java.vim

  • /\<String\>

  • /javaString

  • /\<javaString\>

  • :set wrap

  • 大致是定義了一個region區(qū)域javaString

  • 然后和讓javaString連接到了String上

  • 在syntax/java.vim定義了各種區(qū)域region

    • 有些是關(guān)鍵字keywords

    • 有些是字符串String

  • 不過具體給這些定義好的區(qū)域上什么顏色

  • 還是得配色文件來完成

    • 比如murphy.vim

  • murphy.vim目前沒有定義String這個區(qū)域的顏色

  • 但是我們在最后強(qiáng)行hi String ctermfg=brown

  • 難道murphy.vim就真沒有String區(qū)域的顏色定義么?

murphy.vim

  • sudo find / -name murphy.vim

  • vi /usr/share/vim/vim81/colors/murphy.vim

  • /String

  • sudo vi /usr/share/vim/vim81/colors/murphy.vim

  • 在最末一行加上一句

  • 保存murphy.vim并退出

  • vi oeasy.java 再切換到murphy配色

  • 設(shè)置成功

  • 我們再來看看 public 等關(guān)鍵字

找到public

  • vi /usr/share/vim/vim81/syntax/java.vim

  • /public

  • public、protected這些關(guān)鍵字都已經(jīng)被定義到了一個javaScopeDecl里面

  • 鼠標(biāo)放到 javaScopeDecl 上 按下*

  • 我們可以發(fā)現(xiàn)javaScopeDecl被定義為javaStorageClass

  • javaStorageClass被定義為StorageClass

嘗試修改

  • 回到oeasy.java

  • :hi StorageClass=cyan

  • 修改成功

  • sudo vi /usr/share/vim/vim81/colors/murphy.vim

  • 在最后添加 :hi StorageClass=cyan

  • 然后再打開oeasy.java

  • 試驗(yàn)成功?。?!

總結(jié)

  • 我們這次研究了一下配色方案

    • murphy雖然配色好看

    • 但是對于java的支持并不好

    • 我們對于murphy進(jìn)行了修改

    • 增加了String、StorageClass顏色的定義

    • 整體思路是在syntax中定義組

    • 然后在配色方案中對于組進(jìn)行顏色設(shè)置

  • 可是syntax中如何定義組的呢???

  • 下次再說!


oeasy教您玩轉(zhuǎn)vim - 89 - # 高亮細(xì)節(jié)Highlight的評論 (共 條)

分享到微博請遵守國家法律
定边县| 柳江县| 疏勒县| 金门县| 崇仁县| 鹤壁市| 武邑县| 崇礼县| 平山县| 华阴市| 锡林浩特市| 杭州市| 和硕县| 灵丘县| 长子县| 财经| 黑水县| 宜兴市| 临高县| 伊春市| 育儿| 乌苏市| 永丰县| 法库县| 龙里县| 高清| 江山市| 馆陶县| 永年县| 翁牛特旗| 肥城市| 临夏县| 鸡泽县| 岢岚县| 北宁市| 长沙市| 香格里拉县| 东兰县| 揭东县| 淅川县| 镇远县|