小兔的筆記本

Just another WordPress.com weblog

Archive for the ‘文字編輯器’ Category

vim與多行註解

Posted by Tsukino Usagi 於 十一月 26, 2007

vim寫程式或編輯設定檔時, 若使用的程式語言或設定檔格式不支援像C語言的/* … */註解符號, 可以用下面這個方式替數列文字加入註解.

  1. 先按Esc離開插入模式, 按h或j將游漂移到要開始註解的那一列, 並按0回到列首.
  2. 按Ctrl-V, 接著按j, 將要註解的那幾列反白.
  3. 按大寫I.
  4. 鍵入註解符號(例如「’」, 「//」或「#」等等).
  5. 按Esc, 大功告成.

類似的方式也可以用在列首以外的地方, 例如上述步驟1時就不一定要先回到列首, 或者步驟3時按大寫A, 就變成在每列的尾端插入相同的文字.

參考資料: http://www.vim.org/tips/tip.php?tip_id=194

廣告

Posted in 文字編輯器 | 已加上的標籤: | 3 Comments »

去除文字檔內的 ANSI 控制碼

Posted by Tsukino Usagi 於 四月 5, 2006

BBS 文章裡頭通常會有一些 ANSI 控制碼, 用來在彩色終端機畫面下呈現顏色或閃爍反白之類的效果, 若文字檔裡有這些控制碼, 可以寫個正規表達式(regular expressions)把它去掉.

用 vim 打開一個有 ANSI 控制碼的文字檔, 下這個指令:

:%s/\e\[[0-9;]*m/g

再存檔即可.

或者是在 Linux 環境下用 sed 指令, 假設有個 test.eml 想去掉裡面的 ANSI 控制碼:

$ cat test.eml | sed -e ‘s/\x1b\[[0-9;]*m//g’ > test.txt

就會自動產生 test.txt 檔, 裡頭已經沒有任何控制碼.

這個方式並沒有辦法把移位碼移除掉, 如果想移除移位碼的話, 可以試試把正規表達式的部份改成這樣:

\x1b\[[0-9;]*[mABCDHJKsu].

另外, ANSI 的 escape 字元在正規表達式裡要用 \x1b 代表(ASCII碼16進位), 但是在 vim 裡要寫成 \e ,這也是要注意的地方.

參考資料:

Posted in 文字編輯器 | Leave a Comment »

關於 vim 的搜尋反白

Posted by Tsukino Usagi 於 三月 3, 2006

各家 distrobution 或者各個工作站的 global settings 裡的 vimrc 可能都有各自的設定, 若您遇到的環境剛好預設把「搜尋反白」打開(set hlsearch), 說不定您會想把它關掉.

如果是搜尋動作完, 想把反白弄掉而已, 可以用「讓 vim 搜尋一段檔案裡不可能出現的字串」的方式, 我的習慣是打:

/aaaaaaaaaaaaaaaaaaaaaa

這樣就不見了.

若是想暫時整個關掉的話, 可以打:

:set nohlsearch

這樣就關閉搜尋反白的功能了, 但只有目前這個 vim session 有效.

若想把這功能永遠關閉的話, 在 ~/.vimrc 裡寫入 set nohlsearch 就可以了.

Posted in 文字編輯器 | 4 Comments »