linux vi 出现下划线,Vim高亮当前行(显示为下划线)的解决方案
最近配置Vim,由于以前的vimrc早已丟失,只好重新配置一份,此為題外話,略過不提…
在Vim中,可以選擇開啟高亮當前行,這是一個很不錯的特性。開啟它也很簡單,只需要在vimrc中加入這么一行:
1
set cursorline
或者
1
set cul
即可。
在gvim中,這樣配置一般都能起作用,你會看到當前行被高亮了。但是在終端中,卻很可能會出現問題,如果你發現本該被高亮的行沒有高亮,而行底部卻出現了一條下劃線的話(如下圖),就需要做一些額外的配置了。
Vim中有一個命令叫highlight,通過它可以自定義或者查看很多元素的配色方案,具體的作用可以自行:help highlight查看,我們用它來對高亮行做一些設置。
在vimrc中加入:
1
hi CursorLine term=bold cterm=bold ctermbg=Red
別忘了加載配置。
嗯,當前行不僅被高亮成了紅色,而且還變成了粗體,這就是命令中bold和Red的效果,其中cterm=bold就是指定在終端中被高亮的行變為粗體,而 ctermbg=Red就是指定高亮行在終端中的背景色,其他的選項還有ctermfg(前景色),guibg(gvim中的背景色)等等,這里就不贅述了。
這里是term=或cterm=等可選的選項:
這里是ctermbg=可選的顏色:
前面的數字有什么用,我就不細說了。這里可以看到,有若干定義好的顏色可供選擇,比如上面ctermbg=Red就是選擇了這里的紅色。
可能很多人和我一樣,每種顏色都試了那么一下,卻發現全部都不滿意,自然而然的會想到,能否用RGB的形式自定義顏色呢?讓我們先來試驗一下,修改命令為:
1
hi CursorLine term=bold cterm=bold ctermbg=#FFD4E4
很可惜,你會得到vim的error信息:
難道就沒辦法自定義顏色了嗎?別急,雖然無法自定義顏色,卻可以讓可選擇的顏色多一些,Vim中默認的這幾種顏色是為8位色終端定義的,應該是為了兼容一些很原始的環境。比如我的環境是CentOS Linux release 7.2.1511 (Core),不帶圖形界面。CentOS的終端默認開啟的是8位色模式,查看自己的終端所處的顏色模式,可以在shell中輸入:
1
echo $TERM
如果打印的結果中不含有256color,就表明你的終端并沒有開啟256色模式,可供選擇的顏色可能不足。我們可以將終端配置為256色模式,以我的環境為例,執行以下命令:
1
sudo sh -c "echo 'export TERM=xterm-256color' >> /etc/profile"
回到Vim,執行:
1
:hi CursorLine term=bold cterm=bold ctermbg=237
高亮行的背景變成了淡淡的灰色
這里的ctermbg=237是256色中某個顏色的編號,可以查詢這里256色展示
總結
以上是生活随笔為你收集整理的linux vi 出现下划线,Vim高亮当前行(显示为下划线)的解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SQLite学习手册(数据表和视图)
- 下一篇: SQLite学习手册(内置函数)