Kolejność widżetów rozszerzeń powłoki wydaje się losowa, jak mogę to zmienić? Chcę na przykład mieć informacje o dacie / godzinie po lewej stronie.
Mój panel powłoki:
Kolejność widżetów rozszerzeń powłoki wydaje się losowa, jak mogę to zmienić? Chcę na przykład mieć informacje o dacie / godzinie po lewej stronie.
Mój panel powłoki:
Odpowiedzi:
Na początek musisz znaleźć odpowiedni plik rozszerzenia, które chcesz zmienić.
Zwykle można go znaleźć tutaj: ~/.local/share/gnome-shell/extensions
.
Jeśli rozszerzenie zostało zainstalowane za pomocą menedżera pakietów, możesz je znaleźć tutaj: /usr/share/gnome-shell/extensions/
(Dzięki AB )
Następnie przejdź do katalogu rozszerzenia i otwórz „ extension.js
” dowolnym edytorem tekstu.
Przejdź do wiersza z: function enable()
(użyj funkcji wyszukiwania w edytorze - jeśli nie możesz go znaleźć, przejdź do sekcji Aktualizacja poniżej).
Wewnątrz tej funkcji zwykle jest linia Main.panel.addToStatusArea('NAME', _OTHERNAME, NUMBER, LEFT/CENTER/RIGHT);
(ponownie: jeśli nie możesz jej znaleźć, przejdź do Aktualizuj ). Może się zdarzyć, że brakuje dwóch ostatnich parametrów ( NUMBER
i POSITION
); wygląda tak: Main.panel.addToStatusArea('NAME', _OTHERNAME);
(Nie martw się! Twój komputer interpretuje krótszą wersję z: ('NAME', _OTHERNAME, 0, right);
Możesz dodać brakujące parametry. Ale zawsze w pokazanej kolejności !!! )
Do POSITION
definiuje gdzie na panelu ikona powinna być. Istnieją trzy obszary: lewy , środkowy i prawy . Prawdopodobnie nie chcesz zmieniać tej wartości, ale możesz to zrobić. Oto trzy możliwe stany dla POSITION
panelu:
------------------------------------------------------------------
Activities Date Other icons
------------------------------------------------------------------
left center right
Najważniejszą wartością, którą prawdopodobnie chcesz zmienić, jest NUMBER
. Określa kolejność ikon w pod-panelach. Możliwe wartości to:
0 : Nie obchodzi mnie, gdzie jest ikona.
wartości ujemne : pozycja; zaczynając od prawej strony (może być ważne, ponieważ wszystkie ikony rozszerzeń są ładowane po ikonach systemowych)
wartości dodatnie : pozycja; zaczynając od lewej strony. Wyższe wartości zostaną umieszczone dalej po prawej stronie.
Musisz bawić się tymi wartościami we wszystkich swoich rozszerzeniach, ponieważ te same wartości są ze sobą w konflikcie (dwa różne rozszerzenia na pozycji 2 nie mają żadnego sensu). A czasem sprzeczne są nawet następujące wartości.
Przy każdej zmianie wartości pamiętaj o zapisaniu pliku. Następnie naciśnij Alt+ F2, wpisz ri Enter. Panel odświeży się z nowo zamówionymi ikonami. Jest to szybka opcja zabawy z tymi wartościami.
Na koniec cytat z Mathematical Coffee :
Użyj Main.panel.addToStatusArea (unikatowa_nazwa_indukatora, identyfikatora, pozycji, pola), aby dodać SystemStatusButton lub PanelButton do panelu. Obsługuje to dodawanie menu do menedżera menu (pole to Main.panel ._ {lewy, prawy, środkowy} Pole, pomijanie argumentu pola domyślnie daje prawe pole, a rezygnacja z pozycji daje pozycję 0). Jeśli twój przycisk jest tylko ButtonBox (tj. Bez menu), trzymaj się. _ {lewo, prawo, środek} Box.insert_child_at_index.
Daj mi znać, jeśli masz jakieś problemy z tym podejściem.
Rozejrzałem się i zauważyłem, że ten sposób nie działa dla wszystkich rozszerzeń (głównie tylko dla prostych / nowych rozszerzeń). Często stosowanym rozszerzeniem w tym przypadku jest „monitor systemu”. Sposób modyfikacji pozycji ikon powinien być (ogólnie) taki sam (nie testowałem tego. Upewnij się, że utworzyłeś plik kopii zapasowej) . Istnieją jednak pewne różnice dla „monitora systemu”:
var enable = function ()
. Dlatego może być lepiej wyszukać słowo enable
w pliku.Nazywa się miejsce, w którym określa się pozycję ikon Main.panel._addToPanelBox('system-monitor', tray, 1, panel);
. Zmiana liczby powinna mieć taki sam efekt, jak opisano powyżej. Aby zmienić cały obszar, masz dwie opcje:
Zmieniając tę samą linię na Main.panel._addToPanelBox('system-monitor', tray, 1, Main.panel._rightBox);
(Uwaga: Pozycja w menu ustawień rozszerzenia nie będzie działać).
Lub zmieniając linię let panel = Main.panel._rightBox;
(ponownie użyj funkcji wyszukiwania) do żądanej pozycji ( _leftBox, _centerBox, _rightBox ).
(Te kroki można zastosować do dowolnego innego rozszerzenia. Ale będą nieco inne nazwy. Ale nadal: Wspólny sposób został opisany w mojej pierwszej próbie tej odpowiedzi)
Cała procedura w pigułce:
Wyszukaj odpowiedni plik. Następnie wyszukaj enable
wewnątrz tego pliku. Następnie wyszukaj coś podobnego Main.panel...
i zmień wartości (dość samo wyjaśniające).
I w końcu zauważyłem, że wspomniałeś o panelu czasu. Nie znalazłem dobrego sposobu na zmianę jego pozycji, ale oto coś innego:
Masz zainstalowany „monitor systemu”. To dobrze :)
Otwórz odpowiednio extension.js
i zmień słowo „prawo” na „lewo” w tych dwóch wierszach:
Main.panel._addToPanelBox('dateMenu', dateMenu, -1, Main.panel._rightBox);
i Main.panel._rightBox.insert_child_at_index(dateMenu.actor, -1);
.
Na koniec musisz sprawdzić „Przenieś zegar” w ustawieniach tego rozszerzenia. Proszę bardzo! Nie testowałem tego, ale powinno działać. Jeśli nie, napisz komentarz :)
Ahh! Zapomniałem wspomnieć: Za każdym razem, gdy włączasz wartości, zapisz plik i odśwież panel za pomocą Alt+ F2- type r- hit Enter. I pamiętaj, aby utworzyć pliki kopii zapasowej !!! :RE
/usr/share/gnome-shell/extensions/
Rozszerz panel Menu rozszerzenie pozwoli Ci uporządkować wskaźników z „Taca Offset” funkcji i zakładki wskaźników. Po zainstalowaniu rozszerzenia przejdź do ustawień, aby poprawić wskaźniki. Szczęśliwy OCDing!
Istnieje również łatwiejszy sposób otwierania gnome-tweak-tool
, przeglądania karty Rozszerzenia , a następnie wyłączania i ponownego włączania rozszerzeń. W ten sposób ikony zostaną przesunięte w lewo.
off
i on
...?