使用linux這麼久,vim一直是我最喜歡的文字編輯器,簡介、功能強大。那麼在這裡我寫一篇博文來總結一下,方便以後的查閱學習。
一般情況下,剛開啟vim,就是處在一般模式下,在這個模式下,可以做移動游標,複製,貼上,刪除等操作;在編輯模式或命令列模式下按esc就會退出編輯模式,進入一般模式。
編輯模式命令列模式
只有在一般模式下才能進入命令列模式,輸入==:, /, ?==這三個符號中的任意乙個,就會把游標移到最下面一行,進入命令列模式,在這個模式下,你可以進行查詢,儲存,替換,離開等操作。
按鍵功能
h或向左的箭頭
游標向左移動乙個字元
j或向下的箭頭
游標向下移動乙個字元
k或向上的箭頭
游標向上移動乙個字元
l或向右的箭頭
游標向右移動乙個字元
【ctrl】+【f】
螢幕向下移動一頁,相當於【pagedown】按鍵
【ctrl】+【b】
螢幕向上移動一頁,相當於【pageup】按鍵
【ctrl】+【d】
螢幕向下移動半頁
【ctrl】+【u】
螢幕向上移動半頁
【+】游標移動到非空格符的下一行
【-】游標移動到非空格符的上一行
數字n+【空格鍵】
游標向右移動的n個字元
或【home】
游標移動到這一行的最前面乙個字元處
【$】或【end】
游標移動到這一行的最後面乙個字元處
【h】游標移動到螢幕最上方那一行的第乙個字元處
【m】游標移動到個螢幕的中間那一行的第乙個字元處
【l】游標移動到螢幕最下方那一行的第乙個字元處
【g】游標移動到這個檔案的最後一行
數字n+【g】
游標移動到這個檔案的第n行
【gg】
游標移動到這個檔案的第一行
數字n+【enter】
游標向下移動n行
【/】+word
從游標開始向下查詢「word」這個字串
【?】從游標開始向上查詢「word」這個字串
【n】重複前乙個查詢的操作
【n】反向進行前乙個查詢的操作
【:n1,n2s/word1/word2/g】
n1和n2為數字,該操作是在第n1行到第n2行查詢word1這個字串,並將其替換為word2
【:1,$s/word1/word2/g
n1和n2為數字,該操作是從第一行到最後一行查詢word1這個字串,並將其替換為word2】
【:1,$s/word1/word2/gc
該操作是從第一行到最後一行查詢word1這個字串,並將其替換為word2,並且在每次替換前讓使用者確認是否替換】
【x】和【x】
在一行字當中,【x】為向後刪除乙個字元,相當於【delet】;【x】為向前刪除乙個字元,相當於【backspace】
數字n+【x】
在一行字當中,向後刪除n個字元
【dd】
刪除游標所在的那一整行
數字n+【dd】
刪除游標所在的向下n行
【d】+數字1+【g】
刪除從游標所在到第一行的所有資料
【dg】
刪除從游標所在到最後一行的所有資料
【d$】
刪除從游標所在到該行的最後乙個字元
【d】+數字0
刪除從游標所在到該行最前面乙個字元
【yy】
複製游標所在的那一行
數字n+【yy】
複製游標所在的向下n行
【y】+數字1+【g】
複製游標所在行到第一行的所有資料
【yg】
複製游標所在行到最後一行的所有資料
【y】+數字0
複製游標所在的那個字元到該行行首的所有資料
【y$】
複製游標所在的那個字元到該行行尾的所有資料
【p】和【p】
【j】將游標所在行與下一行的資料結合為同一行
【c】重複刪除多個資料,如向下刪除5行,則是【5cj】
【u】撤銷上乙個操作
【ctrl】+【r】
重做上乙個操作
【.】小數點.的作用是重複前乙個操作
按鈕功能
【i】和【i】
進入插入模式,【i】為在游標前插入;【i】為在游標所在行的第乙個非空格符處插入
【a】和【a】
進入插入模式,【a】為在游標所在的下乙個字元處插入;【a】為在游標所在的最後乙個字元處插入
【o】和【o】
【r】和【r】
進入替換模式,【r】只會替換游標所在的那個字元一次;【r】會一直替換游標所在的字元,直到按下【esc】為止
命令按鈕
功能【:w】
將編輯的資料寫入硬碟檔案
【:w!】
對唯讀檔案進行強制寫入,但還是要看許可權
【:q】
離開vim
【:q!】
強制離開vim,編輯過的檔案將不儲存
【:wq】
儲存後離開
【zz】
若檔案變動了,則儲存後離開,若沒有變動,則不儲存離開
【:w[filename]】
將編輯的檔案另存為另乙個檔案
【:r[filename]】
在編輯的資料中讀入另乙個檔案的資料,新增到游標所在行的後面
【:n1,n2 w[filename]】
將n1到n2之間的內容儲存成另乙個檔案
【:! command】
暫時離開vim,到命令列下執行command的顯示結果
【:set nu】
顯示行號
【:set nonu】
不顯示行號
按鈕功能
【v】字元選擇,將游標經過的地方選擇
【v】行選擇,將游標經過的行選擇
【ctrl】+【v】
塊選擇,可以豎著選
【y】將選擇的內容複製
【d】將選擇的內容刪除
按鈕功能
【:sp[filename]】
filename可以為空,主要功能是開啟乙個新視窗
【ctrl】+【w】+【j】/向下的箭頭按鈕
游標移動到下方的視窗
【ctrl】+【w】+【k】/向上的箭頭按鈕
游標移動到上方的視窗
【ctrl】+【w】+【q】/【:q】
退出視窗
配置檔案在/etc/vimrc中,但是不推薦更改這個檔案,我們可以更改~/.vimrc這個檔案,這個檔案預設不存在,但是可以新建,相當於個人設定 ?。
這個配置可以在vim介面輸入:set all來檢視,真的非常多,我們一般只配置常見的幾個,其他的有需要的話請檢視文件。
專案功能
:set nu
顯示行號
:set nonu
不顯示行號
:set autoindent
自動縮排
:set noautoindent
不自動縮排
:syntax on/off
是否開啟程式相關語法顏色顯示
vim是乙個功能非常強大的編輯器,我相信使用linux系統的很多人都在使用vim來處理一些工作或者程式設計,熟悉這些操作,讓你的vim之旅更加暢快,更加高效。
用好網路,用好電腦, 事半功倍
確實該更新筆記本了。那幾個筆記本,現在看來都不滿意。現在來說滿意的,應該是知名的,好的。早買早享受。今天買了吧。台式的電腦我已經有了。筆記本要不要?有沒有這個需要?相對於筆記本,我更喜歡台式的。既然如此,那麼電腦我就用台式的。那幾個膝上型電腦我就處理掉吧,基本都不會用到了。然後就是 網路我實際不滿意...
事半功倍,事倍功半?
在我們生活和工作中,並不總是拿結果來衡量優與劣,而是大多要加上一點 做事效率。正如我們題目所講的 別人用了一半的時間或者精力出色的完成了一項任務,而你卻用了他多倍的時間或者精力完成了這項任務,甚至結果還不如他人,為什麼?普遍來說我們可以忽略智力因素,畢竟沒幾個 天才 剩下的也許我們只能歸結於學習方法...
事半功倍,事倍功半?
在我們生活和工作中,並不總是拿結果來衡量優與劣,而是大多要加上一點 做事效率。正如我們題目所講的 別人用了一半的時間或者精力出色的完成了一項任務,而你卻用了他多倍的時間或者精力完成了這項任務,甚至結果還不如他人,為什麼?普遍來說我們可以忽略智力因素,畢竟沒幾個 天才 剩下的也許我們只能歸結於學習方法...