More Related Content
Similar to Introduction to vim
Similar to Introduction to vim (10)
Introduction to vim
- 2. Vim是什麼? 為什麼要學Vim?
• 一個文字(程式)編輯器
• 手指完全不用離開鍵盤
• 強大的編輯能力
• 支援 400種以上純文字檔案語法高亮
• 支援 40 種以上程式語言的自動縮排
• 客製化的設定使得使用上很有彈性
• 各種強大的Plugin可以加強功能
• 缺點: 不好學,預計練到上手至少要1~2個禮拜
• 不要放棄,學會後受用無窮
- 5. Vim安裝
• Ubuntu
– sudo apt-get install vim
• OS X
– 有內建 Vim 但是版本較舊,會導致一些Plugin
無法使用 ex: Youcompleteme
– 可用 homebrew 安裝
– brew install vim
- 8. Vim基本編輯指令
• i -> 進入輸入模式
• Esc -> 回到一般模式
• :w -> 存檔
• :q -> 直接離開(不存檔)
• :wq -> 存檔離開
• :q! -> 不存檔強迫離開
• x -> 刪除當前字元
• dd -> 剪下當前行
• p -> 貼上
• hjkl -> 方向鍵分別為: 左, 下, 上, 右(當然也可以直接
用方向鍵,但是建議不要,有玩過CS都知道為什麼)
- 9. 讓 Vim 開始有一點意思的指令
• a -> 在游標後面插入
• A -> 跳到行尾插入
• o -> 換行插入
• O -> 在上一行插入
• 0 -> 跳到行頭
• ^ -> 跳到第一個不是空白的行頭
• $ -> 跳到行尾
• g_ -> 跳到最後一個不是空白的行尾
• / -> 做字串搜尋(按n可以一直跳下一個, 按N可以往上跳一個)
• P -> 在上一行做貼上
• yy -> 拷貝這一行
• u -> 回到上一步
• Ctrl + r -> 回到下一步
- 10. 讓Vim變得好玩的指令
• 數字 + 任何指令 = 這個指令做幾次
• Ex:
– 2dd -> 剪下2行
– 3p -> 貼上3次
• gg –> 跳到第一行
• G –> 跳到最後一行
• 數字gg –> 跳到特定行
• w –> 跳到下一個單字的開頭
• e –> 跳到單字的結尾
• W –> 跳到下一個單字的開頭(用空白分隔)
• E –> 跳到單字結尾(用空白分隔)
• % -> 跳到對應的括號(可適用在 () [] {}, 掛上Match it Plugin之後,連
html tag都能跳 )
• * -> 搜尋所有當前單字,並可以往下搜尋
• # ->搜尋所有當前單字,並可以往上搜尋
- 11. 讓Vim變得好玩的指令
• v -> 可視化選擇,一定要會
• 可視化選擇 + u -> 把選取的區域變小寫
• 可視化選擇 + U -> 把選取的區域變大寫
• 可視化選擇 還可以結合其他指令達到複製, 剪下, 貼上, 取代等
效果
• f + 字母 -> 將游標跳到當前行的特定字母
• t + 字母 ->將游標跳到當前行的特定字母之前
• F和T與上述功能相同,只是方向相反
• vi + ‘ or “ or ( or [ or { -> 區域內選取
• :split 橫向螢幕切割
• :vsplit 縱向螢幕切割
• = -> 自動縮排
• Ctrl + v -> 區塊可視化選擇
- 13. 有關.vimrc
• 在家目錄開一個檔案,檔名取叫 .vimrc ,vim在開啟時會去讀這
個設定檔
• 設定多到講不完…
• 幾個常用的:
• syntax on -> 開啟語法高亮
• set autoindent -> 開啟自動縮排
• set shiftwidth=數字 -> 設定縮排寬度為多少
• set tabstop=數字 -> 設定tab的寬度為多少
• set expandtab -> 將tab一律換成空白
• set number -> 開啟行數
• set ignorecase -> 搜尋忽略大小寫
• set hlsearch -> 高亮搜尋結果
• set incsearch -> 即時顯示搜尋結果
- 14. 一些好用的Vim Plugin
• Vundle – 讓外掛非常好安裝
• Youcompleteme – 支援關鍵字補齊
• Ctrlp – 對子目錄進行模糊搜尋
• Match it – 可以讓%跳更多對應的符號 如:
html, ruby function
• Vim-powerline – 讓狀態列變漂亮
• Nerdtree – 顯示樹狀目錄(還可以新增檔案 ,
移動檔案等等)