2

Die Situation

Ich brauche das Kopieren eines HTML-Link auf die aktuelle Seite zu automatisieren, dass im aktuellen Firefox Tab angezeigt wird in andere WYSIWYG-Editoren. Diese ist nicht das gleiche wie das Kopieren nur des Klartextes der URL, noch ist es das gleiche wie nur den Klartext des Webseitentitels einzufügen. Diese ist auch nicht die gleiche Sache wie das Navigieren zu einer anderen Webseite, die die HTML-Link zu der Seite von Interesse hat, den Text mit dem Mauszeiger auswählen und STRG-C eingeben, um es in die aktuellen Systeme zu kopieren Zwischenablage (sowohl Linux als auch Windows, sollte keine Unterschied machen). Nur das Update in die Zwischenablage soll automatisiert werden; Die Einfügen aus der Zwischenablage in die Zielanwendung wird manuell erfolgen.Firefox-Erweiterung, die Kopien HTML-Link zu aktuellen Webseite in die Zwischenablage kopieren und nicht nur die URL

Die gewünschte use case ist wie folgt:

  1. Der Benutzer zu einer beliebigen Web-Seite innerhalb von Firefox surft.
  2. Der Benutzer gibt einige benutzerdefinierte Tastenfolgen ein, die nicht sind, und widerspricht den standardmäßigen integrierten Firefox-Tastenbindungen.
  3. Firefox tun wird dann nur ein Teil von dem, was Copy Link Bookmarklet tut: Statt Öffnung ein neues separates Fenster/Tab und Erstellen und Rendern des HTML für den Link, und dann der Benutzer Bewegung zu verschwenden bei der Auswahl und Kopieren der Link in die Zwischenablage, formatiert die Erweiterung dann das HTML selbst und kopiert das direkt in die Zwischenablage.
  4. Der Benutzer wählt dann eines der unten beschriebenen Ziele und Typen CTRL-V, um den formatierten Text einzufügen.
  5. Der Benutzer sieht dann auf den Link als Link in diesem Zielbereich, und tut nicht nichts sehen wörtlich wie http://...

Zum Beispiel, wenn die Webseite angeklickt war http://www.google.com und die Benutzer durchsucht die benutzerdefinierte Tastenfolge, und wenn der Benutzer eingefügt es in ein Google-Dokument, was sie in diesem Dokument ist nichthttp://www.google.com noch würde sie sehen Google, sondern sehen würde, was Sie sehen würden, sehen würde, wenn man diese in Stackoverflow in einem Web-Browser lesen: Google

Nun gibt es Firefox-Erweiterungen und Bookmarklets, die nahe kommen, aber sie alle beinhalten keine Netto-Reduktion der Mausbewegung und/oder Tastendruck Overhead, Das ist der zeitaufwendigste Aspekt dieser häufig use case. Meine Suche nach einer vorhandenen Erweiterung wurde um um nichts erweitert, was genau meinen Bedürfnissen entspricht (siehe Research-Abschnitt unten). Daher denke ich, dass ich meine eigene Erweiterung rollen muss (oder eine vorhandene ändern), es sei denn jemand kann mich auf eine vorhandene Erweiterung verweisen, die diese Funktionalität bereitstellt.

Die Erweiterung, die ich im Sinn habe, sollte in Firefox Version 11 oder größer laufen auf Linux oder einer beliebigen Version von Windows funktionieren. Nur Firefox und eine geeignete Firefox-Erweiterung sollte benötigt werden, und keine andere spezielle Software.

Ziele der Paste sollte sein:

  1. GMail Textbereiche komponieren
  2. Google Dokumente
  3. Microsoft Word-Dokumente
  4. Microsoft Outlook Textbereiche zusammensetzen.
  5. Jeder andere WYSIWYG-Editor wie der Blogger-Post-Editor.
  6. Notepad (in diesem Fall ist es der Webseitentitel, der nur eingefügt wird und nicht die URL, oder sowohl der Webseitentitel als auch URL als separate Klartext; beide Wege).

über Benutzer angegebenen Tastenbelegungen: Wenn es eine Erweiterung war bereits , dass die oben tun, aber ohne die Möglichkeit bietet, ein Keybinding daran binden kann, dann würde ich erwarten, dass die keyconfig extension Erweiterung nutzen, um handle mit diesem Aspekt. Eigentlich könnte das sogar vorzuziehen sein; Ich weiß es noch nicht.

Forschung

