The project's README from github.com/fishjar/kiss-translator. As one markdown file: README.md.
一个简约、开源的 双语对照翻译扩展 & 油猴脚本。
Alt+Q 开启翻译Alt+C 切换样式Alt+K 打开设置弹窗Alt+S 打开翻译弹窗/翻译选中文字Alt+O 打开设置页面Alt+I 输入框翻译注:基于以下原因,建议优先使用浏览器扩展
- 浏览器扩展的功能更完整(本地语言识别、右键菜单等)
- 油猴脚本会遇到更多使用上的问题(跨域问题、脚本冲突等)
在插件管理那里设置,例如:
个人规则 > 订阅规则 > 全局规则
其中全局规则优先级最低,但非常重要,相当于兜底规则。
打开网页翻译面板,点击「编辑网站规则」。选择规则用途后点击「选取元素」,在网页上点击锁定元素;通过祖先路径调整层级,比较不同定位候选及匹配数量,点击「确认添加定位」加入草稿,最后点击主面板的「保存规则」保存。也可以通过「手动添加」输入 CSS 选择器。选取链接时不会跳转,右键可取消选取;副面板中的 ← / → 可按页面顺序浏览匹配元素。
www.bbc.com,可从下拉列表选择 *.bbc.com 等范围,也可输入自定义匹配规则。已有匹配的个人规则会直接载入编辑,保存时保留未修改的其他配置;已有 hostname: 规则仍兼容,订阅内容通过个人规则覆盖。当前支持桌面普通 DOM 网页及其动态内容。iframe、Shadow DOM 内部、Canvas 文字和触屏专用操作暂未纳入可视化选取。油猴同源页面通过浏览器 Web Locks 协调写入;不同源页面共享的 GM 存储没有跨源原子事务保证,编辑器会在检测到外部变更时提示重新读取。
一般接口测试失败常见有以下几种原因:
Ollama 有原生接口地址和 Openai 兼容的地址,本插件目前统一支持 Openai 兼容的地址,不支持 Ollama 原生接口地址Gemini 原生接口参数非常不一致,部分版本的模型不支持某些参数会导致返回错误。Hook 修改请求 body ,或者更换为 Gemini2 (Openai 兼容的地址)Ollama 启动时须添加环境变量 OLLAMA_ORIGINS=*, 参考:https://github.com/fishjar/kiss-translator/issues/174油猴脚本需要增加域名白名单,否则不能发出请求。
自定义接口功能非常强大、灵活,理论可以接入任何翻译接口。
示例参考: custom-api_v2.md
设置页面地址: https://fishjar.github.io/kiss-translator/options.html
本项目为业余开发,无严格时间表,欢迎社区共建。以下为初步设想的功能方向:
如果你对某个方向感兴趣,欢迎在 Issues 中讨论或提交 PR!
git clone https://github.com/fishjar/kiss-translator.git
cd kiss-translator
git checkout dev # 提交PR建议推送到dev分支
pnpm install
pnpm build
// `toggle_translate` 切换翻译
// `toggle_styles` 切换样式
// `toggle_popup` 打开/关闭控制面板
// `toggle_transbox` 打开/关闭翻译弹窗
// `toggle_hover_node` 翻译鼠标悬停段落
// `input_translate` 翻译输入框
window.dispatchEvent(new CustomEvent("kiss_translator", {detail: { action: "toggle_translate" }}));

ePhone AI
一个面向开发者的 AI 模型 API 中转与聚合平台,支持 OpenAI、Claude、Gemini、DeepSeek、GLM 等多家大模型。