• Stars
    star
    115
  • Rank 304,137 (Top 7 %)
  • Language
    Python
  • License
    GNU Affero Genera...
  • Created about 2 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

X 岛匿名版命令行客户端

xdcmd

AUR version build

X 岛匿名版命令行客户端。

用户反馈和技术支持集中串:No.50750950

快速安装

  • Arch Linux (Arch User Repository) yay -S xdao
    • 感谢 Malingshu 提供打包~(ノ゚∀゚)ノ
  • NixOS (Nix Flakes) nix run github:Konecho/xdcmd
    • 感谢 Konecho 提供打包~(ノ゚∀゚)ノ
  • Windows 10+ 使用 GitHub Actions 自动打包成可执行文件,可以从这里下载。
    • xdcmd-windows 原始的打包产物。
    • xdcmd-windows-onefile 单文件版,实际上是在运行的时候将主程序什么的自解压到临时目录。
    • xdcmd-windows-upx 将打包产物使用 UPX 压缩后的版本,不知道该下载哪个的话就选这个吧
  • Linux with glibc >= 2.35 使用 GitHub Actions 自动打包成可执行文件,可以从这里下载。
    • 虽然名字里写的是 ubuntu(因为是在 Ubuntu 22.04 下打包的),但是 glibc 版本不低于 2.35 的 Linux 发行版应该都可以运行。
      • 测试过可以运行的发行版:
        • Arch Linux
        • Fedora 37+
        • Ubuntu 22.04+
        • Manjaro 21.3+
      • 测试过(由于 glibc 版本不够)不能运行的发行版:
        • CentOS 7
        • Debian 11
        • RockyLinux 9
    • xdcmd-ubuntu 原始的打包产物,不知道该下载哪个的话就选这个吧
    • xdcmd-ubuntu-onefile 单文件版,实际上是在运行的时候将主程序什么的自解压到临时目录。

基本介绍

