--課程已於 2017 年 8 月更新--
你知道最有生產力的命令列專家利用了 Vim 文字編輯器的強大功能嗎?
問題是,如果你想要使用 Vim 非常好並且想要自己學習,可能需要很長時間。
當你完成本課程,你會知道如何:
1. 一次編輯多個檔案,包括如何在不同檔案之間來回移動資料,從一個檔案複製和剪貼到另一個檔案,並快速跳轉到另一個檔案。
2. 使用必須知道的鍵盤快捷鍵,以及如何輕鬆記住它們。你會實際學習如何“在 Vim 中思考”,所以你甚至不必記住每一個命令,從而節省了無數小時的工作時間。
3. 尋找和替換檔案中的整塊資訊。這包括如何透過重新命名檔案中或是檔案集合中的所有變數來可靠地重構程式碼。當然,你將學習簡單的尋找和替換技術來替換整個檔案中的單詞等等。
4. 剪切,複製和貼上。你將了解如何充分利用 Vim 的內建剪貼簿系統,使用 Vim 的剪貼簿歷史記錄,以及如何從 Vim 中訪問系統的剪貼簿。
5. 視覺化地選擇文字區塊,並對這些區塊執行編輯,例如移動區塊,刪除區塊,縮排/移位區塊等。你將了解 Vim 的文字物件 ( text objects ),以便你可以快速選擇單個或多個單詞,行,段落,HTML / XML 標籤,程式碼區塊等。
6. 如何進行垂直編輯並使用 Vim 的視覺區塊模式( Visual Block Mode )。(有人稱為欄編輯模式或是矩形模式…)
為源始碼,設定檔案或是你經常編輯任何類型的檔案啟用語法凸顯模式 ( syntext highlighting )。這包括如何自定義 Vim 中的配色方案和文字顏色碼。
7. 使用簡單到進階的瀏覽技術,以便你可以在檔案中快速跳到所需的位置。
8. 實用的應用技巧,如編輯程式原始碼,腳本 ( scripts ) ,HTML 等等。你將在本課程中找到很多練習的機會。
充分利用內建的幫助系統,快速找到所需要的說明,而不用離開 Vim。
9. 在 Linux 和 Windows 上使用 MacVim 和 gVim。這包括學習 Vim 的文字界面和圖形界面的優缺點。
創建,儲存和重放巨集 ( macros ) 以正常化資料,並快速重複複雜的編輯。你將學習如何在一個文字檔案中的每一行附加或預加 ( prepend )文字,如何格式化一行文字,並將該格式應用於檔案中的指定區域等等。簡而言之,你將學習如何使 Vim 中的所有內容自動化。
10. 創建自定義快捷方式和個性化鍵盤對映。如果你想為你經常做的事情創建一個快捷方式,你會發現如何使你的生活變得更容易一些。
11. 縮排和移動文字區塊。你還將學習如何啟用自動縮排,以便你可以快速清理並美化你的原始碼。
12. 還有更多…
https://softnshare.wordpress.com/2017/05/26/vimmasterclass/
gvim設定 在 討論串(共2篇) - [分享] gvim 設定字型- 看板Editor - PTT網頁版 的必吃
通常在gvim 設定字型使用:. set gfn=Monaco:h14. 但如果在runtime 要改,輸入這麼長的指令太麻煩了,所以可以這樣寫:. com! -nargs=1 FontMonaco :set ... ... <看更多>
gvim設定 在 【問題】 在WINDOWS上用gVim - Editor板 - WEB批踢踢(PTT) 的必吃
... 是不是一定要開啟舊檔才能正常使用這是不是gVim設計上的一個bug?另外想問一下設定字形以後能不能記憶因為覺得字體太小了看不清楚, ... <看更多>
gvim設定 在 Re: [vim ] GVIM設定的問題(縮排、開檔) - 看板Editor - 批踢踢 ... 的必吃
剛才又tune了一下我的GVIM…
發現有一招可以在同一個GVIM下開啟多個檔案~
就是在原本的 gVIM.exe下面再加上 -f --remote-tab 參數
到時候要開啟檔案abc.txt就相當於下「gvim.exe -f --remote-tab abc.txt」的指令
降子如果一開始已經有一個gVIM console,那就會用既存的gVIM以新的tab開啟檔案
所以現在問題變成我要怎麼樣在點某個文字檔兩下時,
在執行gVIM時,自動加上-f --remote-tab的參數呢?
我的解法是寫一個bat檔,
內容是 start gvim.exe -f --remote-tab %1%
然後把txt檔案的關聯,指定到這個bat檔,
那就可以在開啟txt檔時,透過這個bat檔開啟gvim了~
耶逗…其實我不是很懂remote-tab這個參數的功能
所以不知道降子設會有什麼副作用…
目前已知在gvim沒開啟的狀況下用remote-tab開啟會跳出一個message
E247: no registered server named "GVIM": Send failed.
Trying to execute locally
另外還有一個狀況是同時圈選一堆txt檔並按下enter開啟,
gvim會有漏開部份檔案的狀況…
不過我覺得降子造成的影響似乎不大就是了XD
所以放上來與大家分享~也希望能討論出更棒的解法降子~~~
基於上面的方法,再加上兩個快速鍵~
nmap <C-Tab> :tabn<Enter>
nmap <C-S-Tab> :tabp<Enter>
gvim感覺就可以偽裝成其他的IDE了說XD
---
比起上面的問題…下面這個問題還是希望高手能幫忙啊><~
: 二、我在寫php的時候
: 時常遇到按下Enter時,原本那行code的縮排就會亂跳…
: 以下列code為例:
: 1| <?
: 2| $test = 123;
: 3| $test2 = 456;
: 4| ?>
: 有的時候在line 2最後按下enter後,
: $test=123就會整個往前移(line2那個tab會消失)
: 然後有的時候又不會,
: 但在line 2分號後面按下 space 再按 enter又會往前移
: (有時候又不會,很隨機>"<)
: 這個不論我set autoindent 或 set noautoindent都沒有用,
: 所以應該不是autoindent的問題…
: 不知道有沒有對GVIM比較熟的大大可以幫我解決的@@~
: 先謝謝板上的高手指點了m(_ _)m
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.87.174
... <看更多>