双击查词插件「MonoKakido Copilot」请求坛友帮忙 Code Review

「MonoKakido Copilot」是什么?

面向二语写作场景,专为 iOS / macOS 上的辞典 APP Dictionaries by Monokakido 设计的 Obsidian 插件。

由于使用了 FastMikannAPI 做形态素解析,无需手动选择单词,只需双击 Alt 键就可以一边写(日语)文章,一边查单词。

效果预览:

https://x.com/KeiShonagon/status/1913783570583236696

项目地址:

为什么要发帖找坛友 Code Review?

Manage hotkeys through commands and allow customization:官方工作人员的 Review 指出了「Prefer to manage hotkeys through commands instead of implementing your own, to avoid conflicts between plugins and allow customization.」这个问题,但我实在不擅长前端开发,通过 AI 勉强实现了这个功能。为了避免又让外国友人头疼实在不想又去丢人现眼了,想找坛友帮忙看看。

另外,也是想找个有兴趣接盘插件开发的坛友:你负责前端即可,我会负责这个插件用到的自然语言处理相关的开发。

前端怎么这么难啊,野生后端都要被逼疯了

FAQ

Q:支持其他词典程序吗?
A:支持,在设置的 Dict URL scheme 填入下面的 Dict URL scheme 即可。

欧路词典eudic://dict//{w}
GoldenDict goldendict://{w}(注:只支持 Windows)
DictTango dttp://app.dicttango/WordLookup?word={w}
Apple 系统词典 dict://{w}

Q: 上面的词典程序不是都有快捷键查词/ MacBook 双击触控板快速查词/自动取词等功能吗?
A: 是的,但是:

  1. 上述程序要么需要用鼠标手动选择文字,要么获取的其实是鼠标附近的文字。而长时间编辑文本后,「光」标和「鼠」标的位置会有较大差距,这就导致了获取的文字其实是不对的,或者说需要花时间调整鼠标位置
  2. 由于操作系统限制,上述方法都无法获取完整的上下文,而日语和英语不一样,必须要对光标附近的上下文进行「形态素解析」才能推断出要查哪个单词
  3. 插件会在查词时自动记录上下文,同时会生成回链,即生成形如下面的查词记录:

怒りも喜びも哀しさも全部==ぶちこめ== [[2025-05-21]]
打ち込む
メモ:

Q:支持其他语言吗?
A:支持,但目前没有找到其他语言(为辞典检索设计的)形态素解析(词形还原/词干提取/构词法分析)(免费)API,所以其他语言只是通过空格分割单词,形态素解析需要靠辞典软件本身。

Q:为什么优先支持 MonoKakido ?
A:次要原因:你就当我是为了 FastMikannAPI 这碟醋(为日语的辞典检索设计的形态素解析器)专门包的这盘饺子,主要原因: Dictionaries by Monokakido 是世界上最棒的辞典软件!大雾

Q: 为什么插件名字里会有 Copilot 这个词?是有 AI 相关功能么?
A:是的,下一步就会支持[[搜文解字:辞典增强生成]]

1 个赞

官方给出的意见,大概是因为插件有设置双击 Alt 键执行某个命令,这是默认启用,且用户不能通过软件内设置修改。最好是所有的命令都用 addCommand() 注册,且不要设置默认快捷键。既然这一条意见是分开写的,也许并不是必要修改,或许很快就会给你批准通过了。

顺便一提,我用过你的 Kanji2Hanzi 工具,挺好 :+1:

1 个赞

感谢回复!
我想了下,默认设置成双击 Option 确实可能会和其他插件冲突:这个插件主要参考了 Obsidian Search Everywhere Plugin ——这个就是只能通过双击 shift 调用,所以我写插件的时候就没选 shift 而是用的 Option,但说不定其他插件就是默认只能双击 Option。

为了避免到时候用户反馈双击之后怎么没效果(或者和其他插件冲突了),我还是周末抽空用「开关」组件让用户至少能选择是否启用双击 Option 调用。

至于支持自定义双击哪个键,这个就只能等 PR 啦。

最后,很高兴 Kanji2Hanzi 能帮到你(笑