我在大多数Java编程中使用IntelliJ,但每隔一段时间我就需要做一些更容易在VIM中完成的更改。
因此,问题是:
当我在IntelliJ中编辑文件时,可以告诉IntelliJ使用当前处于光标下的相同文件启动VIM。
谢谢!
答案 0 :(得分:26)
绝对!
转到File -> Settings -> External Tools
并添加新的。
计划和工作目录字段应该是不言自明的。参数字段应为$ FilePath $。单击“插入宏”按钮以查看可以使用的更多标记值。
您还可以将键盘快捷键绑定到您定义的外部工具。
答案 1 :(得分:13)
即使最初的问题是关于VIM,我也想分享我对GVIM的设置。特别有用的是用于将其带到当前行的参数。
我发现让Gvim打开文件并带我到当前行很有用。这是使用以下参数完成的:+$LineNumber$ $FilePath$
。
执行时,Gvim应该打开并带你到Intellij所在的那条线。
答案 2 :(得分:5)
以下是如何在Intellij IDEA 14上使用Homebrew版本的MacVim(即 mvim 命令)进行设置。
<强>程序:强>
/usr/local/bin/mvim
<强>参数:强>
+"silent! "$LineNumber$"|norm! zz" $FilePath$
工作目录:
$SourcepathEntry$
答案 3 :(得分:3)
这在Mac OS X(Lion)上有所涉及,特别是如果你想使用Terminal.app
Linux上的唯一区别是shell脚本会简单得多......(实际上,在Linux上甚至不使用shell脚本很简单,终端接受-e参数!)< / p>
这是我的工作解决方案:
#! /bin/sh
vim="vim $1"
osascript -e "tell app \"Terminal\"
activate
do script \"$vim\"
end tell"
答案 4 :(得分:1)
我正在使用这些参数启动vim:+$LineNumber$ --remote-tab-silent "$FilePath$"
。它允许您在vim选项卡中打开每个新文件。工作正常)
答案 5 :(得分:1)
对于macOS 10.12+用户,如果您想在 iTerm2 中打开它,这是最新的解决方案:
#!/bin/sh
vim="vim $1"
osascript -e "
tell application \"iTerm\"
set myterm to (create window with default profile)
tell myterm
activate current session
launch session \"Default Session\"
tell the current session
write text \"$vim\"
end tell
end tell
end tell
"
日期:2018年4月5日
iTerm2:3.1.5
IntelliJ IDEA:2018.1
https://gist.github.com/backslash112/open_vim_in_iterm.sh
答案 6 :(得分:0)
试用VIM插件,http://plugins.intellij.net/plugin/?id=164
我遇到了一些错误,但大多数情况下都有效。
答案 7 :(得分:0)
/usr/bin/gvim
--servername $ProjectFileDir$ --remote "+call cursor($LineNumber$,$ColumnNumber$)" $FileDir$/$FileName$
$ProjectFileDir$
我关闭“打开工具输出控制台”。
参数将在客户端-服务器模式下使用Vim,因此,如果您多次从同一项目目录中的IntelliJ跳转到Vim,则现有的Vim实例将被重用,并且它们还将光标准确地放置在Vim中在IntelliJ中。