W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
我們甚至可以為Vim里面的語法高亮另開一本書了。
我們將在此講解它最后的重要內(nèi)容,然后繼續(xù)講別的東西。 如果你想要學(xué)到更多,去讀:help syntax
并閱讀別人寫的syntax文件。
Potion,一如大多數(shù)編程語言,支持諸如"Hello,world!"
的字符串字面量。 我們應(yīng)該把這些高亮成字符串。為此我們將使用syntax region
命令。 在你的Potion syntax文件中加入下面內(nèi)容:
syntax region potionString start=/\v"/ skip=/\v\\./ end=/\v"/
highlight link potionString String
關(guān)閉并重新打開你的factorial.pn
,你將看到文件結(jié)尾的字符串被高亮了!
最后一行應(yīng)該很熟了。如果你不懂,重讀前兩章。
第一行用一個(gè)"region"添加一個(gè)語法類型分組。 區(qū)域(Regions)有一個(gè)"start"模式和一個(gè)"end"模式來指定開頭和結(jié)束的位置。 這里,一個(gè)Potion字符串從一個(gè)雙引號開始,到另一個(gè)雙引號結(jié)束。
syntax region
的"skip"參數(shù)允許我們處理轉(zhuǎn)義字符串,比如?"She said: \"Vimscript is tricky, but useful\"!"
。
如果不提供skip
參數(shù),Vim將在Vimscript
之前的"
停止匹配字符串,這不是我們想要的!
簡明扼要地說,syntax region
中的skip
參數(shù)告訴Vim: "一旦你開始匹配這個(gè)區(qū)域,我希望你忽略skip
匹配的內(nèi)容,即使它會(huì)被當(dāng)作區(qū)域結(jié)束的標(biāo)志"。
花上幾分鐘去想透徹。如果遇到的是"foo \\" bar"
會(huì)怎樣?那會(huì)是正確的行為嗎? 那_總是_正確的行為嗎?放下本書,花上幾分鐘來認(rèn)真想一想!
給單引號字符串加上語法高亮。
閱讀:help syn-region
.
閱讀:help syn-region
將比閱讀本章花費(fèi)更多的時(shí)間。給自己倒杯飲料,這是你應(yīng)得的!
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: