IntelliJ 终端光标形状

IntelliJ terminal cursor shape

所以,我迷上了Vim。我在任何地方都使用 vi 模式——在所有支持它的编辑器和 IDE 中。我在我的浏览器中使用它(vimium, wasavi). I use 'hjkl' navigation everywhere thanks to awesome Karabiner. I use vi mode in my terminal via iTerm under zsh. Long time ago I found this little trick 根据您当前所处的模式更改终端中的光标形状。

现在,虽然它在 iTerm 上完美工作,但遗憾的是它在 OS X 的内置终端中不起作用。我一点也不在乎,除了它在我最喜欢的 WebStorm 中也不起作用。我想我可以欺骗它,而不是改变光标的形状,我可以尝试调整它的颜色。还是不行。

请大家,帮我找到一种在 IDEA 的终端中调整光标的方法。 谢谢!

p.s.: 有些人可能会建议根据模式更改提示,但老实说我不喜欢那样。我仍然相信有一种方法可以改变光标的形状或颜色。概率。只需要找到正确的转义序列。

不幸的是,Intellij 终端似乎在不考虑 bash 或 zsh 设置的情况下绘制自己的光标。

注意我假设 Intellij 的社区版和专业版使用相同的终端插件

You can see the Terminal plugin source here

终端插件使用Jediterm, a Java based terminal emulator written by JetBrains

终端window的大部分绘图在TerminalPanel.java and has a nested class called TerminalCursor

中处理

从 TerminalCursor class 可以看到 Java Graphics 用于绘制常规光标和闪烁光标的方框。

Code that draws a rectangle for the cursor

我仍然不确定未聚焦的光标是如何绘制的,因为它只是一个轮廓,而且我找不到用于在框架上失去焦点的处理程序。

您可以从下面的对话框中更改终端光标形状:

现在,这更适合使用: