ペンタダクチル:1つのコマンドで複数のサイトを検索


2

1つのコマンドで複数の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は表示されません。あなたはそれを修正できますか?

回答:


6

あなたの機能を追加する必要があると思います 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)

私はあなたに賞を与えたいと思いました - しかし、何か間違ったことをしました。賞金の最後にあなたに授与します。
Adobe

@Adobeはそれが報奨金の仕組みです。あなたが賞金を開始すると、あなたは賞金を開始してから2日後に金額を授与することができます。 バウンティシステムはどのように機能しますか?
Sathyajith Bhat

と言っていますペンタダクチルは素晴らしいソフトウェアです。
ngm
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.