Wie kann ich Gnome3-Shell-Erweiterungen oben bestellen?


18

Die Reihenfolge der Shell-Erweiterungs-Widgets scheint zufällig zu sein. Wie kann ich sie ändern? Ich möchte zum Beispiel die Datums- / Uhrzeitinformationen auf der linken Seite haben.

Mein Shell Panel:

Mein Shellpanel


Gute Frage. Ich fürchte, es ist fast unmöglich, ohne seltsame CSS-Dateien zu bearbeiten. Dies ist eines der Dinge, die meiner Meinung nach zeigen, dass die ganze Erweiterung ein nachträglicher Einfall war.
Rmano

Einige Erweiterungen wie extensions.gnome.org/extension/584/taskbar ermöglichen es Ihnen, zu platzieren, wo Sie es setzen ... (möglicherweise falsche Erweiterung - eine der Taskleistenerweiterungen ...)
Wilf

Ich würde gerne eine Antwort darauf finden
Dieser Brasilianer

@ThatBrazilianGuy Than love the answer :)
AB

@klausi Ich habe meine Antwort aktualisiert. Ich hoffe, es passt zu Ihren Bedürfnissen :)
Jibbow

Antworten:


16

Normalerweise:

Zunächst müssen Sie die entsprechende Datei der Erweiterung finden, die Sie ändern möchten.
Sie können es in der Regel finden Sie hier: ~/.local/share/gnome-shell/extensions.
Wenn die Erweiterung über den Paketmanager installiert wurde, finden Sie sie hier: /usr/share/gnome-shell/extensions/(Dank an AB )

Gehen Sie dann in das Verzeichnis der Erweiterung und öffnen Sie " extension.js" mit einem beliebigen Texteditor.

Gehen Sie zur Zeile mit: function enable()(Verwenden Sie die Suchfunktion in Ihrem Editor. Wenn Sie sie nicht finden, gehen Sie weiter unten zum Abschnitt Aktualisieren .)
In dieser Funktion befindet sich normalerweise eine Zeile Main.panel.addToStatusArea('NAME', _OTHERNAME, NUMBER, LEFT/CENTER/RIGHT);(erneut: Wenn Sie sie nicht finden können, gehen Sie zu Update ). Es kann vorkommen, dass die letzten beiden Parameter ( NUMBERund POSITION) fehlen. sieht so aus: Main.panel.addToStatusArea('NAME', _OTHERNAME);
(Keine Sorge! Ihr Computer interpretiert die kürzere Version mit: ('NAME', _OTHERNAME, 0, right);Fühlen Sie sich frei, die fehlenden Parameter hinzuzufügen. Aber immer in der gezeigten Reihenfolge !!! )

Die POSITIONlegt fest , wo auf der Platte sollte das Symbol sein. Es gibt drei Bereiche: links , mittig und rechts . Sie möchten diesen Wert wahrscheinlich nicht ändern, können dies aber gerne tun. Hier sind die drei möglichen Zustände für POSITIONauf dem Panel:

------------------------------------------------------------------
Activities                 Date                        Other icons
------------------------------------------------------------------
   left                   center                          right 

Der wichtigere Wert, den Sie wahrscheinlich ändern möchten, ist NUMBER. Hiermit wird die Reihenfolge der Symbole in den Unterfenstern festgelegt. Mögliche Werte sind:

  • 0 : Es ist mir egal, wo sich das Symbol befindet.

  • negative Werte : Position; von der rechten Seite beginnend (kann wichtig sein, da alle Erweiterungssymbole nach den Systemsymbolen geladen werden)

  • positive Werte : Position; von der linken Seite aus. Höhere Werte befinden sich weiter rechts.

Sie müssen mit diesen Werten in all Ihren Erweiterungen herumspielen, weil dieselben Werte in Konflikt miteinander stehen (zwei verschiedene Erweiterungen auf Position 2 ergeben keinen Sinn). Und manchmal widersprechen sich sogar folgende Werte.

Stellen Sie bei jeder Änderung des Werts sicher, dass die Datei gespeichert wird. Dann drücke Alt+ F2, tippe rund Enter. Das Panel wird mit den neu angeordneten Symbolen aktualisiert. Dies ist eine schnelle Option, um mit diesen Werten herumzuspielen.


Zum Schluss noch ein Zitat aus Mathematical Coffee :

Verwenden Sie Main.panel.addToStatusArea (eindeutiger_Name_des_Anzeigers, Kennzeichners, Position, Feld), um dem Panel einen SystemStatusButton oder PanelButton hinzuzufügen. Dies behandelt das Hinzufügen seines Menüs zum Menü-Manager für Sie (Box ist Main.panel ._ {left, right, center} Box, das Weglassen des Box-Arguments gibt standardmäßig die rechte Box und das Auslassen der Position gibt die Position 0). Wenn Ihre Schaltfläche nur eine ButtonBox ist (dh kein Menü), bleiben Sie bei. _ {left, right, center} Box.insert_child_at_index.