“在命令行的环境下重现 X 岛网页版的刷岛体验”,原本只是这么一个很简单的想法,在做出初步的原型然后发到岛上之后意外地很受肥肥们的欢迎,于是就继续把完整版做出来了 (*´ω`*)

由于技术和精力所限,这个客户端只能实现看串、发串、查看引用和订阅管理这些比较基本的功能,没有实现历史记录和饼干切换等高级功能,在功能丰富程度和使用体验上均与 X 岛的网页版以及已有的手机客户端相差甚远。在这些基本功能完成后,除非存在严重影响使用的恶性 BUG 需要修复,我可能不会继续实现更多的功能需求。当然如果你愿意贡献代码,那就再好不过啦!(ゝ∀・)

不管怎么说,在命令行里刷岛这件事本身已经非常炫酷了 ᕕ( ᐛ )ᕗ

  • 执行 python main.py 就可以启动了,在此之前不要忘了 pip install -r requirements.txt,需要使用 Python 3.10 或以上的版本。
  • 你也可以手动在 PATH 下创建一个用于快速启动的脚本。例如,想要在终端输入 xdcmd 直接启动此项目:
    • Windows:(echo @echo off & echo python /path/to/xdcmd/main.py %*) > %SystemRoot%\xdcmd.cmd
    • Linux:(echo '#!/bin/sh\npython3 /path/to/xdcmd/main.py "$@"' > /usr/local/bin/xdcmd) && chmod +x /usr/local/bin/xdcmd
  • 建议搭配等宽字体使用。对于 Windows 用户,建议通过 Windows Terminal 使用这个客户端,在传统的终端下使用可能会存在一些问题。

使用截图

查看版面 查看串 发串
用 VSCode 刷岛 用哔哔小子刷岛(?)

在配置文件中启用单色模式,并按照“怀旧式命令提示符”的教程设置 Windows Terminal 主题,即可体验“用哔哔小子刷岛”的效果。

配置文件

在启动时,会按照以下顺序查找配置文件:

  • 使用命令行参数 --config-c 指定的配置文件路径。
  • $XDG_CONFIG_HOME/xdcmd/config.ini,其中 $XDG_CONFIG_HOME 的默认值为 ~/.config,在 Windows 下 ~ 相当于 %HOMEPATH%
  • main.py 所在目录的 config.ini

如果没有找到配置文件,则会在 $XDG_CONFIG_HOME/xdcmd/config.ini 写入默认的配置文件。

配置文件的内容如下:

[Config]
# 图片CDN地址
# 如果留空,则运行时会通过X岛API自动获取
# 一般不需要手动设定
cdnpath = https://image.nmb.best/
# 饼干
# 自行在用户系统中扫描饼干二维码,可以得到形如{"cookie":"...","name":"..."}的JSON数据
# 将cookie字段的值填到这里就可以了(这个饼干是随机生成的示例,并不能实际使用)
cookie = Y%85m%E5J5%F4%7D%98%DB%98%0Cm%08%11%9DV%1EIi%956W%10
# 订阅ID
# 可以通过python -c "import secrets;print(secrets.token_urlsafe(24))"随机生成一个
# 虽然API里用的参数名称都是UUID,但是实际上可以使用包括空字符串在内的任意字符串
# 也可以将在其他客户端使用的订阅ID填到这里
feeduuid = C7hswJmRY1eHo6FfCqJbmWgva8D3vAI6
# 使用单色模式
monochrome = False
# 显示缩略图
# 此功能依赖于chafa(https://hpjansson.org/chafa/),需要自行使用包管理器安装,或下载可执行文件并放在PATH环境变量包含的路径下
# 在单色模式下也不会显示缩略图
# 需要额外的时间加载图片,如果介意拖慢速度的话可以关闭此功能
imagepreview = True
# 缩略图的最大宽度
imagepreviewwidth = 24
# 缩略图的最大高度
imagepreviewheight = 6
# 隐藏Tips
hidetips = False
# 隐藏饼干
# 红名的名字和PO主的标记不会被隐藏
hidecookie = False
# 只看PO
# 不会影响Tips的出现
poonly = False
# 不在主页上显示公告
ignorenotice = False

其他

  • 本项目包含了“芦苇娘表情包”(黑白版彩色版)的下载链接。芦苇娘人物形象原作者为 ddzx1323,表情包由 Anime801 制作。
  • 本项目包含了“凉宫 Tips 娘表情包”的下载链接。凉宫 Tips 娘人物形象原作者为饼干为“iVUmXcE”的肥肥(No.50666176),表情包由饼干为“9QybryU”的肥肥制作(No.51412777)。
  • 虽然本项目的开源性质决定了任何人都可以自由地使用、修改和分发本项目的源代码,但原作者个人仍然会强烈反对和谴责尝试将本项目的源代码用于适配“阿苇岛匿名版”的行为。
  • 加载过的缩略图缓存保存位置为 $XDG_CACHE_HOME/xdcmd/lru-cache.db,其中 $XDG_CACHE_HOME 的默认值为 ~/.cache
  • 如果你有兴趣的话,可以在 Wiki 中查看原作者自己整理的 X 岛匿名版 API 文档。
  • 首页的 X 岛岛娘像素画由饼干为“QmMcrqS/oyf4Vgn/nhRG3Jo/F9YdaV2”的肥肥绘制(No.57410809)。原版像素画大小为 32px,由于终端大小有限,因此这里重绘了一个 16px 的版本

More Repositories

1

WechatMomentScreenshot

朋友圈转发截图生成工具(⚠️Fork 不是收藏,请勿在贡献代码以外的情况下 Fork!)
HTML
3,707
star
2

realesrgan-gui

实用、美观的 Real-ESRGAN 图形界面,同时支持 Windows、Ubuntu 和 macOS 平台。现在也支持 Real-CUGAN 了!(Cross-platform GUI for image upscaler Real-ESRGAN with additional features. Now with Real-CUGAN support!)
Python
691
star
3

cloud-clipboard

在局域网内自用的在线剪贴板,支持传输纯文本和文件
Vue
237
star
4

free-img

Short description of this repository
Python
46
star
5

mozjpeg-gui

调用 mozjpeg 和 libwebp 对图片进行缩放 / 压缩 / 上传的小工具 (ˈᕐ ̫ˈ⁎) (已弃坑,建议使用 https://squoosh.app/ 作为替代)
C#
33
star
6

hexo-theme-akarin

The theme of https://akarin.dev/
EJS
27
star
7

watermarker

为敏感照片添加全屏水印的水印姬
HTML
22
star
8

avatar-frame

套框头像生成器
JavaScript
17
star
9

link-cleaner

网站链接清洗器
JavaScript
17
star
10

saizeriya

萨莉亚随机点餐(Saizeriya random dish picker/サイゼリヤ ガチャ)
JavaScript
12
star
11

IBSjnuweb

PHP
10
star
12

wasm-aes

使用 WASM 运行的 AES 算法
C
9
star
13

dufs-material-assets

dufs 的 Material Design 风格自定义前端界面,添加了一些额外的功能。(Alternative frontend assets for dufs in material design with additional features.)
JavaScript
8
star
14

msg-tools

聊天消息处理工具
Vue
6
star
15

project-striker

弹幕射击游戏(续作:https://github.com/TransparentLC/project-striker-black-label)
Python
6
star
16

mdconv

将 Markdown 文件转换为 HTML 和 PDF 文档的工具
CSS
5
star
17

transparentlc.github.io

存在感消失的地方|ω•`)
HTML
5
star
18

project-striker-black-label

弹幕射击游戏
Python
3
star
19

realesrgan-gui-page

HTML
1
star
20

webgl-vanity-gpg

Generate vanity PGP keys using GPU in your browser!
TypeScript
1
star
21

wasm-pbkdf2-sha256

使用 WASM 运行的 PBKDF2-SHA256 算法
JavaScript
1
star
22

vue3-zhihu-daily

Vue 3 试水项目,知乎日报网页版
Vue
1
star
23

wasm-c20p1305

使用 WASM 运行的 ChaCha20Poly1305 算法
JavaScript
1
star
24

CloudEmoticon

A cloud solution to your favorite emoticons on Windows (unoffical client) “云颜文字”桌面版 非官方客户端
Visual Basic
1
star
25

sysu-health-report-fucker

Python
1
star
26

wasm-c25519

使用 WASM 运行的 X25519 和 Ed25519 算法
C
1
star