看板 Editor 關於我們 聯絡資訊
※ 引述《ikari512 ( //StrategyBass)》之銘言: : 如果正在編寫shell script : 想測試某一行的執行結果 : 要如何不跳出vi直接執行? : 可能有點類似quickfix的感覺... : 謝謝! 我不知道快速的方法 @@ 不過我有慢速的方法 map <F4> :!<C-R>=getline('.')<CR><CR> 之後,只要到你想要執行的那行上面按下 <F4> 就可以了。 原理是這樣的: <C-R>=...<CR> 讓使用者輸入一個 expression, map 的實際內容由 expression 的結果決定。 getline('.') 就是這邊要輸入的 expression 啦, 當 getline 的參數只有一個 '.' 字串的時候, 就會去取現在游標所在的那一行。 <CR> 命令列輸入完成,執行 QQ -- To iterate is human, to recurse, divine. 遞迴只應天上有, 凡人該當用迴圈.   L. Peter Deutsch -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.107.45
angleevil:人正真好 08/05 14:14
qwertmn::exec "!".getline(".") 這也可以試試看~效果一樣XD 08/08 19:57
ikari512:超棒!感謝yoco和qwertmn! 08/11 16:48
ikari512:我有發現一個問題,碰到行內有 # 會有以下訊息: 08/11 16:48
ikari512:E194: No alternate file name to substitute for '#' 08/11 16:49
ikari512:不過如果用上一篇的推文就ok耶 :p 08/11 16:49