Bitte lassen Sie mich wissen, wenn Sie Probleme mit diesem Ansatz hatten.


Aktualisieren:

Ich habe mich umgesehen und festgestellt, dass dieser Weg nicht für alle Erweiterungen funktioniert (meist nur für einfache / neue Erweiterungen). Eine in diesem Fall häufig verwendete Erweiterung ist "Systemmonitor". Die Art und Weise, wie die Position der Symbole geändert wird, sollte (im Allgemeinen) dieselbe sein (ich habe es nicht getestet. Erstellen Sie daher unbedingt eine Sicherungsdatei) . Es gibt jedoch einige Unterschiede für "Systemmonitor":

  1. Die zu suchende Funktion wird aufgerufen var enable = function (). Es ist daher möglicherweise besser, nach dem Wort enablein der Datei zu suchen .
  2. Die Stelle, an der die Position der Symbole definiert ist, wird aufgerufen Main.panel._addToPanelBox('system-monitor', tray, 1, panel);. Das Ändern der Nummer sollte den gleichen Effekt haben wie oben beschrieben. Um den gesamten Bereich zu ändern, haben Sie zwei Möglichkeiten:

    • Durch Ändern derselben Zeile in Main.panel._addToPanelBox('system-monitor', tray, 1, Main.panel._rightBox);(Hinweis: Die Position im Einstellungsmenü der Nebenstelle funktioniert nicht mehr).

    • Oder ändern Sie die Zeile let panel = Main.panel._rightBox;(verwenden Sie erneut die Suchfunktion) an die gewünschte Position ( _leftBox, _centerBox, _rightBox ).

(Diese Schritte können auf jede andere Erweiterung angewendet werden. Es gibt jedoch leicht abweichende Namen. Dennoch: Der übliche Weg wurde in meinem ersten Versuch für diese Antwort beschrieben.)


Der gesamte Ablauf auf den Punkt gebracht:

Suchen Sie nach der entsprechenden Datei. Suchen Sie dann enablein dieser Datei nach. Dann suchen Sie nach etwas Ähnlichem Main.panel...und ändern Sie die Werte (ziemlich selbsterklärend).


Und schließlich ist mir aufgefallen, dass Sie das Zeitfenster erwähnt haben. Ich habe keine gute Möglichkeit gefunden, seine Position zu ändern, aber hier ist noch etwas:

Sie haben "Systemmonitor" installiert. Das ist gut :)
Öffne das entsprechende extension.jsund ändere das Wort "rechts" in "links" in diesen beiden Zeilen:
Main.panel._addToPanelBox('dateMenu', dateMenu, -1, Main.panel._rightBox);und Main.panel._rightBox.insert_child_at_index(dateMenu.actor, -1);.
Zuletzt müssen Sie in den Einstellungen dieser Erweiterung "Uhr verschieben" ankreuzen. Es geht los! Ich habe es nicht getestet, aber es sollte funktionieren. Wenn nicht, schreibe einen Kommentar :)

Ahh! Vergessen zu erwähnen: Jedes Mal, wenn Sie einen der Werte ändern, speichern Sie die Datei und aktualisieren Sie das Panel mit Alt+ F2- Typ r- Treffer Enter. Und stellen Sie sicher, Backup-Dateien zu erstellen !!! : D


Wenn Ihnen die Antwort gefällt, klicken Sie einfach auf das kleine Grau links neben der Antwort und verwandeln Sie sie in ein wunderschönes Grün. Wenn Ihnen die Antwort gefällt, klicken Sie auf das kleine graue Häkchen und den kleinen Aufwärtspfeil ... Wenn Sie weitere Fragen haben, gehen Sie zu askubuntu.com/questions/ask
AB


1
Erweiterungen über Paket - Manager installiert sind in platziert/usr/share/gnome-shell/extensions/
AB

1
Wow! Sie sollten ein paar Upvotes nur für die Mühe bekommen! ;-)
Fabby

2017 und immer noch unmöglich, ohne Ihr System zu gefährden. Erstaunlich.
HörmannHH

2

Mit der Menüerweiterung des Bedienfelds " Erweitern" können Sie Indikatoren mit der Funktion "Fachversatz" und der Registerkarte "Indikatoren" sortieren. Gehen Sie nach der Installation der Erweiterung in die Einstellungen, um Ihre Indikatoren zu optimieren. Fröhliches OCDing!


Nicht ganz das, wonach ich gesucht habe, aber trotzdem ein toller Tipp. Diese Erweiterung behebt den Kalender im mittleren und gruppierten Statusmenü, der mich immer nervt! :)
Cas

-2

Es gibt auch eine einfachere Möglichkeit gnome-tweak-tool, Erweiterungen zu öffnen , zu der Registerkarte Erweiterungen zu navigieren und sie dann wieder zu aktivieren und zu deaktivieren. Dadurch werden die Symbole nach links verschoben.


Was drehen offund on...?
George Udosen

1
Dadurch werden Erweiterungen nur für diese Sitzung bestellt.
QkiZ
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.