如何制作自定义终端光标形状?

不是我

我想在各种(模拟)终端中更改光标的形状。

我想要的形状是⼕(对不起,如果它不呈现)。这是一个向右打开的三边形框。这样,我可以看到插入位置,还可以看到光标在“哪个”字符上。我在U + 2F15找到了Unicode中的那个字符。

我绝对希望能够在Linux的内核虚拟终端(即使用Control+ Alt+获得的东西)和GUI终端仿真器(例如XTerm和RXVT)中做到这一点。如果可能,即使在网络终端(例如PuTTY和KiTTY)中,我也想这样做。如果我不能得到那个准确的字符,我至少要那个三行形状FN

我知道这将涉及“ ANSI”转义码或终端仿真器中的(也许)设置(尽管考虑到这不适用于Linux内置终端仿真器,所以这不是可取的)。请提供不依赖于使用任何特定外壳的答案。在不更改内核代码的情况下,这是否有可能?

JdeBP

虚拟终端和实际终端中可用的光标形状受到限制。通常,它们仅启用与旧的显示硬件相匹配的设置形状,通常只允许指定闪烁周期以及在打开门光标时的开始和结束扫描线,有时仅是开始和结束组合的非常有限的子集(例如下划线,上划线,半高,阻止)。

为此,两个主要的控制序列是DECSCUSR和LINUXSCUSR。DECSCUSR是DEC在其后来的终端范围内支持的控制序列的名称。像其他真正终端制造商一样,DEC在其doco中给其卖方专用控制序列名称以“ DEC”开头。(为了比较,Tektronix在其doco中使用了“ TEK”前缀来命名其供应商-私有控制序列。)Linux doco与往常一样非常差,并且没有命名。因此,“ LINUXCUSR”是我的造词,以此类推,前缀为“ LINUX”。

DECSCUSR和LINUXSCUSR均未标准化。它们彼此不同,但是它们是在大约同一时间发明的(仅在1990年代出现在DEC VT 5xx中),因此没有DEC现有技术的通常年份。☺埃格蒙特·科布林格(Egmont Koblinger)在其他地方评论说,两者的模型令人难以置信,因为它可以使眨眼间的形状融为一体。还进行了一些讨论,以更改DECSCUSR 0的含义以启用用户指定的形状。并且Microsoft Terminal强调了DECSCUSR模型与Win32控制台机制中使用的模型之间的不匹配,该模型允许任意启动行使用了三十年(如果在OS / 2 1.x的VIO子系统中占了其前身的话,则为四十年)。以及PC / AT视频固件)。

结果是,没有一个通用的控制序列可以运行,当前的世界分为DECSCUSR和LINUXSCUSR阵营,因为几乎没有终端仿真器都支持这两种。此外,有了这两个功能,您将无法获得所需的灵活性。与开始+结束扫描线模型唯一的广泛偏差是竖线,并且只能通过一些GUI终端仿真器(例如XTerm)获得,它们添加其他形状,如DECSCUSR 5和DECSCUSR 6。

是的,您可以修改FreeBSD内核,NetBSD内核,OpenBSD内核和Linux内置终端仿真器以及各种应用程序模式终端仿真器(帧缓冲区和X11 GUI)的代码,以实现更多的游标形状。但是,要使其通用化将非常困难。

我已经在这样做了我的终端模拟器。DECSCUSR 7/8是大纲框。DECSCUSR 9/10是一颗星。DECSCUSR 11/12是下划线+上划线。DECSCUSR 13/14为倒“ L”形。在阅读1970年代的一些旧文献的基础上,我一直在考虑添加方括号和仅上划线两个方向。但是,DECSCUSR并不容易将其用于您所寻找的实际Unicode字符的任意规范。LINUXSCUSR不匹配的想法在所有,而且。

进一步阅读

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用CSS制作自定义形状

来自分类Dev

Java如何制作自定义异常?

来自分类Dev

如何使用自定义光标?

来自分类Dev

以编程方式制作自定义饼图形状

来自分类Dev

如何使用CSS制作自定义可点击形状以覆盖所需的确切区域?

来自分类Dev

在Android中制作自定义可绘制形状

来自分类Dev

如何自定义形状的开关按钮?

来自分类Dev

如何创建自定义形状-CSS

来自分类Dev

如何在C ++中使用自定义形状的光标检测图像上的鼠标单击位置

来自分类Dev

如何制作具有多个几何形状的自定义ggplot2几何图形

来自分类Dev

如何在Swift 2中制作按钮自定义形状的框架

来自分类Dev

在Ubuntu 12.04中制作自定义鼠标光标

来自分类Dev

使用CSS形状:如何使用纯HTML和CSS制作自定义图标

来自分类Dev

如何在Flutter中制作自定义按钮形状

来自分类Dev

在Ubuntu 12.04中制作自定义鼠标光标

来自分类Dev

使用CSS制作自定义形状

来自分类Dev

如何制作自定义形状div或操作div

来自分类Dev

在Android中制作自定义可绘制形状

来自分类Dev

如何在Dreamweaver CS6中制作自定义形状

来自分类Dev

想要使用CSS制作自定义形状

来自分类Dev

如何为使用核心图形制作的形状添加自定义颜色?

来自分类Dev

如何自定义形状的开关按钮?

来自分类Dev

如何在html / css中制作自定义形状的按钮?

来自分类Dev

如何自定义“抓手”光标?

来自分类Dev

如何在终端命令提示符的开头添加自定义形状?

来自分类Dev

如何自定义终端提示颜色?

来自分类Dev

如何在 wpf 中制作自定义形状的进度条?

来自分类Dev

如何在运行时使用其他形状制作自定义圆形?

来自分类Dev

Clippath 在容器上制作自定义形状

Related 相关文章

热门标签

归档