xdtui
X岛匿名版(xdnmb)的终端(TUI)客户端。基于 Rust 核心 + Python Textual 界面 的混合架构:Rust 核心负责网络请求、缓存、全文检索与本地数据库,Python 端提供终端交互界面,二者在本机通过 gRPC 通信。
功能特性
- 浏览版块 / 时间线,翻页、跳页与按 ID 跳串
- 串详情阅读:只看 Po、回复、引用跳转、引用列表、剧透揭示
- 发新串 / 回复 / 举报,多饼干(Cookie)切换与颜文字快捷插入
- 订阅(Feed)列表与「我的发言」本地记录
- 星标收藏(Favorites),主要是清理豁免
- 「Tips 酱」语录
- 本地全文检索(Tantivy + 仓颉,支持自定义梗词分词)
- 本地离线缓存(内存 + SQLite 分层存储)
- 图片浏览(缩略图 / 原图 / TUI 原生模式)
- 浏览历史(本地记录看过的串)
- 版规查看、存储管理(DB/索引统计、缓存清理、Tips 管理)与设置面板
- 深色主题、动态配色
- 核心服务崩溃自动重启
- 极简模式(隐藏多余 UI)
安装
需要 Python 3.12+。
pip install xdtui
安装后直接运行:
xdtui
系统依赖
支持平台:Windows、Linux(x86_64 / aarch64)。
- Windows:开箱即用,二维码解码库(zbar)已随包附带,无需额外安装。
- Linux:需系统提供 zbar 库,否则扫码功能会报错:
- Debian/Ubuntu:
sudo apt install libzbar0 - Fedora:
sudo dnf install zbar
- Debian/Ubuntu:
键盘快捷键
全局
| 按键 | 功能 |
|---|---|
ctrl+q / q |
退出 |
z |
极简模式(隐藏多余 UI) |
主界面(版块 / 串列表)
| 按键 | 功能 |
|---|---|
j / ↓ |
下一项 |
k / ↑ |
上一项 |
h / ← |
上一页 |
l / → |
下一页 |
enter |
打开当前串 / 版块 |
s |
跳页 |
r |
刷新本页 |
b |
版块侧栏 |
/ |
搜索 |
n |
发新串 |
m |
我的发言 |
S |
订阅列表 |
alt+h |
浏览历史 |
alt+t |
跳串(按 ID) |
alt+g |
版规 |
alt+r |
引用列表 |
t |
看图(仅含图卡片可用;无图模式或配置缺失时禁用) |
版块侧栏内:r 重新加载、e 全部展开/收缩、esc 返回列表。
串详情界面
| 按键 | 功能 |
|---|---|
esc |
返回 |
o |
只看 Po |
p |
回复 |
p |
引用回复 |
a |
订阅 |
f |
星标(收藏) |
r |
举报 |
t |
看图(仅含图楼层可用;无图模式或配置缺失时禁用) |
发帖 / 回复 / 举报 弹窗
| 按键 | 功能 |
|---|---|
esc |
取消 |
ctrl+g |
快捷插入(颜文字) |
ctrl+enter |
快捷回复 |
模态窗口 / 确认弹窗
所有带明确确认/取消或关闭按钮的模态窗口(如二次确认、跳页、岛公告、选择饼干、选择订阅 UUID、版规、帮助、关于等):
| 按键 | 功能 |
|---|---|
y |
快捷确认 / 同意 / 知道了 |
n |
快捷取消 / 拒绝 / 关闭 |
esc |
取消 / 关闭 |
注:含有文本输入框的弹窗(如发帖/回复、搜索输入框、星标备注)在焦点处于输入框时优先响应文本输入,不影响字符输入。
引用弹窗
在串详情中点击某条引用(或按 alt+r 打开引用列表后选中某条)弹出的引用查看窗口:
| 按键 | 功能 |
|---|---|
g |
跳转到被引用的原串 |
esc |
关闭 |
历史界面
| 按键 | 功能 |
|---|---|
c |
清空浏览历史 |
esc |
返回 |
搜索
| 按键 | 功能 |
|---|---|
enter / ctrl+s |
搜索 |
esc |
关闭 |
其他界面
订阅、历史、我的发言、设置、存储管理、图片查看等界面均以 esc 关闭 / 返回。
模态窗口(除发串/回复窗口外)均可以通过点击空白处关闭。
数据与日志位置
应用数据(配置 config.toml、本地数据库 data.db、全文检索索引)统一存放在:
- Windows:
%APPDATA%\xdtui\xdtui\config\ - Linux:
~/.config/xdtui
运行日志 app.log 位于数据目录下的 cache/ 子目录:
- Windows:
%APPDATA%\xdtui\xdtui\config\cache\app.log - Linux:
~/.config/xdtui/cache/app.log
许可证
本项目以 MIT 许可证 发布。
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file xdtui-0.1.29-cp312-abi3-win_arm64.whl.
File metadata
- Download URL: xdtui-0.1.29-cp312-abi3-win_arm64.whl
- Upload date:
- Size: 14.8 MB
- Tags: CPython 3.12+, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d5f7e61a9e28f06d353b998d5940a02aad8894f638e6de88ec70227e29908c34
|
|
| MD5 |
50786f4bb8a4571d499d1884a77ad505
|
|
| BLAKE2b-256 |
c93005f32d6ba8cbd89c72029ef91318a08915b30f9fc9ae8aac1734dbf8b0df
|
File details
Details for the file xdtui-0.1.29-cp312-abi3-win_amd64.whl.
File metadata
- Download URL: xdtui-0.1.29-cp312-abi3-win_amd64.whl
- Upload date:
- Size: 15.3 MB
- Tags: CPython 3.12+, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a49f0703a42ac13e791e212eaa41a87e74a7067adc30533ae68167e39031ad9e
|
|
| MD5 |
90548405edb0906be1de19f7fa84202a
|
|
| BLAKE2b-256 |
39b18a15be3c8d53506a58818c1ea77a68b263e72f93ad1903b2295668a70a31
|
File details
Details for the file xdtui-0.1.29-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: xdtui-0.1.29-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 16.7 MB
- Tags: CPython 3.12+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f1eb9af0df4d99d262ad0f54e8535567f9631e69705dfb2a7616a179b93d07f1
|
|
| MD5 |
7371d053020c2965dae74f02376be830
|
|
| BLAKE2b-256 |
24fb76baa061e7369c2d53f5adacb45d93785643f7aa0b9461c1fd85131f2177
|
File details
Details for the file xdtui-0.1.29-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: xdtui-0.1.29-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 15.8 MB
- Tags: CPython 3.12+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b7638b56313296e02bd78e56a54f6f6ac7192d48a645988afffe4df5deaa3f58
|
|
| MD5 |
28cea9e2b97c8c1255c59df21b335fcd
|
|
| BLAKE2b-256 |
6d5da133946662ebee7565b5d6eeb797bf638c51a560b289b77355021089a916
|