考虑一下使用一个命令搜索多个 wiki 的问题。这是一个可能的解决方案。如果将以下内容添加到.pentadactylrc
:
javascript <<EOF
dactyl.searchWikis = function (selection) {
let parsedSelection = selection.replace(/^\s*/, "" ).replace(/\s*$/, "" ).replace(/\s+/g, "+" );
dactyl.execute( ":tabopen http://www.scholarpedia.org/wiki/index.php?title=Special:Search&search=" + selection);
dactyl.execute( ":tabopen http://en.citizendium.org/wiki?title=Special:Search&search=" + selection);
};
EOF
:command wikiSearch -nargs=* -js dactyl.searchWikis(<args>)
这应该已经解决了 - 但问题是 - 这样 Pentadactyl 就看不到 JS 代码了。也就是说,新命令 wikiSearch 没有出现。你能修复它吗?
答案1
userContext
我相信您需要在而不是 在 上添加您的功能dactyl
。
例如
javascript <<EOF
userContext.searchWikis = function (selection) {
commands.execute("tabopen http://www.scholarpedia.org/wiki/index.php?title=Special:Search&search=" + selection);
commands.execute("tabopen http://en.citizendium.org/wiki?title=Special:Search&search=" + selection);
};
EOF
我把这parsedSelection
行删掉了,因为选择似乎不是以字符串的形式出现的。
还可以尝试删除尖括号<args>
:
command wikiSearch -nargs=* -js userContext.searchWikis(args)