xterm中的光标颜色;相应地更改为vim中的语法

问题描述 投票:1回答:3

[在gnome-terminal和konsole中,我的光标颜色根据vim中选择的前景色而改变(如果我使用红色文本,则我的光标为红色)。在xterm中,我的光标总是白色。如何将xterm设置为与gnome-terminal或konsole相同的行为?

非常感谢。

vim syntax xterm
3个回答
1
投票

实际上,xterm的manual并不是那么简单,并且仅此功能还没有合适的教程。从手册中引用:

cursorColor(类CursorColor

指定用于文本光标的颜色。默认是“XtDefaultForeground”。默认情况下,xterm尝试保持此状态颜色与背景颜色相同,因为它通过填充文本单元格的背景来绘制光标。该相同的限制适用于可能改变的控制序列这种颜色。

设置此资源将覆盖xterm对以下内容的大部分调整光标颜色。仍然会使用反向视频来禁止某些操作情况,例如黑色背景上的黑色光标。

此外,突出显示可以被特殊对待(引用命令行选项的描述);

-hm

告诉xterm使用highlightTextColor和highlightColor来覆盖选择中反转的前景色/背景色。它将highlightColorMode资源设置为“ true”。

这暗示了一些情况:

    使用命令行选项或资源,
  • 光标颜色可以是set。如果以此方式设置(并且除非被动态颜色转义序列覆盖以更改颜色),否则xterm将使用此颜色。
  • 如果不受限制,则xterm尝试通过使用由“ ANSI”控制序列针对颜色0-7设置的前景色和背景色以及针对颜色8的非ANSI控件来保持光标可见。 255。
  • 有时,应用程序将前景色和背景色设置为相同的值(xterm也会尝试为这种情况选择合适的光标颜色)。
  • 可以单独设置颜色以突出显示。

现在... xterm通过选择与前景和背景相反的颜色基本上使光标可见(除非被覆盖)。 Gnome-terminal会执行类似的操作,但并非如此:它从调色板中选择相反的项,这(现在阅读示例)可以使光标的可见性降低,因为它使用的调色板的发光性较小。 (特别是,我注意到黄色文本的“反向”变成了暗淡的橙色)。通常,Konsole的调色板会提供更差的可见性(尽管黄色像xterm一样颠倒,红色文本在黑色背景上却模糊不清)。

的XTerm:

enter image description here

侏儒末端:

enter image description here

的Konsole

enter image description here

简而言之:听起来好像OP的xterm已配置为将光标颜色设置为特定值,而解决方法是消除该设置。但是,除非特别注意配置颜色(对于所有三个终端),否则光标在文本will上的外观会有所不同。


0
投票

为了确保光标的颜色始终是前景的颜色,请将其自己添加到.Xresources或整个机器上添加到/etc/X11/app-defaults/XTerm。第二秒的位置可能因操作系统而异。

xterm*cursorColor:      *XtDefaultForeground

-1
投票

根据Xterm的manual,它将自动突出显示文本光标。 Gnome-terminal从Xterm继承了该特性,这就是为什么光标颜色在vim中会发生变化。

就我而言,xterm在光标突出显示方面与gnome-terminal相同。

您使用的是真正的xterm,是否还有其他将$ TERM设置为'xterm'的术语?

© www.soinside.com 2019 - 2024. All rights reserved.