當我設置Vim的外殼是互動的,就會出現此:在vim命令的任何執行導致它被暫停
set shellcmdflag=-ic
或
set shell=/bin/bash\ -i
我喜歡這些,因爲他們給語法高亮的輸出(例如:!ls
) 但成本是,我必須輸入fg #
每次。
這是默認行爲?
如何在vim中獲得交互式shell而無需使其運行在前臺?
當我設置Vim的外殼是互動的,就會出現此:在vim命令的任何執行導致它被暫停
set shellcmdflag=-ic
或
set shell=/bin/bash\ -i
我喜歡這些,因爲他們給語法高亮的輸出(例如:!ls
) 但成本是,我必須輸入fg #
每次。
這是默認行爲?
如何在vim中獲得交互式shell而無需使其運行在前臺?
你能告訴我這個哲學是什麼嗎? (例如姓名,解釋,報價或鏈接) – Forethinker 2013-03-08 20:36:59
我通常只是用TMUX代替。你可以拆分終端,並有一個正常的交互式shell和一個並行運行的vim實例 - 非常方便。
正如tpope指出的那樣'shellcmdflag = -ic'通常不是一個好主意(https://github.com/tpope/vim-sensible/issues/29):「說謊是爲了互動當它不是時,它會影響到所有內容:!down到system()(:shell始終是交互式的),所以它會導致各種破壞,例如,.bashrc中的某些內容會產生輸出。而Vim因爲我不理解的理由而被暫停。「 我也可以證明,當這個變量被設置時,許多vim功能和插件破壞了。 – Forethinker 2013-03-15 18:12:38