-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Check: all pref keys in preference.xhtml should be init in prefs.js #54
Comments
要我说不如像Chartero一样统一到package.json里 |
这也解决不了这个 issue 的问题的嘛,这个 issue 的问题通常出现在 重构插件后,变更了一些 pref key,比如 northword/zotero-format-metadata@d6db4d2#diff-c4fc1c0947464c11133cca736e3f65a4e99567a38d9fab884e046bdd1b260839 这种,只在 prefs.js 里改了,但把 preference.xhtml 里的拉下了。 我觉得这个最好能是在 build 之后,打包之前去检查, 甚至可以把 ftl 检查那个一起抽出来,做成 Addon Linter 类似的东西(饼) |
我再稍微解释一下我的插件结构
我理解你的问题应该是想加个防呆措施,但如果都能统一在一处,那自然就无呆可防了 |
是的,就是防呆。 有这么几个问题:
|
|
我倾向于尽可能减少对编译后插件结构的改变,也就是在可以直接使用原文件的情况下尽可能不去完全生成新文件,主要是方便新手理解 看讨论以后感觉也许最合适的还是做一个针对prefs的检查脚本,类似locale检查的脚本,每次编译触发 另外关于放package.json,我感觉大趋势是配置文件独立出来。但是独立出来的话,和单独的prefs.js也没大区别了 |
如果确实需要类型提示,一种可行的办法是每次编译从prefs.js编译出一个d.ts,我觉得比放在package.json的野路子要好一些,对新手的学习压力也小(真的不需要可以关掉) |
都可以,模板确实需要考虑一些学习成本。不过对你俩来说,还是建议统一省事一些。需要的话我这两天有空可以pr |
我也倾向于做成和现有 locale 检查类似的模式。
prefs.js 里的 key 是带
也许可以在 preference.xhtml 里也保留基本的结构,比如不是写 <checkbox native="true" data-l10n-id="enableRealTimeDashboard" __enableRealTimeDashboard__ /> 而是 <checkbox native="true" data-l10n-id="enableRealTimeDashboard" preference="enableRealTimeDashboard" /> 因为 这样下来,就只是增加了一个
|
这个想法不错,普适性比较强
最好是默认extensions.zotero.addonName吧,实在特殊的需求可以代码里特殊处理 |
配置里是有 namespace 的, zotero-plugin-scaffold/src/types/config.ts Lines 55 to 75 in 56210f9
- 。
addonName 可能包含空格,处理下来可能和 namespace 是差不多的。 这个目前用在了 ftl 的前缀,可以在这里也用起来。 |
No description provided.
The text was updated successfully, but these errors were encountered: