VIM基本操作和設定

來源:互聯網
上載者:User

一、基本編輯功能
1、複製、剪下和粘貼
複製特定的某一段:把游標移到要複製的文本的頭部,按下“v”,往後移動游標,游標所過之處的字元>都會高亮,移到欲複製文本的尾部後,按下“y”,高亮文本全部被複製到剪粘板。
複製某一行:把游標移到要複製的那一行,按下“yy”,該行就被複製到剪粘板。
剪下特定的某一段:把游標移到要剪下的文本的頭部,按下“v”,往後移動游標,游標所過之處的字元>都會高亮,移到欲剪下文本的尾部後,按下“y”,高亮文本全部被複製到剪粘板。
剪下某一行:把游標移到要剪下的那一行,按下“dd”,該行就被複製到剪粘板。
粘貼剪粘板的內容到游標處:把游標移到要粘貼的位置,按下“p”。
2、搜尋、替換
向前搜尋字串“example”:/example。
向後搜尋字串“example”:?example。
搜到第一個字串後,按下“n”向後搜尋下一個,按下“N”向前搜尋下一個。
全文替換: 把全文的old替換為new :%s/old/new/g
把全文的old替換為new,但每次要求確認::%s/old/new/c
3、Undo和redo
Undo:按下“u”。
Redo: 按下“Ctrl + R”。
4、儲存、另存新檔
儲存:“w”。
另存新檔:“w filename”。
二、文法高亮,格式設定
首先在vi中匯入vimrc範例檔案::read $VIMRUNTIME/vimrc_example.vim。然後把它儲存到你的使用者目錄下,儲存檔案名稱為.vimrc。檔案中有一句:syntax on。即為開啟文法高亮功能。
關於這個檔案中,還有幾個比較有用的設定:
set ruler       “任何時候都顯示光線標位置。
set showcmd     “顯示不完整的命令。
set tabstop=4   “tab鍵縮排4格。

三、關鍵字補全
Ctrl + N:找到匹配的關鍵字把當前未拼字完的關鍵字補充完整,如果有多個可匹配項,則每按一次Ctrl+N,切換到下一項。如果習慣用tab鍵補充關鍵字,則可以在.vimrc檔案中添加如下代碼:
function! CleverTab()
if strpart( getline(’.'), 0, col(’.')-1 ) =~ ‘^/s*$’
return “/<Tab>”
else
return “/<C-N>”
endfunction
inoremap <Tab> <C-R>=CleverTab()<CR>

四、編輯一個工程
通常我們在開發一個程式中,不止一個來源程式檔案,我們要在整個工程中編輯原始碼,就需要經常在檔案間進行切換,這時,可以使用命令:
:e filename
切換到目標檔案,而不需要退出vi。
編輯完成,要make,直接輸入make命令,如果有錯誤,該命令執行完畢後,會自動跳到第一個錯誤的地方,還有幾個命令可以在錯誤行之間定位:
:cc 顯示錯誤資訊。
:cn 顯示下一條錯誤資訊。
:cp 顯示前一條錯誤資訊。
:cl 列出所有錯誤。
五、其它
1、括弧匹配。
包括{} [] ()的匹配,在某一個括弧上按下%,便會自動跳到與之匹配的那個括弧處,再按一下%,就會跳回來。
2、獲得線上協助。
在編輯程式原始碼時,如果對某個系統函數的用法不是很明確,把游標移到這個函數下,按下“K”,便>會跳出這個函數的man協助資訊。
3、暫時回到shell。
輸入命令:sh
4、在vi中執行shell命令。
輸入:!cmd,比如:!ls。


實用技巧:在Vim編輯器下文法高亮的設定

如果希望vim預設開啟支援文法高亮(只在支援色彩的終端中),編輯(ubuntu 7.10 amd版中實現,很多時候只要直接用sudo apt-get install vim 升級安裝vim就可以實現這個功能,但是linux這個東西經常會出現莫名其妙的問題,下面的這個方法比較直接)

sudo vim ~/.vimrc
內容為:
if &t_Co > 1
syntax enable
endif

Vim的啟動配置

不習慣使用vi的時候,會覺得用它看代碼很不方便,累。其實,vi的功能非常強大,稍做配置,就能得到一個友好的編輯器。在啟動的時候vim會讀取 /usr/share/vim/vim61/.vimrc(全域設定的vimrc)和   ~/.vimrc(使用者佈建的vimrc,~/也就是大家登入後的根目錄home/usrname/,所以可以根據自己的需要create一個rc檔案) 並根據該檔案的內容來配置vim的各項設定。
下面的是一個範例vimrc檔案:
set   nocompatible
set   bs=2
set   columns=80
set   background=dark
set   tabstop=8
set   wrapmargin=8
set   nobk
set   cindent
set   shiftwidth=8
syntax   on
set   ruler
set   noexpandtab

下面是各項設定的具體內容:
set   nocompatible   :這個設定將避免vim以和vi高度相容的方式工作,該設定需要在每個vimrc檔案的最開始處,從而影響接下來的很多設定;
set   bs=2   :這個將影響退格鍵的工作,具體情況非常複雜,可以參照:help   ‘bs’;
set   columns=80   :設定螢幕的行數;
set   background=dark   :使用在深色背景上看起來比較舒服的顏色顯示;
set   tabstop=8   :tab鍵跳過的空格數,tabstop=8是預設值,不過為了和windows平台下的編輯器相容,建議選擇tabstop=4;
set   wrapmargin=8   :設定在視窗右側何處開始換行;
set   nobk   :關閉檔案備份的功能;
set   cindent   :開啟縮排功能;
set   shiftwidth   :設定縮排的長度,shiftwidth=8是預設值,為了相容建議選擇shiftwidth=4;
syntax   on   :開啟文法結構強調,就是文法高亮;
set   ruler   :使得vim在右下角顯示當前行列數;
set   noexpandtab   :使vim在tab處,插入tab符而不是一串空格。

閱讀vim內部的協助資訊可以獲得,很多vim參數的資訊。在vim中敲入   :help   可以擷取協助,或者:help   usr_toc.txt可以讀取使用者手冊的目錄。


高亮顯示php代碼

進入vim後,在普通模式下輸入如下命令,開啟php代碼高亮顯示

:syntax enable

:source $VIMRUNTIME/syntax/php.vim
本文來自:http://www.linuxpk.com/43172.html

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.