vim使用技巧

2021-07-15 07:09:48 字數 4380 閱讀 7695

移動游標類命令

h :游標左移乙個字元

l :游標右移乙個字元

space:游標右移乙個字元

backspace:游標左移乙個字元

k或ctrl+p

:游標上移一行

j或ctrl+n

:游標下移一行

enter :游標下移一行

w或w

:游標右移乙個字至字首

b或b

:游標左移乙個字至字首

e或e

:游標右移乙個字至字尾

) :游標移至句尾

( :游標移至句首

}:游標移至段落開頭

]\ [type=%y]\ [pos=%l,%v][%p%%]\ %   "狀態行顯示的內容  

set laststatus=1    " 啟動顯示狀態行

(1),

總是顯示狀態行

(2)  

set foldenable      " 允許摺疊  

set foldmethod=manual   " 手動摺疊  

set background=dark "背景使用黑色

set nocompatible  "去掉討厭的有關

vi一致性模式,避免以前版本的一些

bug和侷限  

" 顯示中文幫助

if version >= 603

set helplang=cn

set encoding=utf-8

endif

" 設定配色方案

colorscheme murphy

"字型

if (has("gui_running"))

set guifont=bitstream\ vera\ sans\ mono\ 10

endif

vim 編碼方式的設定

和所有的流行文字編輯器一樣,vim

可以很好的編輯各種字元編碼的檔案,這當然包括

ucs-2

、utf-8

等流行的

unicode

編碼方式。然而不幸的是,和很多來自

linux

世界的軟體一樣,這需要你自己動手設定。

vim 有四個跟字元編碼方式有關的選項,

encoding

、fileencoding

、fileencodings

、termencoding (

這些選項可能的取值請參考

vim

:help encoding-names)

,它們的意義如下

:* encoding: vim 內部使用的字元編碼方式,包括

vim

的 buffer (

緩衝區)

、選單文字、訊息文字等。預設是根據你的

locale選擇.

使用者手冊上建議只在

.vimrc

中改變它的值,事實上似乎也只有在

.vimrc

中改變它的值才有意義。你可以用另外一種編碼來編輯和儲存檔案,如你的

vim的

encoding

為utf-8,

所編輯的檔案採用

cp936

編碼,vim

會 自動將讀入的檔案轉成

utf-8(vim

的能讀懂的方式),而當你寫入檔案時

,又會自動轉回成

cp936

(檔案的儲存編碼

).* fileencoding: vim 中當前編輯的檔案的字元編碼方式,

vim

儲存檔案時也會將檔案儲存為這種字元編碼方式

(不管是否新檔案都如此)。

* fileencodings: vim自動探測

fileencoding

的順序列表,啟動時會按照它所列出的字元編碼方式逐一探測即將開啟的檔案的字元編碼方式,並且將

fileencoding

設定為最終探測到的字元編碼方式。因此最好將

unicode

編碼方式放到這個列表的最前面,將拉丁語系編碼方式

latin1

放到最後面。

* termencoding: vim 所工作的終端

(或者

windows

的 console

視窗)

的字元編碼方式。如果

vim所在的

term

與vim

編碼相同,則無需設定。如其不然,你可以用

vim的

termencoding

選項將自動轉換成

term

的編碼.

這個選項在

windows

下對我們常用的

gui

模式的

gvim

無效,而對

console

模式的vim

而言就是

windows

控制台的**頁,並且通常我們不需要改變它。

好了,解釋完了這一堆容易讓新手犯糊塗的引數,我們來看看 vim

的多字元編碼方式支援是如何工作的。

1. vim 啟動,根據

.vimrc

中設定的

encoding

的值來設定

buffer

、選單文字、訊息文的字元編碼方式。

2. 讀取需要編輯的檔案,根據

fileencodings

中列出的字元編碼方式逐一探測該檔案編碼方式。並設定

fileencoding

為探測到的,看起來是正確的 (注

1) 字元編碼方式。

3. 對比

fileencoding

和 encoding

的值,若不同則呼叫

iconv

將檔案內容轉換為

encoding

所描述的字元編碼方式,並且把轉換後的內容放到為此檔案開闢的

buffer

裡,此時我們就可以開始編輯這個檔案了。注意,完成這一步動作需要呼叫外部的

iconv.dll(注2)

,你需要保證這個檔案存在於

$vimruntime

或者其他列在

path

環境變數中的目錄裡。

4. 編輯完成後儲存檔案時,再次對比

fileencoding

和 encoding

的值。若不同,再次呼叫

iconv

將即將儲存的

buffer

中的文字轉換為

fileencoding

所描述的字元編碼方式,並儲存到指定的檔案中。同樣,這需要呼叫

iconv.dll

由於 unicode

能夠包含幾乎所有的語言的字元,而且

unicode

的 utf-8

編碼方式又是非常具有價效比的編碼方式

(空間消耗比

ucs-2 小)

,因此建議

encoding

的值設定為

utf-8

。這麼做的另乙個理由是

encoding

設定為

utf-8

時,vim

自動探測檔案的編碼方式會更準確

(或許這個理由才是主要的

;)。我們在中文

windows

裡編輯的檔案,為了兼顧與其他軟體的相容性,檔案編碼還是設定為

gb2312/gbk

比較合適,因此

fileencoding

建議設定為

chinese (chinese

是個別名,在

unix

裡表示

gb2312

,在 windows

裡表示cp936

,也就是

gbk

的**頁)。

在windows

下亂碼解決辦法

set encoding=utf-8  

set termencoding=utf-8  

set fileencoding=utf-8

set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1

set langmenu=zh_cn.utf-8  

source $vimruntime/delmenu.vim  

source $vimruntime/menu.vim  

language messages zh_cn.utf-8 

vim 使用技巧

本文一般情況下用 1.選定文字 拷貝貼上 v為可視模式,可以選定多行。選定多行之後,可以用yy或者dd等等進行拷貝和剪下。p 是貼上 y 和d 可以直接拷貝或者剪下選定的內容 yw是拷貝乙個單詞 如果要複製整行的最簡單辦法就是v,y,p 就行了 v是可以選定一行任意個字元的,v是行選定的,一次一整行...

vim使用技巧

v為可視模式,可以選定多行。選定多行之後,可以用yy或者dd等等進行拷貝和剪下。p 是貼上 y 和d 可以直接拷貝或者剪下選定的內容 yw是拷貝乙個單詞 如果要複製整行的最簡單辦法就是v,y,p 就行了 v是可以選定一行任意個字元的,v是行選定的,一次一整行,然後通過向下或向上移動游標而選定多行。對...

VIM 使用技巧

ctrl o 連摁兩次,直接開啟上次關閉時編輯的檔案 ctrl o 摁一次,是跳回上乙個起跳處 很有用!ctrl r 撤銷撤銷。u是撤銷,ctrl r是撤銷那個撤銷 跳回到上乙個編輯點 b 往後移動乙個詞,游標在詞首 查詢當前游標處的詞,向前,是像後。不過在我的7.1的版本上一點 搜尋到的關鍵字就已...