Skip to content

feat: 支持 railtyping.com 日语版 (/ja) - #1

Open
greycodee wants to merge 1 commit into
mainfrom
feat/railtyping-support
Open

feat: 支持 railtyping.com 日语版 (/ja)#1
greycodee wants to merge 1 commit into
mainfrom
feat/railtyping-support

Conversation

@greycodee

Copy link
Copy Markdown
Owner

概要

railtyping.com(电车打字练习站)的日语版页面添加注音支持。

改动

匹配范围

  • content_scripts.matches 新增 https://railtyping.com/jahttps://railtyping.com/ja/*
  • 需要成对声明:Chrome 的 match pattern 里 /ja/* 匹配不到 /ja 首页本身
  • web_accessible_resources.matches 按源声明 https://railtyping.com/*(仅用于授权页面读取词典)

站点特定跳过规则

content/content.js 新增 SITE_SKIP_SELECTORS,按域名声明免注音区域,在 isSkippable() 中生效。

railtyping 的游戏站牌 section.board 本身就同时显示 おもてさんどう / 表参道 / OMOTE-SANDO / 待输入罗马音串。若不跳过,注音会让读音重复出现,且实测会把站牌高度从 64px 撑到 86px、字距散开,破坏原有版式。

其他

  • popup 的支持站点判断改为多规则数组匹配,文案同步
  • 扩展更名为「Yomigana 日语注音」,版本 1.0.01.1.0
  • README 新增「支持的网站」表格与跳过规则说明
  • 隐私政策三个语种中「不读取 note.com 以外任何网站」的表述已修正 —— 该表述在本次改动后与实际行为不符
  • 商店上架文案(单一用途、权限说明、描述)同步更新

测试

  • node test/pipeline.test.js — 26 项全部通过(本次未触及注音管线本身)
  • 在真实页面上验证了跳过规则的选择器行为与版式影响
  • 扩展加载后的实际效果由 @greycodee 手动验证通过

已知限制

  • 语言切换需刷新一次:railtyping 的语言切换走 SPA 前端路由(/ja/lines/lines 不重载页面),且英文版在根路径。从英文页切到日文页时内容脚本不会注入。已记入 README 已知限制。
  • 若日后需要支持带查询参数的分享链接(如 /ja?utm=xxx),可再补一条 https://railtyping.com/ja?*

🤖 Generated with Claude Code

- manifest 匹配 https://railtyping.com/ja 与 /ja/*(仅 /ja/* 匹配不到
  /ja 首页本身,故成对声明)
- content.js 新增 SITE_SKIP_SELECTORS,按域名声明免注音区域;railtyping
  游戏站牌 section.board 自带 かな/漢字/ローマ字,跳过以免读音重复并撑破布局
- popup 支持站点判断改为多规则匹配,文案同步
- 扩展更名为「Yomigana 日语注音」,版本 1.1.0
- README / 隐私政策 / 商店文案同步更新(原「不读取 note.com 以外网站」
  的表述已与实际行为不符)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant