2013-04-29 62 views
3

我試圖定義一個函數,如果存在偶數個美元符號(在我的緩衝區中),則執行A;如果存在奇數個美元符號,則B。但是,我不確定如何計算美元符號的數量,然後報告該數字以定義函數。舉例來說,在進入Vim - 某些字符的計數

:%s/\ $ // GN

會吐出在狀態行這個數字。但是,如何將結果應用於定義函數呢?

+2

有這個可能的線索SO回答。 [A:Vim中快速的字數統計功能](http://stackoverflow.com/questions/114431/fast-word-count-function-in-vim/4588161#4588161)。有一個'v:statusmsg',你可以訪問它將包含搜索結果。 – 2013-04-29 02:45:02

回答

2

基於@ DaveNewman的評論,你可以寫:

:%s/\$//gn | let i = split(v:statusmsg)[0] | if i % 2 | ... | else | ... | endif 
+0

這完美的作品!謝謝。 – 2013-04-29 03:41:22