Im Folgenden sind Ansätze, die ich untersucht, die nahe kam, was ich will, aber nicht genau den Bedarf erfüllen:

  1. Hacking auf Copy Link Bookmarklet wird nicht wegen arbeiten, von dem, was ich kann, sagen Sie, es gibt keine Möglichkeit, die Zwischenablage des Betriebssystems von einem Bookmarklet zu aktualisieren, daher denke ich, dass eine Firefox-Erweiterung erforderlich ist.
  2. In a Firefox extension, how can I copy rich text/links to the clipboard?
  3. 3 FireFox Addons to Easier Copy Links and Anchor Texts - Keine der aufgeführten Erweiterungen zu tun, was ich will, weil sie dich zwingen, die rechte Maustaste zu bedienen und navigieren Sie eine oder zwei Ebene des Kontextmenüs, die Bewegung verschwendet wird.
  4. Copy Link Text (CoLT) - CoLT unterstützt auch das Kopieren eines Hyperlinks und des verknüpften Texts als Rich-Text-formatierten Link, enthält jedoch keine Standard-Tastaturkürzel. Es sieht so aus, als ob someone else versucht, keyconfig an CoLT zu binden, was eine Option als Lösung sein könnte.
  5. Copy URL Plus - Sieht so aus, als ob es die Kopie-zu-Zwischenablage-Logik hat, sieht aber nicht so aus, als wäre es seit Firefox 1.x-Zeitrahmen beibehalten worden.

Antwort

2

ich meine eigene Frage bin zu beantworten:

enter image description here Die CTRL-SHIFT-F11 Bindung wird arbeitet geräuschlos stoppen, wenn beide keysnail und keyconfig in den gleichen Firefox-Browser installiert sind. Die Lösung für mich war, einfach keysnail zu deinstallieren, da ich es nicht benutze.

Ich brauche nicht wirklich meine eigene Firefox-Erweiterung zu schreiben, aber ich habe Notwendigkeit, ein Stück Code zu kratzen, die Kopien der rich Link von die Copy Link Text (CoLT) Erweiterung und wenden sie direkt als Bindung in die keyconfig Erweiterung wie folgt:

  1. Installieren Sie die keyconfig Erweiterung.
  2. Firefox neu starten.
  3. Nachdem Firefox geladen ist, geben Sie CTRL-SHIFT-F12 ein, um das Konfigurationsmenü keyconfig aufzurufen.
  4. Klicken Sie unten auf der Seite auf Fügen Sie einen neuen Schlüssel hinzu.
  5. Geben Sie in das Feld Name einen geeigneten Namen ein, z. B. Copy Rich Text Link to Current Page.
  6. Typ in dem folgenden Stück Javascript-Code (Dieser Code I aus der objCoLT.CopyBoth Funktion innerhalb der content/colt.js Datei im Copy Link Text (CoLT) Erweiterung geschnitzt):

    var url = content.document.location.href; 
    var text = content.document.title; 
    
    // Use the users selection instead of the title if text is selected: 
    var selection = document.commandDispatcher.focusedWindow.getSelection().toString(); 
    if (selection != "") 
    { 
        text = selection; 
    } 
    
    var richText = "<a href=\"" + url + "\">" + text + "</a>"; 
    
    var xfer = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable); 
    xfer.addDataFlavor("text/html"); 
    
    var htmlString = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString); 
    htmlString.data = richText; 
    xfer.setTransferData("text/html", htmlString, richText.length * 2); 
    
    var clipboard = Components.classes["@mozilla.org/widget/clipboard;1"].getService(Components.interfaces.nsIClipboard); 
    clipboard.setData(xfer, null, Components.interfaces.nsIClipboard.kGlobalClipboard); 
    
  7. Klicken Sie auf OK.

  8. Zurück im Haupt-Keyconfig-Dialog sollte <disabled> im Textfeld links von der Schaltfläche angezeigt werden.
  9. Klicken Sie in dieses Textfeld und geben Sie die gewünschte Tastenkombination ein, z. B. CTRL-SHIFT-F11.
  10. Klicken Sie auf die Schaltfläche anwenden.
  11. Klicken Sie auf die Schaltfläche Schließen Sie die Schaltfläche, um das Konfigurationsdialogfeld Keyconfig zu schließen.

Um dies zu testen, gehen Sie wie folgt vor:

  1. In Firefox, zu einer beliebigen Seite navigieren.
  2. Geben Sie CTRL-SHIFT-F11 ein (oder eine andere Tastenkombination, die Sie oben gewählt haben).
  3. Beachten Sie, dass keine Dialogfelder angezeigt werden; das ist beabsichtigt.
  4. Öffnen Sie Google Dokumente und erstellen Sie ein neues Dokument.
  5. Klicken Sie in das neue Dokument und geben Sie CTRL-V ein.
  6. Sie sollten sehen, das HTML/Rich-Text-Formular der Verknüpfung eingefügt.
  7. Klicken Sie auf den Link und dann auf die URL auf der linken Seite von Change.
  8. Der Browser sollte die ursprüngliche Seite öffnen, die dieser URL entspricht.