Chciałbym móc odkryć panel Xfce, naciskając klawisz zamiast umieszczać kursor myszy na krawędzi ekranu.
Używam Xubuntu 12.04, ale zaktualizowałem do Xfce 4.10
Chciałbym móc odkryć panel Xfce, naciskając klawisz zamiast umieszczać kursor myszy na krawędzi ekranu.
Używam Xubuntu 12.04, ale zaktualizowałem do Xfce 4.10
Odpowiedzi:
Wykonaj następujące polecenia i przypisz je do oddzielnych kombinacji Super-kluczy:
Polecenia dla Xfce 4.12 do Xfce 4.14:
Do ustawienia właściwości automatycznego ukrywania używane są teraz następujące polecenia:
xfconf-query -c xfce4-panel -p /panels/panel-0/autohide-behavior -s 0
xfconf-query -c xfce4-panel -p /panels/panel-0/autohide-behavior -s 1
xfconf-query -c xfce4-panel -p /panels/panel-0/autohide-behavior -s 2
Polecenia dla Xfce 4.10:
xfconf-query -c xfce4-panel -p /panels/panel-0/autohide -s false
xfconf-query -c xfce4-panel -p /panels/panel-0/autohide -s true
Aktualizacja: 12/09/2018 : Jak wspomniano w komentarzach, powyższe polecenia nie są już obsługiwane.
Wartości poleceń:
Wartość „0” jest używana do automatycznego ukrywania „nigdy” . Wartość „1” służy do „inteligentnego” automatycznego ukrywania panelu, a „2” służy do ustawienia wartości „zawsze” automatycznego ukrywania.
Ustawianie przypisań klawiszy:
Można to zrobić, wybierając kolejno: Menu aplikacji → Ustawienia → Klawiatura → Skróty aplikacji lub uruchamiając xfce4-keyboard-settings
z wiersza poleceń ( Ctrl+ Alt+ t).
Pierwsze polecenie związałem z Super+ u(aby „odkryć” panel). W przypadku drugiego polecenia wiążę Super+ h(aby „ukryć” panel).
Jak widać w powyższych poleceniach, zachowanie zmienia się tylko na jednym panelu (w tym przypadku panel-0 jest modyfikowany).
Możesz zauważyć niewielkie opóźnienie, gdy panel zmienia stan.
Więcej szczegółów na temat xfconf-query
polecenia można znaleźć w dokumentacji Xfce lub z tego wątku na forum Xfce .
xconf command not found
błąd. Jakiej wersji Xfce używasz?
xfconf
: nie xconf
. ;-) Polecenie jest dostępne od xfce 4.6. Używam xfce 4.10 z tego PPA ppa.launchpad.net/xubuntu-dev/xfce-4.10/ubuntu
toggle
opcji w Xfce 4.10 i po prostu przypisać jedno polecenie do jednego klawisza: iexfconf-query -c xfce4-panel -p /panels/panel-0/autohide -T
xfconf-query -c xfce4-panel -p /panels/panel-0/autohide-behavior -s 0
i xfconf-query -c xfce4-panel -p /panels/panel-0/autohide-behavior -s 2
.
Zainstaluj xte
i za xdotool
pomocąsudo apt-get install xdotool xautomation
Możesz użyć xdotool
do znalezienia współrzędnych x, y myszy. Otwórz typ terminala, xdotool getmouselocation
a następnie przesuń mysz w miejsce, w którym uaktywni panel i naciśnij Enter. Otrzymasz dane wyjściowe, takie jak:
findclient: 62914741
findclient: 6291474
x:1282 y:1079 screen:0 window:62914741
Ważne jest tutaj x:1282 y:1079
:, która daje nam współrzędne x, y myszy.
Teraz wpisz xte 'mousemove 1282 1079'
(zamieniając 1282 1079
współrzędne, które otrzymałeś wcześniej). To powinno przesunąć mysz w dowolne miejsce.
Możesz użyć, xbindkeys
aby powiązać to polecenie z klawiszem na klawiaturze. Mogę dodać instrukcje na żądanie lub możesz ustawić je w ustawieniach klawiatury Xubuntu.
Edytować:
@JQuigley zwrócił uwagę „To już nie działa ...” patrz komentarze.
Jak powiedział Kevin, możesz użyć xfconf, ale zrobiłbym to w ten sposób:
xfconf-query -c xfce4-panel -p /panels/panel-0/autohide -T
-T
Przełącza wartość true / false. W ten sposób możesz użyć tego samego klucza, aby ukryć / odkryć.
Aby uzyskać więcej opcji:
xfconf-query --help
Chciałem skomentować odpowiedź Kevina, ponieważ dzięki temu znalazłem się na dobrej drodze. Ale jestem tu nowy, za mało reputacji ...
Powyższy skrypt topisani nadal działa dobrze w Xfce 4.12. Możesz zmienić panel docelowy, zmieniając panel-0
w skrypcie na panel-1
lub panel-2
itd. Nie zapominaj, że są dwie linie do zmiany.
Wiem, że jestem kilka lat spóźniony na imprezę, ale tylko dla każdego, kto może to zobaczyć w przyszłości: Oto skrypt bash, który przełącza automatyczne ukrywanie w nowym systemie, po prostu zapisz go gdzieś w pliku tekstowym, uruchom chmod +x file/that/i/saved
i ustaw skrypt na klawisz w Ustawienia -> Klawiatura -> Skróty.
#!/bin/bash
cur=$(xfconf-query -c xfce4-panel -p /panels/panel-0/autohide-behavior)
if [[ cur -eq 0 ]]; then
nxt=1
else
nxt=0
fi
xfconf-query -c xfce4-panel -p /panels/panel-0/autohide-behavior -s $nxt
EDYTOWAĆ:
W komentarzu zaznaczono, że właściwość autohide została zmieniona na coś innego, a -T nie działa z nową: /
Więc, gdy wygłupiałem się z tym, stworzyłem mały rubinowy skrypt, aby przełączać wszystkie panele jednocześnie. Wydaje się, że działa.
#!/usr/bin/env ruby
#Toggle all panels' autohide property in xfce4
# fede s.
out = `xfconf-query -c xfce4-panel -l`.split
out.inject(Array.new) {|res, val|
m= /panel-([0-9]+)/.match(val); #get the panel numbers
if m then res.push(m[1]) end; #add only if it matches
res}.sort.uniq.each do #filter duplicates
| num |
`xfconf-query -c xfce4-panel -p /panels/panel-#{num}/autohide -T` #here is the command that will repeat for every panel found
end
Prawdopodobnie nie jest to najlepszy sposób, aby to zrobić, a tak naprawdę niewiele wiem o rubinie, więc możesz rzucić mnie w ogień! : P
Jeśli ktoś chce go użyć:
upewnij się, że masz zainstalowany rubin.
skopiuj go do pliku, gdziekolwiek uznasz za stosowne (mam mój as ~/scripts/xfce/toogleautohide.rb
).
Zrób to
chmod +x path/to/your/script