vim-1-基本使用

來源:互聯網
上載者:User

標籤:style   http   使用   檔案   os   line   

------------------------------------------------------------------------------------gvim的四種模式:普通模式,插入模式,替換模式,命令模式。
普通模式》插入模式   i/I 在游標前面/行首插入   a/A 在游標後面/行尾插入   o 在下一行行首插入   O 在上一行行首插入   s 刪除游標所在字元並開始插入(具體用法看x)   c 開始刪除,之後進入插入模式(具體用法看d)   插入模式和在windows下一樣,各種快速鍵都能用   另外,在普通模式下,ctrl+s依然是儲存
普通模式》替換模式    r:替換游標所在的字元   數字r:將游標所在向後n個字元都替換掉   R:從游標所在字元開始替換,按esc回到普通模式
普通模式》命令模式: 按:
插入模式,命令模式》普通模式:按esc註:我將插入/替換模式的esc映射成kk了,在插入/替換模式下按kk即可返回普通模式------------------------------------------------------------------------------------普通模式:進入gvim後的預設模式  --------------------------------------------------  移動:    h j k l:左下上右移動    數字 h j k l:左下上右移動n下    w/e:移動到下一個單詞開頭/結尾    b/B(ge):移動到上一個單詞開頭/結尾    f/t a:在當前行,移動到下一個出現a的位置/前    F/T a:在當前行,移動到上一個出現a的位置/前    數字f/t a:在當前行向後移動到第n次出現a的位置/前    數字F/T a:在當前行向前移動到第n次出現a的位置/前    0/$:定位到行首/行尾    ^/g_:定位到非空格的行首/行尾    %:在兩個匹配的符號((,",{)等等中切換(游標需先移動到其中一個符號,     如果不在,則會向後找到最近的一個)    數字%:按照百分比定位文檔 的位置    G:定位到最後一行行首    行號G:定位到對應行號行首    gg:移動到第一行行首    H:定位到當前螢幕的最上邊    M:定位到當前螢幕的中間    L:定位到當前螢幕的最下邊    ctrl+u/d:向上/下滾動半屏    ctrl+f/b:向上/下滾動整屏    zz:把當前行置為螢幕正中間    J:將下一行移動到這一行末尾(合并當前行和下一行)    關於數字鍵: 數字+命令表示執行多次操作, 數字一般放在命令之前.
    >>/<<:當前行增大/減小縮排    ==:當前行自動進行縮排
    ``:反單引號,在兩個跳轉點之間切換,如果你原先處在33行,跳到了55行,        使用這個命令可以回到33行,多次使用就是來回切換,        註:j,k導致的跳轉不可,並且需要是不在同一行內的位置間的切換    ctrl+o/i:跳轉到上一次/下一個游標停留位置(不在同一行內,且不是hjkl導致的游標移動)
     --------------------------------------------------  尋找:    /xxx:在全文中尋找xxx,並高亮顯示,字元.*[]^%/?~$ 有特殊意義,需要用\轉義    ?xxx:和/效果一樣,只是尋找方向反向    N/n:在高亮的選中處之間前後切換,前面可以加數字,表示第n次出現的位置    vim會記錄已經尋找過的內容,再次尋找時,可通過上下鍵來切換    #/*:移動到上一個/下一個與游標所在單詞相同的單詞    /\<xxx\>:匹配完整的單詞,如果某單詞中只是包含xxx,不會被匹配上
模式搜尋(Regex搜尋):^ 表示一行的開頭,$ 表示一行的結尾,^the就表示位於行首的the. 表示任一字元,如果想尋找的就是. ,則需要轉義    一個有用的命令    :nohlsearch,此命令可以取消當前的高亮, 簡寫 nohl   --------------------------------------------------  複製,剪下,刪除,粘貼:    在vim中,剪下和刪除是一樣的    下列命令中其實是沒有中間的空格的,這裡只是為了方便閱讀註:幾乎所有的移動,複製,粘貼命令前面都可以加數字,表示重複的次數,也幾乎都可以加上移動鍵,表示向某個方向複製/剪下        y:開始複製    yy/Y:複製當前行    行號yy:從當前行開始,複製多行    y 0/$:從游標處複製到本行開頭/末尾    y w/e:複製一個單詞,或從游標處複製到本單詞末尾    yt a:從游標出開始複製,直到遇見a,a不複製yG:從當前行開始複製直到最後一行yyg:從當前行開始複製直到第一行       x:剪下/刪除游標所在的字元,依然停留在普通模式X:刪除當前游標左邊的字元    數字 x:剪下/刪除從游標開始往後的n個字元,依然停留在普通模式       d:開始剪下/刪除(用法和y類似,不多說了)dd:剪下整行D:剪下至行尾的內容(這點和y不一樣)        p:粘貼複製/剪下的內容到游標後面,如果是整行的,則粘貼到當前行的上面    P:粘貼複製/剪下的內容到游標前面,如果是整行的,則粘貼到當前行的下面    數字p/P:粘貼多次    ddp:其實就是刪除當前行再粘貼了,但是你會發現,當前行和下一行換位置了xp:其實就是刪除當前游標所在字元再粘貼,但是你會發現,兩個字元交換位置了
.:普通模式中重複上次的命令,除了u命令,這個只能重複最近的一次命令比如先搜尋出全文中的xxx,然後cwyyy,表示修改成yyy,然後回到普通模式,n.n.n.一直按,之後的xxx都會變成yyy,cwyyy這個命令就會一直重複     --------------------------------------------------  文字物件之前的複製和刪除都是以字元,行為單位,w,e的作用是從游標處到下個單詞開頭或本單詞結尾,所以要想刪除整個單詞,還得先將游標移動到單詞開頭,這很麻煩,可以使用文字物件搞定aw:a word,表示一個單詞,及其後面的空白,daw表示刪除游標所在單詞及空白iw:inner word,也是表示一個單詞,但是不包括單詞後面的空白as:a sentence,表示一個句子,及其後面的空白,das表示刪除游標所在句子及空白is:inner sentence,也是表示一個句子,但是不包括句子後面的空白
  --------------------------------------------------  可視化選擇:    v:可視化選擇,按esc或再次按v退出,選擇的內容會被複製在可視化選擇模式中,移動鍵,數字鍵,都是可以使用的V:整行可視化選擇ctrl+q:塊可視化選擇,其實應該是ctrl+v,但是windows裡這個是粘貼,所以不能用gg,然後ctrl+q(ctrl+v),然後按G,就可以選擇文本的第一列o:在(塊)可視化選擇狀態下,使游標移動到選擇地區的另一頭O:在塊可視化選擇狀態下,使游標移動到這一行的另一頭      --------------------------------------------------  宏:按q鍵開始錄製宏,一般跟上寄存器的名字,寄存器可使用26個英文字母如qm,表示將宏錄製到m寄存器中,然後進行一系列操作,都會被記錄下來,再次按q,退出宏錄製,按@m表示播放m寄存器中的宏,前面可以加數字表示播放次數,按@@表示播放之前播放過那個個宏,  --------------------------------------------------  自動補全:  ctrl+p:牛逼到爆
  ----------------------------------------------------剪下板:  y, d, c, x等等命令都是將內容存進了vim的剪下板, 如何和windows的剪下板互動?  在這些命令之前加 "* , 即可
  --------------------------------------------------  其他:    u:撤銷上次操作, U: 行撤銷, 可以撤銷所有在最近行上的編輯操作.    ctrl+r:恢複上次操作(ctrl+y也可以,但它是windows中的快速鍵)    ctrl+l:有時候vim中的有些文字會花掉,此快速鍵可以重新整理視圖       gU/gu:將選中的內容轉化為大/小寫        ctrl+p:自動補全之前編輯過的單詞,片語    ZZ:退出當前編輯的檔案------------------------------------------------------------------------------------命令模式  --------------------------------------------------  一般命令: 命令模式前面都有個":"這裡就省略了 w:儲存不退出 wq/x: 儲存退出 q/q!:不儲存退出/強制不儲存退出 e!:放棄所有修改,載入檔案的初始狀態,慎用!        pwd: 顯示目前的目錄 !shell指令:執行shell(dos)指令 r!shell指令:將shell(dos)指令的執行結果寫到當前行的下面 在命令模式裡按上下箭頭可以切換之前輸入的命令   --------------------------------------------------  編輯多個檔案:e/edit 檔案路徑:在當前標籤頁中開啟檔案,路徑中使用/或\都可以,可使用tab鍵自動補全檔案名稱。也可以一次開啟多個檔案,檔案路徑中間以空格隔開previous/next:切換到上一個/下一個開啟的檔案wprevious/wnext:儲存當前檔案,然後切換到上一個/下一個開啟的檔案bp/bn:在當前標籤頁中切換上一個/下一個檔案        vim -R filename, 以制度方式開啟
  --------------------------------------------------  分割視窗:split:在當前視窗上方分割一個視窗,新視窗中依然是當前檔案new:分割出新的空視窗split filepath:在新視窗開啟檔案new filename:在新視窗中編輯檔案split,new命令都可以在前面加上數字,表示新視窗的高度(行數)ctrl+w w:在兩/多個視窗鍵切換ctrl+w +/ctrl+w -:當前視窗擴大/縮小一行,前面可以加數字,表示擴大/縮小多行數字 ctrl+w _:將視窗變為指定高度:close/:q/ZZ:都可以退出當前視窗only:關閉其它所有視窗,只保留當前視窗         wall, 全部儲存, qall, 全部關閉
CTRL-W h 到左邊的視窗CTRL-W j 到下面的視窗CTRL-W k 到上面的視窗CTRL-W l 到右邊的視窗CTRL-W t 到頂部視窗CTRL-W b 到底部視窗ctrl-w H,J,K,L, 左右上下移動視窗

  --------------------------------------------------  標籤頁一般來說tabe,tabedit,tabnew的作用是一樣的,下面都用tabe,除非有特殊情況tabe:開啟新的標籤頁tabe e:/xxx:在新標籤頁中開啟檔案tab:後面跟可以開啟新視窗的命令(如 help),在新標籤頁開啟新視窗,如 tab help
  --------------------------------------------------  替換:[range]s/from/to/[flags],表示將range範圍的from替換成to,flags匹配範圍s/aaa/bbb/:表示把當前行的第一個aaa替換成bbb,不指定flag就只替換第一個%s/aaa/bbb/g:把全文中的所有aaa替換成bbb,g的意思是指全部匹配的行號1,行號2s/aaa/bbb/g:把行號1和行號2之間的aaa替換成bbb行號1,行號2s/^/aaa/g:把行號1和行號2之間的行前面都加上aaa(即,可以使用正則)另外,.代表當前行,$  表示最後一行行號1,行號2s/^/\/\//g:從行號1和行號2之間的行都加上//注釋(這是因為/有特殊用途,需要轉義)行號1,行號2s/\/\//g:從行號1和行號2之間的行都去掉//注釋另一種轉義的方法是,使用+代替/,/正常使用,如 4,8s+aa/bb+aa or bb+  --------------------------------------------------  定位以下命令執行後都會返回普通模式G:定位到最後一行行號:定位到對應行號行號1,行號2d:刪除從行號1到行號2的內容行號1,行號2>>:從行號1到行號2向右移動一個tab行號1,行號2>>:從行號1到行號2向左移動一個tab/xxx:在全文中搜尋xxx,並高亮顯示,按 n 鍵可在選中處間切換 ------------------------------------------------------------------------------------



來自為知筆記(Wiz)

附件列表

     

    相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.