Vim進階教程
Vim是什麼?如果你還不知道的話,那恭喜你,你剛邂逅了史上最強的文字編輯器。Vim已經是現在最主流的Vi類編輯器了,除了超強的功能外對中文的完美支援使之成了中文使用者使用Vi的唯一選擇。這裡下載(Windows)。
很難相像Vi——這個*nix界最有名的文字編輯器在早幾年對很多中國人還是一個全新的名詞。直到近幾年,隨著Linux在中國的發展這種情況才改觀了一點(只是一點點)。Vi使用者數目並不因Linux使用者的增加而快速增長,這主要是因為大家對Vi的瞭解(包括現在要講的Vim)還不夠。很多人對Vim的瞭解相當有限——有些甚至是錯的:
Vim只能在命令列使用
- 試試`vim -g‘或gVim
Vim不能用滑鼠
- 同上
Vim只有Linux上有
- 幾乎所有平臺都找得到Vim
Vim不如Emacs;
- Emacs能下象棋能收郵件,但是你要的是文字編輯器吧?
進入Vim後沒法輸入文字也沒法退出……
- 對了與其他編輯器不同的是,在初次使用Vim之前最好先知道一個鍵盤命令`:q!‘。
Word功能比Vim強大
- 首先:Vim不是字處理軟體。其次:在文字編輯來講Vim要強得多。再者:沒有人用Word來寫程式程式程式碼。最後:用Word要錢的。
Vim是程式設計師用的
- 程式設計師用Vim有很好的優勢他們更容易接受Vim的設計理念,更容易掌握Vim指令碼。寫程式可以用到很多Vim的高階功能……從這些點來說Vim對程式設計師來說很好用。但不等於是程式設計師專用。如果你每個禮拜在電腦上寫的東西超過100個字,那你就應該用Vim。
那麼多指令根本學不完?
- 你不需要學那麼多指令,掌握幾個基本的其他就視自已需要與否慢慢發掘吧。
學Vim要很久
- 的確是的。看一下David Rayner(的作者)是怎麼說的:
David Rayner (zzapper) 15 Years of Vi + 4 years of Vim and still learning
他學了十幾年還在學:-)。如果僅是從入門的話,Vim自帶的教程跟著做幾遍大概一兩個鐘頭。然後每天再用Vim半小時的話,基本的移動指令和編輯指令只要三四天就夠了。而且只會這些命令時編輯的效率就已經有很大的提高了。
雖然使用Vim所帶來的效率和“快感”不是一般的編輯器所能比擬的。不過客觀地講Vim的確不好學,這裡說的不好學並不是技術上有多難而是缺乏好的字習資源:
- 中文文件太少,僅有的中文文件中會羅列成百上千的指令,把一些可憐的初學者嚇呆了。
- 文件缺乏系統性,較雜亂。
- 中文使用者少,缺乏一個可以交流的團體。
- 文件中優點不突出。很多人學了很多指令卻對宏/Vim指令碼一無所知,而他們找到的文件中通常要麼不涉及這些議題要麼這些議題被淹沒在無盡的指令中。
其實Vim自帶的文件是比較好的系統、詳細、完整。除了是必備的參考資料外也是很好的教材。但缺點是Vim的文件中內容太多。其中包括了大量的鍵盤命令和其他內容這使得一些Vim的一些重要內容很容易淹沒在大量的資訊中。
為此我計劃寫一系列的教程。這系列的教程將會涉及一些Vim的高階議題。同時儘量避免大量的鍵盤指令——有時候Vim為一個問題提供了100個指令,但使用者只需要掌握一種就足以解決問題了。雖說是高階議題但不併不以使用者掌握大量基礎知識為前提。事實上每個使用者都可以看,包括相瞭解Vim編輯器但還沒選擇Vim的人。我的目的是寫一份關於高階議題的進階索引,讓使用者對一些Vim的高階功能有所瞭解。每篇教程會圍繞一個主題展開用最短的篇幅讓使用者瞭解相關知識。我希望這系列教程能將一些高階的議題串連起來,讓一些想深入學習Vim的使用者能少走彎路成為快速進階。
[@more@]來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24790158/viewspace-1040216/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- TAGS::Vim進階索引[7]索引
- 高亮::Vim進階索引[5]索引
- VIM 進階 —— 《VIM 8 文字處理實戰》
- 縮排::Vim進階索引[8]索引
- 外部程式::Vim進階索引[6]索引
- 指令碼::Vim進階索引[3]指令碼索引
- 摺疊::Vim進階索引[2]索引
- 模式行::Vim進階索引[1]模式索引
- vim進階之新增ctags和cscope
- 暫存器::Vim進階索引[4]索引
- vim進階 | 使用外掛打造實用vim工作環境
- Vim 使用進階:自定義高亮分組
- vi/vim使用進階: 在VIM中使用GDB除錯 – 使用vimgdb除錯
- Arthas 進階教程
- Vim使用進階:10種暫存器剖析
- vi/vim使用進階: 劍不離手 – quickfixUI
- SQL入門-進階教程SQL
- JavaScript進階教程日記JavaScript
- Kotlin 進階教程(一)Kotlin
- Homebrew進階使用教程(一)
- 辦公進階:HoudahSpot使用教程
- .NET5 WPF進階教程
- OPENVINO官方開發進階教程
- jsp進階教程和ServletJSServlet
- 詳解前端進階指南教程前端
- vim的使用教程
- Vim簡明教程
- Vim入門教程
- Hexo Next主題進階教程Hexo
- Python進階教程01 詞典Python
- aardio教程二) 進階語法
- python-進階教程-對切片進行命名Python
- Python Django進階教程(三)(模型的高階用法)PythonDjango模型
- [GitHub] vim 實操教程Github
- SpringCloud基礎教程(三)-Eureka進階SpringGCCloud
- Python進階教程5——物件導向Python物件
- Bash指令碼15分鐘進階教程指令碼
- Python 快速教程(進階篇03):模組Python