如何在以下后重新进入Vim:庆典?

Tho*_*mas 6 vim bash command-line

我慢慢了解Vim和Bash shell脚本并遇到了这个问题:

当我运行MacVim时,我有时想使用命令行来编译我正在处理的任何东西(在这种情况下是一个小型Java程序).所以我输入:! bash并编译我需要的任何东西并进行测试.然后,当我想回到我编辑的程序时,我打字vim MyProgram.java并在我的Vim会话中得到各种各样的混乱[8;1H~ [9:1H~ [10:1H~ ... etc.

我在这做错了什么?一旦我开始在其中运行shell,我是否可以不跳回Vim?

有没有更好的方法来编译和运行当前文件?

(我在OSX 10.6.2上使用MacVim 7.2和Bash 3.2.48.)

Ada*_*iss 15

两个建议:

  1. 使用exit退出bash shell,然后返回到VIM.
  2. 在vim中,用于使用命令:set makeprg=name_of_your_make_program在vim中自动编译:make.作为奖励,如果它是vim识别的工具集,vim将解析编译器的输出,显示错误,并允许您跳转到每个错误,以便您可以修复它们.见的命令:cl,:cc,:cn,和:cp对于初学者.

  • 它有助于:将几个功能键映射到:cn和:cp命令.来回跳跃的速度要快得多. (3认同)

Dra*_*mon 6

只需输入:

exit
Run Code Online (Sandbox Code Playgroud)

这将退出bash子进程并返回到vim.最好使用类似GNU Screen的东西来同时维护Vim和Bash会话(并且它比:!bash... 更容易切换exit