我想通過它可以通過vim向文本文件添加其他命令。例如,就像你可以做這樣的事情:Vim In-File命令
# vim:syntax=foo
我想這樣做:
# vim:option call matchadd('Special', '\(REQUIRED\|OPTIONAL\)')
任何想法?我知道我可以編寫一個語法文件,但這不是我現在所要做的。
我想通過它可以通過vim向文本文件添加其他命令。例如,就像你可以做這樣的事情:Vim In-File命令
# vim:syntax=foo
我想這樣做:
# vim:option call matchadd('Special', '\(REQUIRED\|OPTIONAL\)')
任何想法?我知道我可以編寫一個語法文件,但這不是我現在所要做的。
Vim模式語法(請參閱:help modeline
)不打算在文件打開時指定要執行的命令 。這正是自動命令的用途(請參閱 :help autocommand
)。你試圖做的應該是一個類似於下面的自動命令 。
autocmd FileType foo call matchadd('Special', '\(REQUIRED\|OPTIONAL\)')
或
autocmd BufReadPost *.foo call matchadd('Special', '\(REQUIRED\|OPTIONAL\)')
(這裏不是*.foo
您可以使用匹配路徑或文件名 (目標文件的任何圖案或兩者)。)
如果配置你設置對某些文件或項目是本地的, ,你不想污染你的.vimrc
那些autocmd
s,使用 localvimrc插件。它允許您在目標文件或項目文件夾中有一個「本地」.vimrc
文件,旁邊有 。當您在「本地」.vimrc
所在的相同目錄中或在其子目錄中打開文件時,存儲在該.lvimrc
中的腳本爲 。上面顯示的自動命令(或任何其他 配置)可以存儲在本地項目的.lvimrc
文件中。對於 有關localvimrc配置的詳細信息,請參閱插件的主頁。
這不是一個回答你的問題,但我也搜索了真理,在這裏這個問題是一個最接近它:
Vim: How to execute selected text as vim commands
它不是自動的,但可能只有一個按鍵離開它足夠接近。 :)
所以這是不可能的,但沒關係,我剛纔添加了一個.vim /語法文件;並且您的意見仍然非常有用 - 謝謝:) – Cyrus 2011-06-17 00:29:49
從該localvimrc提示+1! – progo 2011-06-19 14:58:24