Ich denke, dies ist eine verwandte Frage zu Kann ich GNOME-Applets in Unity verwenden? (bewegt auf Vorschlag von @ Jorge Castro )
Ich möchte es stickynotes_applet
in Unity verwenden. Jetzt in Gnome wird dieses Applet zu einer Leiste hinzugefügt. Dann muss ich darauf klicken, um eine neue Notiz zu erstellen, und ich kann Einstellungen aufrufen, damit die Notizen auf dem Desktop bleiben alles was ich brauche.
Wie hier erwähnt, ist es natürlich nicht möglich, dieses Applet direkt in Unity zu verwenden. Aber im Grunde müsste ich nur das Fenster "Einstellungen" öffnen (damit die Notizen hängen bleiben) und irgendwie einen Befehl für eine neue Notiz ausgeben (der sonst durch Klicken auf das Applet-Symbol in ausgeführt würde die Gnome Bar).
Ich habe versucht, ' /usr/lib/gnome-applets/stickynotes_applet
' auszuführen, und anscheinend wird es ausgeführt, obwohl kein Applet-Symbol angezeigt wird (was erwartet wird) und auch keine anderen Fenster (von denen ich sonst gehofft habe, dass sie angezeigt werden :)).
Angesichts der Tatsache, dass dieses Applet nichts Besonderes mit dem Desktop zu tun hat, gibt es eine Befehlszeilenmethode , um dieses Applet grundsätzlich auszuführen, einen Befehl "Einstellungen anzeigen" auszugeben und eine neue Notiz auszugeben Befehl dazu in einer Unity-Umgebung ( derzeit kann ich über die tomboy
Befehlszeile aufrufen und es funktioniert - aber die Fenster sind für meinen Geschmack zu klobig )?
(und Bonusfrage - wie würden Sie ein Applet-bezogenes Fenster nur über die Befehlszeile im klassischen Gnome starten?)
Die Desktop-Integration ist mir nicht so wichtig - ich würde dies gerne manuell über die Befehlszeile ausführen, solange ich kleine kompakte Notizen erhalte, die auf dem Desktop bleiben (solange der Prozess aktiv ist).
Vielen Dank für alle Kommentare,
Prost!
Antworten:
Sie könnten ein kleines Gnome-Panel haben, auf dem nur Ihr Applet ausgeführt wird. Siehe Wie verwende ich das GNOME-Bedienfeld in Unity?
quelle
gnome-applet
Technik getestet - und tatsächlich funktioniert sie gut für mich auf Natty! In der Zwischenzeit habe ich jedoch eine befehlszeilenbasierte Technik gefunden, die ich in dieser Antwort gepostet habe , also habe ich das stattdessen akzeptiert. Nochmals vielen Dank - Prost!Ich bin wieder auf dieses Problem zurückgekommen (immer noch auf Natty); Also dachte ich, ich würde meine Ergebnisse veröffentlichen.
Zuerst habe ich nachgeschlagen, ob Sie Gnome-Applets über die Befehlszeile ausführen können, und in einem separaten Fenster - es stellte sich heraus, dass dies eine Technik zum Debuggen von Python-Applets war.
invest-applet
(was in Python ist), damit es wieder auf Natty funktioniert; Patch finden Sie in Bug # 775387 "Invest-Applet startet nach Upgrade auf Natty nicht ...": Bugs: "Gnome-Applets" -Paket: Ubuntuinvest-applet
Objekt beim Aufruf über die Befehlszeile instanziiert und in ein eigenes Fenster einfügt - und das funktioniert zufällig in Unity:Dies ist das Skript:
... und das erweiterte Skript (mit Debug-Ausgabe und einer Menge chaotischer Kommentare) befindet sich in gtk_bonobo_applet_widget.py .
Dies ist genau das , was ich wollte, und zuerst dachte ich, dass es für alle Applets gelten würde - zumindest in Natty (und unter ihnen
stickynotes
); aber leider nein :Jetzt ist Natty ein bisschen spezifisch, weil es das letzte Gnome 2 Ubuntu ist - es enthält jedoch auch (das erste) Unity. So wie:
bonobo
/CORBA
Schnittstelle offen (in Python übergnomeapplet
). Diese, wieinvest-applet
oderbrightness-applet
, können die oben genannte Technik verwenden, um in ihrem eigenen Fenster angehoben zu werden - und können überlibbonobo2-bin
Werkzeuge (wieactivation-client
) abgefragt werden.stickynotes
z. B. wurden in Richtung GSettings / DBUS-Basis (Schnittstelle) migriert.In der Tat
stickynotes
migriert vonbonobo
bisdbus
kurz vor Natty herauskam (in der Revision Port auf neue libpanel-Applet-API ); Dies wird durch das Ersetzen desPANEL_APPLET_BONOBO_FACTORY
Makros durch deutlichPANEL_APPLET_OUT_PROCESS_FACTORY
. Wenn man die letzte Version vonstickynotes
basierend auf überprüft und erstellt, sollte man wahrscheinlichbonobo
auch in der Lage sein, das Applet in einem separaten Fenster zu instanziieren und von dort aus auszuführen, auch ohnegnome-panel
.Ich hätte sonst geglaubt, dass alle Applets (oder besser gesagt Applet-Entwicklungs-Frameworks) die Fähigkeit haben sollten, in einem separaten Fenster wie diesem ausgeführt zu werden - wenn nicht aus einem anderen Grund, um das Debuggen von Applets während der Entwicklung zu erleichtern. Und da einige Applets über Befehlszeilenschalter verfügen, die in einem separaten Fenster ausgeführt werden können (sowohl die oben stehende "Anfängeranleitung" als auch
invest-applet
solche Schalter), hoffte ich, dass sie möglicherweise auchstickynotes
solche Befehlszeilenargumente enthalten. Ich habe jedoch die Quelldateien durchsucht - und leider kann ich keine Erwähnung von Befehlszeilenoptionen finden.Aber dann fragte ich mich - warum diese Migration? Nun, es liegt daran
bonobo
, dass es schon eine Weile veraltet ist (oder eher ist):AppletsDbusMigration - GNOME Live! : (2009)
gnome-devel-list mailing list - Was ersetzt bonobo? (2009)
Mailingliste für Gnome-Komponenten 'Re: Was wird Bonobo ersetzen?' (2005)
Nun, shucks - ich selbst denke, das "Einbetten einer Anwendung in eine andere" war in diesem Fall sehr nützlich - um (zumindest einige) Applets in Unity auszuführen, wobei die Unterstützung für sie entfernt wurde.
:)
Natürlich war es mehr oder weniger ein " Glückliche "Anordnung von Desktop-Paketen in Natty, die dies ermöglichten (vorausgesetzt, es ist immer noch Gnome 2 und verfügt immer noch über diebonobo
Bibliotheken) - offensichtlich wurden spätere Versionen, die auf Gnome 3 basieren,bonobo
vollständig entfernt - und das obige Python-Skript-Instanziierungs-In -a-Fenster-Technik wird dort definitiv nicht funktionieren:/
Die letzte Frage lautet: Könnten wir in ähnlicher Weise ein Python-Skript verwenden, jedoch mit Bindungen für
dbus
, um etwas Ähnliches wie das oben beschriebenebonobo
Skript zu erreichen?Am nächsten daran bin ich mit dem Skript gtk_dbus_applet_widget.py. Dieses Skript löst jedoch kein Applet in einem Fenster aus - und kann der Leiste nicht einmal ein Applet hinzufügen! Das einzige, was es tun kann, ist, mit dem Applet "factory" über zu sprechen
dbus
und es anzuweisen, ein Applet zu erstellen. Aber dieses Applet bleibt einfach als Daten irgendwo im Dateisystem ( und es bleibt über Neustarts hinweg bestehen! ) und wird nie als Gnome-Widget instanziiert ... Und angesichts der obigen Kommentare bezweifle ich, dass so etwas derzeit ist (na ja, bei Natty unter am wenigsten möglich mitdbus
.Fazit: Ich denke, dies
gnome-panel
erschöpft zusammen mit der Technik die Möglichkeiten, Applets unter Unity in Natty leichtfertig auszuführen.quelle
Rhinote hat Tastaturkürzel
quelle
Für diejenigen, die noch nach einer ähnlichen, praktischen und unterstützenden Funktion für die Notizkategorie suchen, gibt es Indikator-Haftnotizen.
Installation:
Hoffe es wird helfen ... Viel Spaß!
quelle