Alhadis/OSC8-Adoption
GitHub: Alhadis/OSC8-Adoption
这是一个追踪终端模拟器中OSC 8超链接支持情况的文档列表,解决了快速查询终端兼容性的需求。
Stars: 180 | Forks: 17
# OSC 8在终端模拟器中的采用
本文档追踪终端超链接(即 [OSC 8](https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda))在实际中的支持情况,主要关注 [终端模拟器](https://en.wikipedia.org/wiki/List_of_terminal_emulators)。
## 测试支持
要确定您的终端模拟器是否支持超链接,请运行以下命令:
```
printf '\033]8;;https://example.com\033\\This is a link\033]8;;\033\\\n'
```
在兼容 OSC 8 的终端中,您应该能看到类似以下的效果:
## 支持情况
### 终端模拟器
- [Alacritty](https://github.com/alacritty/alacritty/) 自 [v0.11](https://github.com/alacritty/alacritty/releases/tag/v0.11.0) (2022-10-13) 版起
- [DomTerm](https://domterm.org/) 自 [1.0.2](https://github.com/PerBothner/DomTerm/commit/19771fa894634d2423d6d097c8203892254dbcf4) (2018-05-09) 版起
- [`foot`](https://codeberg.org/dnkl/foot/):自 [1.7.0](https://codeberg.org/dnkl/foot/releases/tag/1.7.0) (2021-03-20) 版起
- [Ghostty](https://github.com/ghostty-org) 自 [#1928](https://github.com/ghostty-org/ghostty/pull/1928) (2024-07-07) 合并起
- [hterm](https://chromium.googlesource.com/apps/libapps/+/HEAD/hterm/) 自 [1.76](https://github.com/chromium/hterm/releases/tag/v1.76) (2018-06-21) 版起
- [Hyper](https://hyper.is/) 自 2019年10月起
- [iTerm2](http://iterm2.com/) 3.1
- [Kitty](https://github.com/kovidgoyal/kitty/issues/68) 自 v0.19 版起:[issue](https://github.com/kovidgoyal/kitty/issues/68)
- [Konsole](https://konsole.kde.org/) 自 [2020年7月](https://invent.kde.org/utilities/konsole/-/merge_requests/138) 起(默认禁用)
- [mintty](http://mintty.github.io/) 自 [2.9.7](https://github.com/mintty/mintty/releases/tag/2.9.7) (2019-03-15) 版起
- [Secure ShellFish](https://secureshellfish.app/) 自 [2025.23](https://apps.apple.com/us/app/ssh-files-secure-shellfish/id1336634154) (2025-09-12) 版起
- [Terminology](https://www.enlightenment.org/about-terminology) 自 2018-10-14 起在 Git 版本中可用,预计将在 1.3 版本发布
- [Ultimate++ terminal widget](https://github.com/ismail-yilmaz/upp-components/tree/master/CtrlLib/Terminal) 自 2019年11月起
- [基于 VTE 的终端](https://wiki.gnome.org/Apps/Terminal/VTE):自 0.50 版起[^1]
- [Ptyxis](https://devsuite.app/ptyxis/) 47.6 (复制、打开)
- [GNOME Console](https://apps.gnome.org/Console/) 46.0 (悬停、复制、打开)
- [GNOME Terminal](https://wiki.gnome.org/Apps/Terminal) 3.26 (悬停、复制、打开)
- [Guake](http://guake-project.org/) 3.2.1
- [MATE Terminal](https://github.com/mate-desktop/mate-terminal):自 [v1.28.0](https://github.com/mate-desktop/mate-terminal/releases/tag/v1.28.0) (2024-02-19) 版起
- [ROXTerm](https://github.com/realh/roxterm) 3.5.1
- [Terminator](https://github.com/gnome-terminator/terminator)[^2]:自 [v2.0](https://github.com/gnome-terminator/terminator/blob/v2.0/CHANGELOG.md) (2020-10-07) 版起
- [Tilix](https://github.com/gnunn1/tilix) 1.5.8
- [xfce4-terminal](https://docs.xfce.org/apps/xfce4-terminal/start) 自 [1.1.0](https://gitlab.xfce.org/apps/xfce4-terminal/-/tags/xfce4-terminal-1.1.0) (2023-08-22) 版起
- [WezTerm](http://wezfurlong.org/wezterm/index.html) 自 2018年初起
- [Windows Terminal](https://github.com/microsoft/terminal/issues/204) 自 [v1.4.3141.0](https://github.com/microsoft/terminal/releases/tag/v1.4.3141.0) (2020-11-12) 版起
- [xterm.js](https://xtermjs.org/) 自 [5.0.0](https://github.com/xtermjs/xterm.js/releases/tag/5.0.0) (2022-09-16) 版起
- [VS Code](https://code.visualstudio.com/):自 [v1.72](https://github.com/microsoft/vscode/releases/tag/1.72.0) (2022-09) 版起
### 终端复用器
- [TermySequence](https://termysequence.io/)
- [tmux](https://github.com/tmux/tmux):自 [v3.4](https://github.com/tmux/tmux/releases/tag/3.4) 版起[^3]
- [Zellij](https://github.com/zellij-org/zellij):自 [v0.21.0](https://github.com/zellij-org/zellij/releases/tag/v0.21.0) (2021-11-29) 版起
### 应用程序
- [Cargo](https://doc.rust-lang.org/stable/cargo/):自 [v1.75.0](https://github.com/rust-lang/cargo/blob/dcbc5248361c0863201b4130edd1e919928a3d23/CHANGELOG.md#cargo-175-2023-12-28) 版起
- [`column`](https://man7.org/linux/man-pages/man1/column.1.html):自 [`util-linux` v2.41-start](https://github.com/util-linux/util-linux/releases/tag/v2.41-start) (2025-02-18) 起 ([#3371](https://github.com/util-linux/util-linux/pull/3371]))
- [Delta](https://github.com/dandavison/delta):自 [v0.4](https://github.com/dandavison/delta/releases/tag/0.4.0) (2020-08-04) 版起,用于链接到文件和 GitHub 提交
- [Emacs](https://www.gnu.org/software/emacs/):自 [28.1](https://www.gnu.org/software/emacs/news/NEWS.28.1) (2022-04-04) 版起
- [`eza`](https://eza.rocks/) ([`exa`](https://github.com/ogham/exa/issues/396#issuecomment-1834264733) 的继任者):自 [v0.10.3](https://github.com/eza-community/eza/releases/tag/v0.10.3) (2023-07-31) 版起
- [`fd --hyperlink[=always/auto/never]`](https://github.com/sharkdp/fd):自 [v10.2.0](https://github.com/sharkdp/fd/releases/tag/v10.2.0) (2024-08-23) 版起
- [`fzf`](https://github.com/junegunn/fzf):自 [v0.55.0](https://github.com/junegunn/fzf/releases/tag/v0.55.0) (2024-08-29) 版起
- [GCC](https://gcc.gnu.org/):自 10 版起(在 [14 版](https://gcc.gnu.org/pipermail/gcc-patches/2023-November/635186.html) 中[大幅扩展](https://gcc.gnu.org/pipermail/gcc-patches/2023-November/635186.html),并在 [15 版](https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=5a022062d22e0bd6f8bb650ca109b0ca2d093796) 中[进一步扩展](https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=5a022062d22e0bd6f8bb650ca109b0ca2d093796)),用于[将诊断消息指向文档](https://gcc.gnu.org/onlinedocs/gcc-10.1.0/gcc/Diagnostic-Message-Formatting-Options.html#index-fdiagnostics-urls)。
- [Groff](https://www.gnu.org/software/groff/):自 [1.23.0](https://git.savannah.gnu.org/cgit/groff.git/tag/?h=1.23.0) (2023-07-05) 版起,用于 `roff` 文档中的链接,包括手册页。
- [`lc --hyperlink`](https://github.com/c-blake/lc):(基于 Nim 的文件列表工具):自 2019年7月起
- [`less -R`](http://greenwoodsoftware.com/less/):自 [v566](https://github.com/gwsw/less/commit/0f810ef16781bf0f59690be63af876bddabf68bf) (2020-11-25) 版起
- [`lf`](https://github.com/gokcehan/lf)(终端文件管理器):自 [r39](https://github.com/gokcehan/lf/releases/tag/r39) (2025-12-02) 版起
- [`ls --hyperlink[=always/auto/never]`](https://www.gnu.org/software/coreutils/manual/html_node/ls-invocation.html#ls-invocation):自 [`coreutils` v8.28](https://github.com/coreutils/coreutils/blob/v8.28/NEWS#L88-L89) (2017-09-02) 版起。
- [`lsd --hyperlink[=always/auto/never]`](https://github.com/Peltoche/lsd/):自 lsd 0.22 (2022-04) 版起。
- [Matterhorn](https://github.com/matterhorn-chat/matterhorn)(聊天客户端):自 40400.0.0 版起。
- [mdcat](https://github.com/lunaryorn/mdcat)(Markdown 猫):自 0.5.0 版起。
- [moor](https://github.com/walles/moor)(分页器,`less` 的替代品):自 [v1.14.0](https://github.com/walles/moor/releases/tag/v1.14.0) (2023-05-03) 版起
- [Mudlet](https://www.mudlet.org/)(跨平台 [MUD](https://en.wikipedia.org/wiki/Multi-user_dungeon) 客户端):自 [4.20.0](https://github.com/Mudlet/Mudlet/releases/tag/Mudlet-4.20.0) 版起([Wiki](https://wiki.mudlet.org/w/Manual:Supported_Protocols#OSC_8:_Hyperlink_Protocol))
- [Neovim](https://neovim.io/):最新版本支持渲染带超链接的文本(自 [此 PR](https://github.com/neovim/neovim/pull/27109) 合并起)。
- [ripgrep](https://github.com/BurntSushi/ripgrep):自 [v14.0.0](https://github.com/BurntSushi/ripgrep/releases/tag/14.0.0) (2023-11-27) 版起
- [Symfony](https://symfony.com/):自 4.3 版起。
- [systemd](https://github.com/systemd/systemd):自 239 版起。
- [wget2](https://gitlab.com/gnuwget/wget2/):自 2019年11月起
### 库
- [`ansi_up`](https://github.com/drudru/ansi_up/)(ANSI 转 HTML 转换库):自 [v4.0.3](https://github.com/drudru/ansi_up/releases/tag/v4.0.3) (2019-02-12) 版起
- [`brick`](https://hackage.haskell.org/package/brick)(高级终端 UI 库):自 2017年10月起。
- [Rich](https://github.com/willmcgugan/rich)(富文本格式库):自 2020年5月起。
- [`vty`](https://hackage.haskell.org/package/vty)(中级终端 UI 库):自 2017年10月起。
## 待处理功能请求
### 终端模拟器
- [ConEmu](https://github.com/Maximus5/ConEmu/issues/2078)
- 基于 `VTE` 的:
- [LilyTerm](https://github.com/Tetralet/LilyTerm/issues/117)
- [LXDE Terminal](https://sourceforge.net/p/lxde/bugs/870/)
- [Tilda](https://github.com/lanoxx/tilda/issues/285)
- [Gitlab CI output viewer](https://gitlab.com/gitlab-org/gitlab/-/issues/288333)
### 终端复用器
- [`screen`](https://savannah.gnu.org/bugs/index.php?50952)
### 应用程序
- [Irssi](https://github.com/irssi/irssi/issues/700)
- [NeoMutt](https://github.com/neomutt/neomutt/issues/4654)
- [TBVaccine](https://github.com/skorokithakis/tbvaccine/issues/37)
- [WeeChat](https://github.com/weechat/weechat/issues/1252)
## 相关链接
- [原始 OSC 8 规范](https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda)
- [GNOME Terminal 讨论](https://bugzilla.gnome.org/show_bug.cgi?id=779734)
- [iTerm2 讨论](https://gitlab.com/gnachman/iterm2/issues/5158)
- [测试文件](https://git.gnome.org/browse/vte/plain/perf/hyperlink-demo.txt)
[^1]: 使用 VTE 0.50.4、0.52.2 或更新版本以避免罕见的崩溃。
[^2]: 指的是用 Python 编写的、基于 GTK+ 的 Linux 程序 “Terminator”。请勿与另一个[同名的](https://code.google.com/archive/p/jessies/wikis/Terminator.wiki) Java 程序混淆。
[^3]: 需要用户在 tmux 配置中添加 `set -ga terminal-features "*:hyperlinks"`。
标签:CLI, OSC 8, WiFi技术, 兼容性列表, 功能测试, 多模态安全, 威胁情报, 开发者工具, 批量测试, 技术标准, 文本用户界面, 系统工具, 终端仿真器, 终端协议, 终端软件, 网络安全研究, 超链接支持, 跨平台工具, 防御加固