標籤:文字編輯器 vim sublime
1 前言
一直忙項目搞得許久沒有寫部落格了,頓時有深重的負罪感,今天趕緊補幾篇平複一下心情。。。
文字編輯器的重要性我記得當時還是在《程式員修鍊之道》那本書中第一次看到,這些年下來感覺這個真的是太有道理了,為自己節約了很多的時間,所以我也不斷的提醒身邊的朋友去用好它。但是自己每次都從頭說一遍感覺也挺費時間的,所以打算直接寫下來可以更好的分享給更多人。
這裡順帶提一下,windows內建的那個notepad就無視了吧,功能太弱了,而且檔案稍微大一點就直接卡了,看了後文就知道差距實在是太大了。
2 推薦的文字編輯器
好用的文字編輯器有很多,只要選一到兩個順手的用即可,其實我用過的也就一些,相比較而言,我推薦幾個自己比較喜歡的(主觀性比較強,僅供參考)。
1. Vim:必須排第一,大愛它的快速鍵了,手是完全不用離開主鍵盤區的,基本上常見文字編輯器有的功能它都擁有,唯一的缺點就是學習曲線比較高。在Linux下真的是一個無法替代的工具,Windows下的Gvim也可以使用,但是用起來總感覺怪怪的。。。
2. Sublime: 感覺是windows上用的最爽的一款了,是用Python編寫的,介面很漂亮,外掛程式也非常的豐富,貌似很多新語言都喜歡直接用這個做IDE了。非常喜歡它那種Python風格的簡明操作,上面的外掛程式也是這樣的風格,ctrl+shift+p可以直接用命令列調用,所有快速鍵都有個設定檔可以隨便修改,感覺很酷!
3. Notepad++: 這個感覺比較容易上手,預設就有了絕多大數常用功能,推薦非程式員使用者使用!最喜歡它的列複製之後,可以非常智能的進行列粘貼,sublime的列粘貼必須兩列的行數一樣多才行。
3 文字編輯器的強大之處
其實不用我說,大家也應該能想到牛逼的地方有很多,但是我個人覺得以下是個人覺得最實在的功能點,而且也應該成為你不得不會的幾個功能。
3.1 列編輯
使用情境:
1. 在平時編輯文本的時候,經常會遇到一列要同時進行替換或者插入什麼內容,這樣的操作就是列編輯,可以方塊式的選擇一段內容,然後進行操作。
快速鍵:Vim(Ctrl+v) Sublime(滑鼠中鍵 或 shift+滑鼠右鍵) Notepad++(Alt+滑鼠左鍵)
2. 這裡有個稍複雜一點但也非常常用的插入,就是要插一段等差數列,比如說是1、2、3、4...這樣的值。
快速鍵:Vim(無?) Sublime(Ctrl+Alt+N)[需先安裝Insert Nums外掛程式] Notepad++(Alt+C)
3. 還有一種特殊的情境,在任意位置同時編輯,這個就比列還要靈活一點。
快速鍵:Vim(無?) Sublime(Ctrl+滑鼠左鍵) Notepad++(無?)
3.2 行操作
這個可以操作的有很多,可以提高效率,簡單列幾個吧(以Sublime為例):
行縮排 Ctrl+] (Edit > Line > Indent)
取消縮排: Ctrl+[ (Edit > Line > Unindent)
當前行上移: Ctrl+Shift+Up (Edit > Line > Swap Line Up)
當前行下移: Ctrl+Shift+Down (Edit > Line > Swap Line Down)
複製當前行: Ctrl+Shift+D (Edit > Line > Duplicate Line)
合并行: Ctrl+J (Edit > Line > Join Lines)
向後刪除一個詞: Ctrl+Del
向前刪除一個詞: Ctrl+Backspace
刪除整行: Ctrl+Shift+K (Edit > Line > Delete)
Delete from cursor to end of line: Ctrl+K
Delete from cursor to start of line: Ctrl+Backspace
3.2 文本替換
使用情境:
1. 替換檔案中所有相同的地方,這裡可以是字元、換行等。
2. 實用Regex進行替換,基本上所有你能想到的字串都可以用正則來靈活匹配。
3. 退而求其次,還有個辦法就是基於擴充符的替換,比如“\n”,有些文字編輯器也直接可以再正則中去一樣操作。
快速鍵:Vim(%s) Sublime(Ctrl+H) Notepad++(Ctrl+H)
3.3 宏命令
使用情境:
行列的操作起來雖然方便,但是稍微複雜一點的情境就不適用了。這裡就需要用到宏,去錄製一段操作,然後去回放剛才的操作,這樣就可以輕鬆的複製大量重複的操作。
錄製快速鍵:Vim(qa) Sublime(Ctrl+Q) Notepad++(菜單裡面選)
停止快速鍵:Vim(q) Sublime(Ctrl+Q) Notepad++(菜單裡面選)
回放快速鍵:Vim(@a) Sublime(Ctrl+Shift+Q) Notepad++(Ctrl+Shift+P)
3.4 檔案中尋找
使用情境:
1. 很多時候要基於目錄下所有檔案的常值內容進行尋找,windows的資源管理員只能尋找檔案名稱,這個時候貌似只有文字編輯器可以方便的去找。
快速鍵:Vim(無) Sublime(Ctrl+Shift+F) Notepad++(Ctrl+Shift+F)
3.5 著色器
使用情境:
1. 為了方便的查看常值內容,沒有著色器真的對著茫茫文本就很難找到自己想看的內容,特別是作為IDE去寫代碼,看Json什麼的也能一眼看出格式問題。
快速鍵:Vim(:sytanx on) Sublime(SublimeREPL) Notepad++(菜單裡面選)
3.6 顯示空白字元
使用情境:
1. 有些時候需要看清楚有多少個空白字元。
2. 要區分tab和空格的空白。
3. 更簡單的對其列。
快速鍵:Vim(無?) Sublime(滑鼠拖拽框選) Notepad++(菜單裡面選)
3.7 萬能的外掛程式
如果以上常見功能還沒有你想要的,去外掛程式庫去找找,一般來說你能想到的都已經有了。比如說Json格式的自動格式化,聯想詞的自動補全等。
快速鍵:Vim(沒怎麼裝過) Sublime(Ctrl+Shift+P 然後輸入Install Package) Notepad++(菜單裡面選)
4 寫在最後
真的文字編輯器是一個非常強大又非常方便的工具,可以讓你從繁重重複的文本編輯中解放出來,絕對值得擁有。還沒有一款用的順手的小夥伴感覺去挑一個你的文本編輯利器吧!
文字編輯器的魅力——獻給最愛的Vim、Sublime