【发布时间】:2014-03-18 18:13:11
【问题描述】:
我在 IntelliJ IDEA 中一直使用“导航声明”。当使用拆分编辑器时,我想将其配置为略有不同。
基本用例很简单:
- 开始使用只打开一个类的 IntelliJ IDEA,调用它 “A 级”。 ClassA 引用了 ClassB。
- 使用“导航->声明”导航到 B 类。 IntelliJ 将为 ClassB 打开一个新选项卡,并在编辑器窗口中显示该类。 ClassA 在编辑器中不再可见。
- 使用“导航->返回”。 ClassA 选项卡现在在一个编辑器窗口中再次可见。 使用键盘快捷键,这是一种非常快速的代码导航方式。
但是,当使用拆分窗口时,事情会变得很奇怪:
- 在编辑器窗口中打开几个类文件。
- 拆分窗口(工具->编辑器选项卡->垂直拆分)。
- 在左侧选项卡组中,导航到一个有趣的代码部分,即我们想暂时参考的部分。
- 在右侧选项卡组中,将光标放在所引用的类上,然后选择导航->声明。
如果此类已在左侧选项卡组中打开,IntelliJ 将在左侧编辑器中将该选项卡向前移动,替换我选择查看的一个类。但是,如果该类尚未在任何选项卡组中打开,IntelliJ 将在右侧选项卡组中打开该文件。这与不使用拆分编辑器时发生的情况基本相同。
更糟糕的是,“Navigate->Back”动作现在确实会导航回右侧的原始类,但不会改变左侧的任何内容,即我打算暂时引用的那个类不可见。
因此“导航->打开声明”操作的行为取决于 IntelliJ 本身的状态,而不是我的意图。我不希望 IntelliJ 任意决定在哪个拆分窗口中显示文件。我宁愿它只打开光标当前所在的选项卡组中的声明。
真正好的是“导航->在当前选项卡组中打开声明”之类的操作。这存在吗?可以为此创建插件吗?
【问题讨论】:
-
我建议你打开一个功能请求:youtrack.jetbrains.com
-
这听起来是个好主意。我会去做。也许这是一个学习如何创建插件的好机会?
-
我无法描述我对这个功能的渴望程度。导航回我的工作文件让我很生气,但我的其余窗口处于混乱状态。我尝试将一个键映射为“在对面的窗口中打开”,这样默认情况下,我所在的窗口会显示该文件。但很难记住何时需要复制窗口(即:如果它是新的)。
-
在我看来,这个问题并没有引起太多关注。我以前没有创建过 IntelliJ 插件,但我想知道是否有人可以创建一个来做到这一点?
标签: java tabs intellij-idea editor