VI Improved (vim) 有個很方便很好用的功能å«ä½œ modeline。在檔案裡é¢ï¼Œå¯ä»¥ç”¨è©²æª”案標準的註解形å¼å‘ vim 下指令。è¬å¦‚一個 reStructuredText æ ¼å¼çš„æ–‡å—æª”ï¼Œä½ å¯ä»¥åŠ 上以下的 modeline,讓 vim 在讀它的時候自動把檔案解釋為 rst (以å–å¾—æ£ç¢ºçš„語法高亮):
æŸäº›æ–‡å—。 .. vim: set ft=rst:
modeline 裡å¯ä»¥æ”¾çš„指令ä¸é™ä¸€å€‹ï¼Œæ‰€ä»¥æˆ‘大部分的 .py 檔案在檔尾都有這麼一行的 modeline:
# vim: set ai et nu sw=4 ts=4 tw=79:
我喜æ¡é€™æ¨£æ ¼å¼åŒ–éŽçš„ .py 檔案。
åªæœ‰è‡ªå·±æœƒçœ‹çš„檔案這麼作當然沒什麼å•é¡Œï¼Œä½†å¦‚果有別人會看的話,這ä½åˆ¥äººç”¨çš„åˆä¹Ÿæ˜¯ vim,我們è¨çš„ modeline 或許會有點擾人。ä¸éŽï¼Œvim 這麼強大的軟體,難é“ä¸èƒ½è¨å®šç‚ºæ ¹æ“šæª”案型態決定統一的è¨å®šå—Žï¼Ÿç•¶ç„¶å¯ä»¥ï¼Œåªæ˜¯æˆ‘一直懶得把這個功能找出來...
vim å¯ä»¥é‡å°æŒ‡å®šçš„æ¢ä»¶ï¼Œåœ¨è»Ÿé«”發生指定事件的時候執行指令。這個功能å«ä½œ autocmd。å‡è¨æˆ‘希望在開啟æ¯ä¸€å€‹ .py æª”çš„æ™‚å€™éƒ½åŸ·è¡Œä¸Šé¢ modeline 的那些指令,å¯ä»¥è¨å®šä¸€å€‹ä»¥ä¸‹çš„ autocmd (å¯«åœ¨ä½ çš„ .vimrc 或 Windows 下的 _vimrc 裡):
au BufRead *.py set ai et nu sw=4 ts=4 tw=79
如果我們寫的程å¼è¦çµ¦åˆ¥äººçœ‹ï¼Œå¸Œæœ›ç•™çµ¦åˆ¥äººçš„ vim 一點è¨å®šçš„空間,å¯ä»¥ä½¿ç”¨ autocmd å–代 modeline。
- Previous: Django HTML escape @2007/01/09
- Next: FUSE/SSHFS workaround @2007/01/11
Please send trackback to: http://blog.seety.org/everydaywork/2007/1/11/632/trackback/.