西西軟件園多重安全檢測下載網(wǎng)站、值得信賴的軟件下載站!
西西首頁 電腦軟件 安卓軟件 電腦游戲 安卓游戲 排行榜 專題合集

Vim 語法高亮文件

  • Vim 語法高亮文件
  • 軟件大小:3KB
  • 更新時間:2014-01-20 15:58
  • 軟件語言:中文
  • 軟件廠商:
  • 軟件類別:國產(chǎn)軟件 / 免費軟件 / 源碼相關(guān)
  • 軟件等級:4級
  • 應(yīng)用平臺:Win7
  • 官方網(wǎng)站:暫無
  • 應(yīng)用備案:
好評:50%
壞評:50%

本類精品

軟件介紹

每個程序員的文本編輯器缺少了語法高亮、特殊關(guān)鍵字和短語著色,都是不完整的。語法高亮突出了文檔的結(jié)構(gòu),幫助發(fā)現(xiàn)排字錯誤,利于調(diào)試,整體上讓文本編輯更輕松更有效率。本篇我們將探討一下Vim的語法高亮范式以及如何建立和定制著色方案。

Vim著色方案:

首先說明,本文談?wù)摰牟皇悄姆N顏色最好,而是Vim如何處理語法高亮的問題。

在決定如何給一個文件著色時,Vim首先將文件分解成若干結(jié)構(gòu)組。這些都是通過編寫好的語法命令文件來實現(xiàn),這些文件在Vim加載一個文件的時候就自動加載了,加載過程則是基于一系列復(fù)雜規(guī)則。如果Vim選擇了一個錯誤的語法命令文件,你可以通過以下命令手工指定一個正確的文件:

:set syn=syntax-type

其中syntax-type是一個文件的類型。通常文件類型就是文件擴展名,例如選擇PHP語法高亮,則將syntax-type設(shè)置為“php”。

Vim主要使用以下九種高亮分組:

復(fù)制代碼

Comment    : 注釋

Constant   : 常量,例如數(shù)字、引號內(nèi)字符串、布爾值。

Identifier : 變量標識符名稱。

Statement  : 編程語言的聲明,一般是像“if”或“while”這樣的關(guān)鍵字。

PreProc    : 預(yù)處理,例如C語言中的“#include”。

Type       : 變量類型,例如“int”。

Special    : 特殊符號,通常是類似字符串中的“\n”。

Underlined : 文本下劃線。

Error      : 顯示編程語言錯誤的文本。

另外還有一個分組叫做Normal,表示普通文本。

也許你已經(jīng)注意到,這些高亮分組主要針對編程語言,這是因為語法高亮對它們最有用。但是,Vim的高亮命令覆蓋的文件類型遠超過編程語言,包括從HTML到EMAIL的任何東西。

Vim還支持三種輸出設(shè)備:black-and-white terminal(黑白終端),color terminal(彩色終端)和GUI(圖形化的用戶接口)。因為它們每一個都有自己獨特的高亮能力,Vim為它們維護了三個獨立的高亮方案。

建立高亮:

實現(xiàn)高亮的最簡便方式就是使用別人寫好的.vimrc文件,就像這個。大多數(shù)時候這樣做都挺好使。但是,如果它不好使或者你想從頭開始,以下就是告訴你如何從頭開始。

你必須在你的.vimrc文件的第一行寫入:

syntax on

這行命令告訴Vim開始使用語法高亮。如果你暫時不想改動文件,你也可以在Vim窗口輸入它作為一行命令。

如果你正在使用黑白終端或者GUI接口,一切都工作得剛剛好。如果你正在使用一個支持彩色的終端,你也許不得不將以下命令置于syntax on上一行:

set term=ansi

你也可以嘗試一下color_xterm來代替ansi。

選擇顏色:

Vim有一套默認顏色方案,在我看來,有點過度明亮和混亂(注釋和變量顏色是一樣的)。但是每個人都有一套自己的顏色偏好,因此你可能會很想了解如何改變它的色彩來符合自己的口味。

Vim著色使用:highlight和:hi命令。:hi命令實際上是多用途命令,它負責(zé)許多例行著色,我們僅用它的顏色選擇功用。它具有以下語法:

:hi Group key=value ...

Group就是前面所說的9個高亮分組名。

key-value鍵值對規(guī)定了不同輸出終端的高亮值。這里有三個基本鍵名:term、cterm和gui,代表著黑白終端、彩色終端和圖形界面。除了term以外,另外兩個基本鍵還有兩個擴展鍵名base-namefg和base-namebg,分別代表對應(yīng)終端的前景和背景顏色;炬I只能擁有非色彩的高亮值,例如加粗和下劃線。

以下是一些高亮鍵和它們可能的值:

term/cterm/gui: bold, underline, reverse, italic, none

ctermfg/ctermbg: red, yellow, green , blue, magenta, cyan, white, blcak, gray

guifg/guibg: 以上所有顏色,而且還可以使用#rrggbb格式色彩。

