30.4.3.9 光标参数

该框架参数控制光标的显示样式。

cursor-type

光标的显示方式。合法取值如下:

box

显示实心方块。(此为默认值。)

(box . size)

显示实心方块。但如果光标所在位置被尺寸在任意方向均大于 size 像素的遮罩图像覆盖,则显示为空心方块。

hollow

显示空心方块。

nil

不显示光标。

bar

在字符之间显示垂直竖线。

(bar . width)

在字符之间显示宽度为 width 像素的垂直竖线。

hbar

显示水平横线。

(hbar . height)

显示高度为 height 像素的水平横线。

cursor-type 框架参数的优先级可被 set-window-cursor-type(see 窗口(window)与点(Point))以及变量 cursor-typecursor-in-non-selected-windows 覆盖:

User Option: cursor-type

该缓冲区局部变量控制显示当前缓冲区的选中窗口中的光标样式。若其值为 t,则表示使用由 cursor-type 框架参数指定的光标。 否则,该值应为上述列出的某一种光标类型,并会覆盖 cursor-type 框架参数。

User Option: cursor-in-non-selected-windows

该缓冲区局部变量控制非选中窗口中的光标样式。 其支持的值与 cursor-type 框架参数相同;此外,nil 表示在非选中窗口中不显示光标,而 t(默认值)表示使用常规光标类型的标准变体(实心方块变为空心方块,竖线变为更窄的竖线)。

User Option: x-stretch-cursor

该变量控制在制表符、大片空白等超宽字形上显示的块状光标的宽度。 默认情况下,块状光标的宽度仅为字体默认字符的宽度,若下方字形为超宽字形,则不会覆盖其全部宽度。 该变量取非 nil 值时,表示将块状光标绘制为与下方字形同宽。默认值为 nil

该变量对文本模式框架无效,因为文本模式光标由终端绘制,不受 Emacs 控制。

该变量指定光标的闪烁方式。每个元素的格式为 (on-state . off-state)。 当光标类型与 on-state 相等(使用 equal 比较)时,对应的 off-state 指定光标闪烁关闭时的样式。 on-stateoff-state 均应为适用于 cursor-type 框架参数的值。

若某种光标类型未在此处作为 on-state 声明,则会使用各类光标对应的默认闪烁方式。 对该变量的修改不会立即生效,仅在设置 cursor-type 框架参数时生效。