Pentadactyl: Durchsuchen Sie mehrere Sites mit einem Befehl

942
Adobe

Stellen Sie sich ein Problem vor, mehrere Wikis mit einem Befehl zu durchsuchen. Hier ist eine mögliche Lösung. Wenn man folgendes hinzufügen würde .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>) 

Das hätte es lösen sollen - aber das Problem ist, dass Pentadactyl auf diese Weise den JS-Code nicht sieht. Dh der neue Befehl wikiSearch wird nicht angezeigt. Kannst du das Reparieren?

2

1 Antwort auf die Frage

6
ngm

Ich glaube, Sie müssen Ihre Funktion auf userContext, anstatt auf hinzufügen dactyl.

z.B

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 

Ich habe die parsedSelectionZeile herausgenommen, da die Auswahl nicht als Zeichenfolge erscheint.

Versuchen Sie auch, die spitzen Klammern von zu entfernen <args>:

command wikiSearch -nargs=* -js userContext.searchWikis(args) 
Ich wollte Dich auszeichnen - habe aber etwas falsch gemacht. Ich werde Sie am Ende der Prämie vergeben. Adobe vor 12 Jahren 0
@Adobe so funktionieren Kopfgeld. Wenn Sie eine Prämie beginnen, können Sie den Betrag nach 2 Tagen nach dem Start der Prämie vergeben. [Wie funktioniert das Kopfgeldsystem?] (Http://meta.stackexchange.com/q/16065) Sathya vor 12 Jahren 0
@Adobe Danke, froh, dass es geholfen hat. Pentadactyl ist eine fantastische Software. ngm vor 12 Jahren 0