回覆列表
  • 1 # 使用者2480997079771

    一、移動游標

    h,j,k,l 上,下,左,右ctrl-e 移動頁面ctrl-f 上翻一頁ctrl-b 下翻一頁ctrl-u 上翻半頁ctrl-d 下翻半頁w 跳到下一個字首,按標點或單詞分割W 跳到下一個字首,長跳,如end-of-line被認為是一個字e 跳到下一個字尾E 跳到下一個字尾,長跳b 跳到上一個字B 跳到上一個字,長跳0 跳至行首,不管有無縮排,就是跳到第0個字元^ 跳至行首的第一個字元$ 跳至行尾gg 跳至文首G 調至文尾5gg/5G 調至第5行gd 跳至當前游標所在的變數的宣告處fx 在當前行中找x字元,找到了就跳轉至; 重複上一個f命令,而不用重複的輸入fx* 查詢游標所在處的單詞,向下查詢# 查詢游標所在處的單詞,向上查詢

    dd 刪除游標所在行dw 刪除一個字(word)d/D刪除到行末x刪除當前字元X刪除前一個字元yy複製一行yw複製一個字y/D刪除到行末x刪除當前字元X刪除前一個字元yy複製一行yw複製一個字y/Y 複製到行末p 貼上貼上板的內容到當前行的下面P 貼上貼上板的內容到當前行的上面

    三、插入模式

    i 從當前游標處進入插入模式I 進入插入模式,並置游標於行首a 追加模式,置游標於當前游標之後A 追加模式,置游標於行末o 在當前行之下新加一行,並進入插入模式O 在當前行之上新加一行,並進入插入模式Esc 退出插入模式

    四、編輯

    J 將下一行和當前行連線為一行cc 刪除當前行並進入編輯模式cw 刪除當前字,並進入編輯模式c$ 擦除從當前位置至行末的內容,並進入編輯模式s 刪除當前字元並進入編輯模式S 刪除游標所在行並進入編輯模式xp 交換當前字元和下一個字元u 撤銷ctrl+r 重做~ 切換大小寫,當前字元>> 將當前行右移一個單位<< 將當前行左移一個單位(一個tab符)== 自動縮排當前行

    五、查詢替換

    /pattern 向後搜尋字串pattern?pattern 向前搜尋字串pattern"\c" 忽略大小寫"\C" 大小寫敏感

    n 下一個匹配(如果是/搜尋,則是向下的下一個,?搜尋則是向上的下一個)N 上一個匹配(同上):%s/old/new/g 搜尋整個檔案,將所有的old替換為new:%s/old/new/gc 搜尋整個檔案,將所有的old替換為new,每次都要你確認是否替換

    六、退出編輯器

    :w 將緩衝區寫入檔案,即儲存修改:wq 儲存修改並退出:x 儲存修改並退出:q 退出,如果對緩衝區進行過修改,則會提示:q! 強制退出,放棄修改

    七、多檔案編輯

    vim file1.. 同時開啟多個檔案:args 顯示當前編輯檔案:next 切換到下個檔案:prev 切換到前個檔案:next! 不儲存當前編輯檔案並切換到下個檔案:prev! 不儲存當前編輯檔案並切換到上個檔案:wnext 儲存當前編輯檔案並切換到下個檔案:wprev 儲存當前編輯檔案並切換到上個檔案:first 定位首檔案:last 定位尾檔案ctrl+^ 快速在最近開啟的兩個檔案間切換:split[sp] 把當前檔案水平分割:split file 把當前視窗水平分割, file:vsplit[vsp] file 把當前視窗垂直分割, file:new file 同split file:close 關閉當前視窗:only 只顯示當前視窗, 關閉所有其他的視窗:all 開啟所有的視窗:vertical all 開啟所有的視窗, 垂直開啟:qall 對所有視窗執行:q操作:qall! 對所有視窗執行:q!操作:wall 對所有視窗執行:w操作:wqall 對所有視窗執行:wq操作ctrl-w h 跳轉到左邊的視窗ctrl-w j 跳轉到下面的視窗ctrl-w k 跳轉到上面的視窗ctrl-w l 跳轉到右邊的視窗ctrl-w t 跳轉到最頂上的視窗ctrl-w b 跳轉到最底下的視窗

    八、多標籤編輯

    :tabedit file 在新標籤中開啟檔案file:tab split file 在新標籤中開啟檔案file:tabp 切換到前一個標籤:tabn 切換到後一個標籤:tabc 關閉當前標籤:tabo 關閉其他標籤gt 到下一個tabgT 到上一個tab0gt 跳到第一個tab5gt 跳到第五個tab

    九、執行shell命令

    1、在命令模式下輸入":sh",可以執行相當於在字元模式下,到輸入結束想回到VIM編輯器中用exit,ctrl+D返回VIM編輯器2、可以"!command",執行結束後自動回到VIM編輯器中3、用“Ctrl+Z“回到shell,用fg返回編輯4、:!make -> 直接在當前目錄下執行make指令

    十、VIM啟動項

    -o[n] 以水平分屏的方式開啟多個檔案-O[n] 以垂直分屏的方式開啟多個檔案

    十一、自動排版

    在貼上了一些程式碼之後,vim變得比較亂,只要執行gg=G就能搞定

    十二、如何在vim中編譯程式

    在vim中可以完成make,而且可以將編譯的結果也顯示在vim裡,先執行 :copen 命令,將結果輸出的視窗開啟,然後執行 :make編譯後的結果就顯示在了copen開啟的小窗口裡了,而且用滑鼠雙擊錯誤資訊,就會跳轉到發生錯誤的行。

    十三、buffer操作

    1、buffer狀態- (非活動的緩衝區)a (當前被啟用緩衝區)h (隱藏的緩衝區)% (當前的緩衝區)# (交換緩衝區)= (只讀緩衝區)+ (已經更改的緩衝區)

    十四、 VIM 操作目錄

    1.開啟目錄vim .vim a-path/

    2.以下操作在操作目錄時生效p,P,t,u,U,x,v,o,r,s

    mf - 標記檔案mu - unmark all marked filesmz - Compress/decompress marked filesgh 顯示/不顯示隱藏檔案( dot-files)^h 編輯隱藏檔案列表a 轉換顯示模式, all - hide - unhideqf diplay infomation about fileqb list the bookmarked directories and directory traversal historygi Display information on file

    mbmcmd - 將標記的檔案(mf標記檔案)使用 diff 模式me - 編輯標記的檔案,只顯示一個,其餘放入 buffer 中mhmm - move marked files to marked-file target directorymc - copympmrmt

    vim 中複製,移動檔案1, mt - 移動到的目錄2, mf - 標記要移動的檔案3, mc - 移動/複製

    R 移動檔案

    開啟當前編輯檔案的目錄:Explore:Hexplore:Nexplore:Pexplore:Sexplore:Texplore:Vexplore

  • 中秋節和大豐收的關聯?
  • 保衛蘿蔔怪物窩解鎖條件?