在尝试使用bash脚本安装和配置Zotero时,我在使用bash添加.xpi
插件时遇到了一些困难。文档说:
要在Zotero中安装插件,请将其.xpi文件下载到电脑。然后,在Zotero中,单击"工具→附加组件",然后拖动。xpi
我最接近的方法是模拟"以"选项,选择"zotero"。然而,即使使用"open with"手动地,Zotero假定传入的文件是一个文献文件而不是一个附加文件。所以实现:
#!/bin/bash
zotero some.xpi
与选项1类似,启动Zotero,但它不(提示用户)安装附加组件。
我还没有找到一个API或方法来自动加载附加组件。因此,我想问:如何从bash脚本为Zotero添加任意.xpi
附加组件?
文档中的说明对我不起作用,所以我发现了另一种方法:
可以
- 下载Zotero独立版本
- 获取附加组件源代码
- 将附加组件编译到包含
install.rdf
文件的构建目录 - 将此构建目录复制到Zotero独立构建存储库的
/modules/
目录 - 将Zotero Standalone Build库编译为一个Build(导出到
/staging/<your system architecture>/
) - 在
/staging/<your system architecture>/defaults/prefs.js
文件中添加说明,以便在Zotero加载时包含新插件。 - 启动zotero:
./zotero
.
git clone --recursive https://github.com/zotero/zotero-standalone-build
...
npm run build
git clone git@github.com<your zotero extension>.git
# Switch out build file to add additional plugin
cp -r "src/build.sh" "src/submodules/zotero/zotero-standalone-build/build.sh"
..
npm build
...
staging/Zotero_linux-x86_64/zotero -purgecaches
我为zotero-standalone-build
创建了一个修改后的build.sh
文件,它将扩展名添加到prefs.js
文件中:
echo 'pref("extensions.something.unopkgPaths", "{}");' >> "$APPDIR/defaults/preferences/prefs.js"
echo 'pref("extensions.something.version", "");' >> "$APPDIR/defaults/preferences/prefs.js"
echo 'pref("extensions.something.installed", false);' >> "$APPDIR/defaults/preferences/prefs.js"
echo 'pref("extensions.something.skipInstallation", false);' >> "$APPDIR/defaults/preferences/prefs.js"
构建命令的细节取决于你想要包含的插件。