autocmd 用于运行 Eclim's :JavaImportOrganize



我正在尝试设置一个autocmd,以便在每次保存java文件时运行Eclim命令:JavaImportOrganize和:syntax。

au BufWritePost {*.java} silent :JavaImportOrganize :syntax on

这(预期)会产生错误。我试图找到一个包含Plugin命令(在本例中是从守护进程加载的?)和普通命令的autocmd示例,但我似乎找不出正确的语法。

非常感谢您的帮助!

知道确切的错误消息是什么会很有用。在我的机器上,错误是:

Error detected while processing BufWritePost Auto commands for "{*.java}":
E488: Trailing characters: silent :JavaImportOrganize :syntax on

我想你也一样,但把它粘贴到问题中会有很大帮助,这样人们就更容易猜测问题是什么了。

在这种情况下,这是在单个调用中组合两个命令的简单情况。您可以使用|字符(有关详细信息,请参阅:help :|):

:silent JavaImportOrganize | syntax on

现在,在我的实验中,这并没有奏效,因为| syntax on可能被认为是JavaImportOrganize调用的一部分。所以我不得不使用exe:help :execute了解更多信息):

:silent exe 'JavaImportOrganize' | syntax on

完整调用如下所示:

 au BufWritePost *.java silent exe 'JavaImportOrganize' | syntax on

*.java周围的花括号是不必要的(事实上,我甚至不知道它们有效:)。命令之前的:符号是不必要的——它们在命令行模式中使用,但在脚本中是完全可选的。

相关内容

  • 没有找到相关文章

最新更新