變更指標形狀 (OSC 22)

變更指標形狀。

  1. 0x1B
    ESC
  2. 0x5D
    ]
  3. 0x32 0x32
    22
  4. 0x3B
    ;
  5. ____
    t
  6. 0x1B
    ESC
  7. 0x5C
    \

將指標形狀變更為 t。

遺憾的是,關於 t 允許取哪些值並沒有共識。即便是此 OSC 的起源 xterm 也指出,當使用自訂游標主題時,「可以預期它提供其中約三分之一的名称,同時還會新增其他名稱。」1

Ghostty 與 Kitty 和 Foot 等其他終端機一樣,使用 CSS 標準化的游標形狀清單,用於 cursor 屬性。這絕非完美,但至少它是一個無歧義且與平台無關的國際標準。

避免使用此序列,除非你的程式只面向特定終端機模擬器,或者你能透過偵測目前終端機來在不同游標名稱間切換。

終端機相容性

GhosttyKittyVTEAlacrittyFootiTerm2xterm
OSC 221.0.00.31.0否否1.12.03.5.0367
游標樣式CSSCSS--CSS + X11 子集2[自訂 X11 子集]X11

Footnotes

  1. https://invisible-island.net/xterm/manpage/xterm.html#VT100-Widget-Resources:pointerShape ↩

  2. Foot maps both CSS and X11 names 到 wp_cursor_shape_device_v1::shape 列舉,它們同樣基於 CSS 標準。 ↩