最近在學習git,其中編輯器用了vim編輯器,所以先學習vim編譯器的使用。
vi編輯器是linux和unix上最基本的文字編輯器,工作在字元模式下。vim(vi improved)是從vi發展出來的乙個編輯器,它不僅相容vi的所有指令,而且還有一些新的特性。
總的來說vim對於vi的優勢在於:
1)多級撤消
在vi的命令模式裡,按 u只能撤消上次命令,而在vim裡可以無限制的撤消,幾乎等同於windows下的ctrl+z了 。
2)多作業系統支援
vi只能執行於unix中,而vim不僅可以執行於unix,還有windows ,mac等作業系統上。
3)語法加亮
作為一名程式設計師,我覺得這個效果用處最大了- vim可以對**進行多顏色的語法加亮。
4)視覺化操作
因為vim不僅可以在終端執行,也可以執行於x window、 mac os、 windows, 所以說他「視覺化」。
5)對vi的完全相容
某些情況下,vim可以完全被當成vi來使用
注:vi是區分大小寫的
vim有6種基本方式,分別是:
常用操作:
進入插入模式:a,i,r,o大小寫都可以(但是開始的位置不同)
從插入模式退出:esc
左移動:h或者backspace 右移動:l,space
下移動:j 上移動:k 這些用方向鍵也可以
移動到行首:0,(兩個字元"0,") 移動到行末: $
h,m,l:分別移動到螢幕的最上,中,最下
g:移動到文件最後一行 gg:移動到文件的第一行
v:進入游標模式,配合移動鍵選擇多行,再按一次退出
ctrl+f:向下翻頁 ctrl+b:向上翻頁 ctrl+r:重複上一次操作 ctrl+z:暫停並退出
u:撤銷上次操作(如果撤銷多了可以ctrl+r來恢復,就是撤銷撤銷操作)
``:回到上次操作的位置
dw:刪除這個單詞後面的內容 dd:刪除游標當前行
dg:刪除游標後面所有內容 d$:刪除本行游標後面所有內容
y:複製當前行,會複製換行符 yy:複製當前行的內容
yyp:複製當前行到下一行,不會放到剪下板上
nyy:複製當前開始的n行,n是數字
p,p,. : 貼上 ddp:當前行與下一行互換位置
~:改變游標位置的大小寫
zz:儲存並離開
x:刪除乙個字元,游標後
x:刪除乙個字元,游標前
:split :新開乙個視窗 ctrl+w:切換視窗(可與方向鍵配合)
游標操作:
ctrl+e:向下滾動 ctrl+b:向上翻頁
b:按照單詞向前移動 e:按照單詞向後移動 w:按單詞到下乙個單詞字首
b,e,w這三個和相應的小寫功能相似,只是忽略一些標點(哪些標點沒仔細找)
(,):分別是游標到句首和句尾
:分別是游標到段首和段尾
ng:游標移動(可上可下)到n行首位
n$:游標移動(可上可下)到n行尾部
n+,n-:游標向上,向下移動n行
查詢操作:
*:向下查詢同樣游標的字元
#:向上查詢同樣游標的字元
/code:查詢 code 一樣的內容,向後
?code:查詢 code 一樣的內容,向前
n:查詢下一處 n:查詢上一處
指令操作:
:q :一般退出 :q! :推出不儲存
:wq :儲存退出 :w filename:另存為 filename
:set :顯示設定引數 :set autoindent:自動縮排,回車與第乙個非空格符對齊
常見用法:
tab用來縮排,tab縮排寬度預設為8個空格
編譯器使用
建立乙個自定義列表 如何建立乙個註腳 注釋也是必不可少的 katex數學公式 新的甘特圖功能,豐富你的文章 uml 圖表 flowchart流程圖 匯出與匯入 你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下mar...
Linux gcc g 編譯器使用
1.首先應會設定幾個好用的環境變數 cplus include path cplus include path home test include 此環境變數用來設定標頭檔案包含路徑,這樣就不用編譯的時候新增路徑咯 ld library path ld library path home test ...
clang 編譯器使用
通常的程式需要經過預處理階段,編譯階段,彙編階段,鏈結階段 include using namespace std intmain 1.生成預處理檔案clang e test.cc o test.i預處理檔案test.i如下 1 test.cc 1 1 1 3 342 3 1 1 1 2 1 tes...