歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> 學習Linux

更好的使用 Vim

更好的使用 Vim


更好的使用 Vim


改鍵

我之前一直以為改鍵的操作做沒有必要,但是在嘗試了一個月以後我已經沒辦法重新使用別人的鍵盤了 ———— 太慢了。

改建的意義在於將 Ctrl 映射到 Caps Lock 上。原因在於小拇指很容易按到這個大寫鎖定而很難按到原來 ctrl 的位置。

改鍵對於 Emacs 用戶更為重要。

Tmux

我一直把 Ubuntu 作為工作寫代碼的操作系統,終端對於我來說有僅次於文本編輯器使用頻率。

Tmux 不需要有很牛逼的技巧,我每次只是分割窗口而已,沒有什麼高端操作。

C-b 加上 % 就可以切分窗口,想要切換的時候就 C-b 加上 就是轉到右邊的窗口,同理,左邊也是一樣。

安裝很簡單 sudo apt install tmux 即可。

Plugins

有插件的 Vim 和沒有插件的 Vim 是兩款編輯器。

我推薦的做法是安裝 vundle.vim作為 vim 的包管理器,安裝方法文檔裡面有。我只是介紹這麼個東西而已。親手實踐才能印象深刻。

之後推薦一個網站vimawesome.com這裡有 vim 的插件集合,可以看到大部分插件的信息。

然後給一個我自己的插件列表:

Plugin 'VundleVim/Vundle.vim'
Plugin 'bling/vim-airline'
Plugin 'kien/ctrlp.vim'
Plugin 'scrooloose/nerdcommenter'
Plugin 'scrooloose/nerdtree'
Plugin 'Raimondi/delimitMate'
Plugin 'lepture/vim-css'
Plugin 'wavded/vim-stylus'
Plugin 'fatih/vim-go'
Plugin 'SirVer/ultisnips'
Plugin 'gosukiwi/vim-atom-dark'
Plugin 'pangloss/vim-javascript'
Plugin 'mattn/emmet-vim'

主題顏色是 atom-dark 我曾試用過 material theme, 但是我覺得太丑了,完全沒有在 sublime 上的美感,所以還是換了。

ctrlp 是快速搜索文件用的,說實話真的超級有必要。它給我養了個壞習慣:再也受不了 webstorm 的搜索功能了。

nerdcommenter 是用來快速注釋和反注釋的,很明顯沒有 sublime 智能,但是一直沒有找到比較好的替代品。

nerdtree 是文件樹列表。真神器。自從我讀了一遍 help 以後才發現它上天入地無所不能

airline 純粹是裝飾用的。對我來說沒什麼實質作用。但是我一天九個小時都對著這貨不好看一點兒怎麼受得了。

delimitMate 自動補全"這些東西。

下面的css, stylus, go, javascript都是語言加強的

ultisnips 是快速代碼片段,像是每個文件都有的頭注釋,框架的東西都可以放在裡面。大量寫代碼的時候是神器。

快捷鍵

vim 本身的快捷鍵快得有些不講道理。以至於難以記憶。

一開始看 vim 的快捷鍵會覺得是在看譚浩強的書。到處都是莫名其妙的簡寫。然而所有的鍵位都是有明確意義的。下次再看到某些簡寫的時候試著按照下面的列表理解一下:

   d delete(刪除) y yank(粘貼) c change(改變) v view(視圖) o open(打開) r replace(更換) w word(單詞) u undo(撤銷)   其他還有很多,總之在使用的時候多想想為什麼這個操作會對應這個鍵。

當然,有幾個鍵完全是不講道理,為了效率而做的,比如hjkl這四個。

還有神奇的.操作,可以重復上一個操作。非常非常有用的技巧。不過我不准備說太多,我認為這些東西更多的在自己的實踐和領悟。

vim 有個神奇的<Leader> 鍵,我將其映射在了;上,因為離右手小拇指比較近,容易按,而且和正常的鍵並沒有很多功能上的沖突。

下面是個人對於插件的鍵位設置:

我將 nerdtree 的 toggle 映射在了;t上,沒有什麼原因,純粹是手感好。

;cc 是注釋, ;cu是取消注釋。這個鍵位是跟 jeffway 學來的,一直覺得不是很好按,但是習慣了也還好。

其他的倒沒什麼特別了

常用操作

我雖沒有幾十年的 vim 使用經驗,然而還是有一些自己認為比較常用的操作的。

我平常不太喜歡用buffer,更多的是用tab來做,因為tab更容易觀察得到。

所以下面的一些快捷鍵比較常用了:

gt: tab切換

Ctrl-w-h, 當前窗口切換,我認為這個組合鍵的的意思是 w 代表 window, Ctrl 只是前綴。後面的hjkl就是上下左右了。

深入插件

對於插件,我有些要說的。

插件的配置在我看來還是挺復雜的。

比如 ctrlp 你需要把 node_modules 這些沒用的東西 ignore 掉,

對於 airline 你需要下載 powerline-fonts 來讓它顯示三角形。

nerdtree中可以按r刷新當前節點,按m有更多選項,在m中可以新建文件刪除文件什麼的操作。

在 ultisnips 中還要自己寫自己的snippets

我覺得深入插件才能更好的應用它們,才會更加理解這些插件的強大。要知道寫這些插件的各個都是大牛,他們可不能忍受自己做出來傻逼產品!

更多Vim相關教程見以下內容:

Vim學習指南

快速學會 Vi編輯器

強大的Vim 編輯器

在CentOS 6.2上搭建Vim開發環境

把Vim打造成優秀的C++ IDE 

Vim技巧分享:C語言設置

Ubuntu中設置Vim的行號

本文永久更新鏈接地址:

http://xxxxxx/Linuxjc/1145159.html TechArticle

Copyright © Linux教程網 All Rights Reserved