2013-05-01 19 views
6

Mehrere OSX-Zwischenablage-Manager aus AppStore zeigen die Möglichkeit, die Quellanwendung von Inhalt zu bestimmen, der in die Zwischenablage kopiert wurde.Ermitteln der Quellanwendung des aktuellen Passepartout-Inhalts

Ich schreibe einige einfache Zwischenablage Beobachter und möchte das Source-Application-Symbol in der Nähe des Inhalts, in allgemeinen NSPasteboard gespeichert zeigen. Und ich würde gerne wissen, wie das erreicht werden kann.

Soweit ich sehen kann, bietet NSPasteboard keine zusätzlichen Informationen außer Daten und Daten selbst.

Vielleicht gibt es einige Ereignisse oder Benachrichtigungen zu wissen, dass ein 'Kopieren' Befehl ausgelöst wurde? Oder andere Wege?

+1

Mehrere OSX Zwischenablage Manager = CopyLess. Dies ist die einzige App, die soweit ich sehen kann. – UJey

+0

Vielleicht verwenden sie AppleScript irgendwie? – UJey

Antwort

6

Ich glaube, dass die Art, wie CopyLess und Alfred 2 (die auch das unterstützt) funktioniert, dass sie einen Timer haben, der die Zwischenablage auf Änderungen prüft. Wenn sie eine Änderung in der Zwischenablage sehen, erhalten sie die aktive Anwendung und verknüpfen diese mit der Änderung. Es ist wahrscheinlich keine idiotensichere Methode, sollte aber in den meisten Fällen funktionieren.

+1

Danke @Dustin. Ich endete mit der gleichen Schlussfolgerung. – UJey

2

Es gibt einen neuen Quasi-Standard für diesen jetzt (Stand: Dezember 2016), siehe http://nspasteboard.org

Es funktioniert wie folgt:

  • standardmäßig ein Programm, das der Inhalt der Zwischenablage erfaßt werden annehmen, dass die vorderste Anwendung diejenige ist, die die Zwischenablage gefüllt hat (was allerdings nur funktioniert, wenn das Programm bereits läuft, wenn der Inhalt der Zwischenablage gesetzt ist).

  • Aber wenn es eine Zwischenablage Geschmack (Art) vom Typ org.nspasteboard.source gibt, dann ist der Inhalt dieser Geschmacksrichtung die Bundle ID der App, die den Clipbard füllte.

(Dies ist eine Quasi-Standard, weil es wurde diskutiert und vereinbart von interessierten Mitgliedern einer Mailing-Liste von nspasteboard.org verwaltet)

+0

Jemand, zeigen Sie das zu 1Password Entwickler :) Ich meine die "org.nspasteboard.source" für ihre Menüleiste Agent. – UJey

+1

Die 1pw Devs sind auf der Mailing-Liste. Jemand muss sie nur überzeugen, das neue Protokoll zu implementieren. –

Verwandte Themen