/Scriptio

Load custom renderer-level scripts for QQNT

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

Scriptio

Note

此插件 1.0.0 版本及以上最低支持 LiteLoaderQQNT 1.0.0,之前版本的 LiteLoaderQQNT 请使用 1.0.0 之前的 Release

LiteLoaderQQNT 插件,用于为 QQNT 加载任意渲染层的 JavaScript 片段。

你可能也感兴趣:Transitio,自定义 CSS 片段加载器。

🪄 具体功能

  • 导入/搜索/查看/删除用户脚本
  • 启用/禁用用户脚本
  • 用户脚本的实时响应

🖼️ 截图

演示中使用了 MSpring-Theme,主题色为 #74A9F6

Scriptio

📥 安装

稳定版

下载 Release 中的 scriptio-release.zip,解压后放入数据目录下的 plugins/Scriptio 文件夹中即可。(若没有该文件夹请自行创建)

CI 版

若想体验最新的 CI 功能,可以下载源码后同上安装。(仅需下载下面列出的文件)

完成后的目录结构应该如下:

plugins (所有的插件目录)
└── Scriptio (此插件目录)
    ├── manifest.json (插件元数据)
    ├── main.js (插件代码)
    ├── preload.js (插件代码)
    ├── renderer.js (插件代码)
    ├── settings.html (插件设置界面)
    ├── icons/ (插件用到的图标)
    └── modules/ (模块化的插件代码)

🤔 使用方法

Warning

由于 js 代码的复杂性,禁用/修改部分脚本可能需要重启/重载生效

  • 导入脚本:在配置界面导入 JS 文件,或将之放入 data/Scriptio/scripts/ 文件夹。
    • 用户脚本的编写请参考 Wiki
    • 可以在此文件夹下创建多层目录,插件会自动扫描所有 JS 文件,但是设置界面导入的还是默认直接放在 data/scriptio/scripts/
  • 搜索脚本:在设置界面搜索框中输入关键字即可。
    • 未聚焦到其它输入框时可以直接按下 Enter 键或 Ctrl+F 聚焦到搜索框
    • 根据空格将输入分解为多个关键词,所有关键词均大小写不敏感
    • 搜索结果展示匹配 所有关键词 的样式
  • 查看脚本
    • 鼠标悬停在脚本标题上时,会显示其绝对路径。
    • 鼠标悬停在脚本上时,会展示 "在文件夹中显示" 按钮。
  • 删除脚本:鼠标悬停在脚本上并点击删除 🗑️ 按钮,或进入,或进入 data/scriptio/scripts/ 文件夹删除对应文件。
  • 启用/禁用脚本:打开插件设置界面,将对应的脚本开关打开/关闭,支持的脚本即时生效。
    • 若点击各个开关速度过快,可能会导致错位等情况,此时请重载窗口。
  • 更新脚本:重新导入后重启或重载即可。

💻 调试

  • 开发者模式 (不推荐):若您想要调试 您的用户脚本,可以在插件设置界面打开开发者模式,此时插件会监控 data/scriptio/scripts/ 文件夹,当发生更改时,会自动重载。
  • Debug 模式:若您想要调试 此插件本身,可以使用 --scriptio-debug 参数启动 QQNT,此时插件会在控制台输出调试信息。

📜 用户脚本

Note

以下脚本均为由我/其它用户编写的用户脚本,不内置在插件中。

若你有愿意分享的脚本,欢迎提交 PR 或 Issue 来将它们添加到这里。编写脚本前推荐先阅读 Wiki

名称 实时响应 作者 说明
Automatic-text-to-voice-conversion.js 🟢 Shapaper 文字自动转语音!让我看看谁在语音没有麦克风😂游戏切换界面很麻烦?那就用这个插件把他的消息读出来吧!
Automatic-voice-to-text-conversion 🟢 Shapaper 语音自动转文字!再也不需要手动右键转文字了!Need: Scriptio v1.3.4+
celebration-on-send-message 🟢 bopomofo 发送消息,触发celebrate撒花动画
Chat_list_animation 🟢 naahi-i 添加会话列表的动效,包含两个效果
Conversation Quick Remover 🟢 Natsukage 点击鼠标中键快速移除会话
Group-name-completion 🟢 Shapaper 给群昵称添加更多信息!
hitokoto 🟢 PRO-2684 输入框展示一言
hook-vue 🔴 PRO-2684 Hook Vue 实例
hook-fetch 🔴 PRO-2684 Hook window.fetch
img-quick-close 🔴 PRO-2684 快速关闭图片
inspectio 🟢 PRO-2684 添加各类提示信息,详见 README,需要 hook-vue.js 的支持
link-preview 🟢 PRO-2684 链接预览:鼠标经过链接时尝试加载浏览,悬浮显示链接的标题和描述,需要 hook-vue.js 的支持
msg-record-enhance 🔴 PRO-2684 查看聊天记录中部分发送者 QQ,需要 hook-vue.js 的支持
open-in-browser 🟢 PRO-2684 小程序若可行则浏览器打开
pangu 🟢 PRO-2684 编辑框内按下 Ctrl+P 后,自动在中英文、中文与数字之间添加空格,并进行合适的标点符号处理
privacio 🟢 PRO-2684 保护你的隐私:阻止 QQ 的一些追踪行为,需要 hook-fetch.js 的支持。
relay-self 🟢 PRO-2684 允许接龙自己的消息,需要 hook-vue.js 的支持
Scheduled Message Sender 🟢 Natsukage 定时在指定群组发送消息,需要安装euphony(具体群组和消息内容在js文件中设定)
shortcutio 🟢 PRO-2684 添加一些常用的快捷键
show-time 🟢 PRO-2684 消息显示时间,需要 hook-vue.js 的支持
smooth-transition 🟢 PRO-2684 为页面间导航添加平滑过渡动画
toast 🔴 PRO-2684 允许其它脚本调用 scriptio_toolkit.toast,需要 hook-vue.js 的支持
to-contact-list-top 🟢 lgc2333 添加一个回到聊天列表顶部的侧边栏按钮

⭐ Star History

Stargazers over time