例如,我想高亮我的預(yù)處理聲明為bright magenta,可以使用如下命令:

:hi PreProc ctermfg=magenta cterm=bold guifg=#FF00FF

注意,我可以在一行中使用多個鍵值對,他們都會應(yīng)用于同一個高亮分組。

通常來說,只要你喜歡一個著色方案,你可以將它設(shè)置在你的~/.vimrc文件中,Vim會自動將其加載。

語法高亮除錯:

Vim的語法高亮偶爾也存在一些小問題,我就經(jīng)常遭遇到其中的三個。 

沒有彩色,只有黑白終端高亮。

導(dǎo)致這種情況的最常見的原因是Vim無法確定終端是否具備彩色能力。要修復(fù)它,首先確保在.vimrc文件第一行設(shè)置了term=ansi,一定要在syntax on所在行之前。另外還要在shell中將環(huán)境變量TERM設(shè)置為color_xterm和color-xterm。

顏色有了,但不是我想要的。

這常發(fā)生在你試圖修改別人的.vimrc文件以為己用的時候。有時,你只需要將自己的色彩定義全部放到文件的底部去就可以修復(fù)。如果不奏效的話,檢查所有可疑的代碼,然后將它們注釋。(注釋方法為在行首添加雙引號)

滾屏?xí)r顏色亂成一團

Vim在確定高亮法則的時候使用多種探索方法來節(jié)約時間,有時這會造成一些故障。查看:h syn-sync可以得到更多細節(jié)。要修復(fù)這個,你可使用以下命令:

syn sync minlines=1000

你也可以在.vimrc文件中設(shè)置更大的數(shù)值。在Vim 6.0及以上版本,你可以使用以下命令:

syn sync fromstart

該命令強制高亮引擎從文件第一行開始解析文件,這對大文件而言會很慢,但它可以確保色彩準確度。

此時此刻,如果你習(xí)慣了使用Vim,并且你已經(jīng)鼓搗了一陣它的配置,發(fā)現(xiàn)一些你喜歡的特性,恭喜你,你現(xiàn)在是一個Vim User了。當然,在本教程中我還會教更多的關(guān)于Vim的東西,有人寫了一整本關(guān)于編程的書,但我希望你從本教程可以掌握一些基礎(chǔ)知識并且探索更多知識。享受學(xué)習(xí),這是一項你永遠不會后悔擁有的技能。

軟件標簽: Vim

配置VIM語法高亮及自動縮進

1 、配置文件的位置

在目錄 /etc/ 下面,有個名為vimrc 的文件,這是系統(tǒng)中公共的vim配置文件,對所有用戶都有效。而在每個用戶的主目錄下,都可以自己建立私有的配置文件,命名為:“. vimrc ”。例如,/root目錄下,通常已經(jīng)存在一個. vimrc 文件。

如果不知道配置文件及腳本的位置,可以在vim中使用命令 :scriptnames ,將顯示如下路徑

/etc/vimrc

/usr/share/vim/vim72/syntax/syntax.vim

/usr/share/vim/vim72/syntax/synload.vim

/usr/share/vim/vim72/syntax/syncolor.vim

/usr/share/vim/vim72/filetype.vim

/usr/share/vim/vim72/ftplugin.vim

/home/kdj/.vimrc

...

如果不知道vim配置文件的搜索位置,請輸入 :version ,將顯示

系統(tǒng)vimrc文件:"/etc/vimrc"

用戶vimrc文件:"$HOME/.vimrc"

用戶exrc文件:"$HOME/.exrc"

$VIM預(yù)設(shè)值:"/usr/share/vim"

2 、設(shè)置語法高亮顯示

1) 打開vimrc,添加以下語句來使得語法高亮顯示:

syntax on

2) 如果此時語法還是沒有高亮顯示,那么在/etc目錄下的profile文件中添加以下語句:

export TERM=xterm-color

3 、設(shè)置 Windows 風(fēng)格的 C/C++ 自動縮進(添加以下 set 語句到 vimrc 中)

1)設(shè)置(軟)制表符寬度為4:

 set tabstop=4

 set softtabstop=4

2)設(shè)置縮進的空格數(shù)為4

 set shiftwidth=4

3)設(shè)置自動縮進:即每行的縮進值與上一行相等;使用 noautoindent 取消設(shè)置:

set autoindent

4)設(shè)置 使用 C/C++ 語言的自動縮進方式:

 set cindent

5)設(shè)置C/C++語言的具體縮進方式(以我的windows風(fēng)格為例):

 set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s

6)如果想在左側(cè)顯示文本的行號,可以用以下語句:

 set nu

set roler 設(shè)置光標顯示

7)最后,如果沒有下列語句,就加上吧:

if &term=="xterm"

set t_Co=8

set t_Sb=^[[4%dm

set t_Sf=^[[3%dm

endif

軟件截圖

Vim 語法高亮文件

其他版本下載

發(fā)表評論

昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
查看所有(0)條評論 > 字數(shù): 0/500

TOP
軟件下載