超链接 (OSC 8)

开始或结束一个超链接。

Note

OSC 8 最初由 VTE 在 2017 年前后首创。原始规范可在 GitHub gist 中阅读,它对这一序列的各个方面作了相当详尽的说明。本页与原始规范之间的任何差异都应视为我们的错误。

  1. 0x1B
    ESC
  2. 0x5D
    ]
  3. 0x38
    8
  4. 0x3B
    ;
  5. ____
    p
  6. 0x3B
    ;
  7. ____
    u
  8. 0x1B
    ESC
  9. 0x5C
    \

标记一个超链接的开始。此序列之后的单元格都被视为指向 URI u 的超链接的一部分,直到遇到超链接的结束——由不带任何参数 p 或 URI 来标记:

  1. 0x1B
    ESC
  2. 0x5D
    ]
  3. 0x38
    8
  4. 0x3B
    ;
  5. 0x3B
    ;
  6. 0x1B
    ESC
  7. 0x5C
    \

参数是以冒号(:)分隔的键值对,键与值之间用等号(=)连接。目前唯一被识别的参数是 id,它把属于同一个超链接对象、且共享同一 URI 的独立单元格关联起来。终端主要利用这一信息在用户将光标悬停其上时高亮所有关联单元格,但也可能有其他用途。

当本序列中指定了 file:// URI 时,还有一个额外要求:必须指定主机名,否则终端会拒绝处理它。这是因为终端用户经常使用 SSH 访问远程机器,不带主机名的文件链接可能被错误地解释为指向本地可能存在的文件。