我开始将vim用于我的编程项目(主要是Ruby),并且大部分内容都按照我的要求运行,但是编译时遇到问题。
让我们说我正在研究一个Ruby脚本,我想运行它。我键入:ruby sometging.rb(映射到其他键)。然后vim打开一个新的cmd.exe窗口并运行'ruby something.rb'。然后它等待我按ENTER关闭窗口并继续处理脚本。
有没有办法在Windows上配置vim,以便它总是在separete窗口中运行我正在处理的脚本(如果不存在则总是相同的那个=>打开一个),而不是让我确认用enter?
答案 0 :(得分:0)
不了解gvim,但在普通的vim中,你可以使用类似
的东西 map R <ESC>:tabnew<CR><ESC>:;%!ruby filename.rb<CR>
在你的~/.vimrc
中,当在命令模式下按R时,它会在newtab中执行一个Ruby文件。
答案 1 :(得分:0)
我没有使用Ruby,但因为我发现Dr Chip's RunView plugin对于运行其他解释语言非常有用。
安装完成后,您可以输入:
:RunView! <interpreter>
(其中<interpreter>
大概是'ruby'在你的情况下)并且它会打开一个(垂直的,如果你包括!
)拆分窗口,输出传递当前窗口的内容到口译员。每次运行时,都会在文件末尾附加一个新的结果日志(日期和时间标记将它们分开)。
如果您遇到任何问题,我建议您通过Dr Chip与Vim mailing list联系:他非常有帮助(事实上他为了回应{{3}而编写了原始版本的RunView })。
答案 2 :(得分:0)
这并不完美,但我用它来启动Python脚本。
command -nargs=* PY3 !start cmd /K Python.exe "%:p" <args>
它启动一个保持活动状态的窗口,不会干扰我的VIM窗口。不幸的是,它没有将其加载到现有窗口中。