画面の端にマウスカーソルを置く代わりに、キーを押すことでXFCEパネルを再表示できるようにしたいと思います。
Xubuntu 12.04を実行していますが、XFCE 4.10に更新しました
次のコマンドを実行し、それらを別々のスーパーキーの組み合わせにバインドします。
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
更新:12/09/2018:コメントで述べたように、上記のコマンドはサポートされなくなりました。
Xfce 4.12以降のバージョンのコマンド:
現在、次のコマンドを使用して、自動非表示プロパティを設定します。
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
コマンド値:
値「0」は、 'never'自動非表示に使用されます。値 '1'は 'intelligently'パネルを自動的に非表示にし、 '2'は値を 'always'自動非表示。
キー割り当ての設定:
これを行うには、[アプリケーション]メニュー-> [設定]-> [キーボード]-> [アプリケーションのショートカット]を選択するか、コマンドラインからxfce4-keyboard-settings
を実行します(Ctrl-Alt-t)。
最初のコマンドをバインドしました Super-u (パネルを「再表示」するため)。 2番目のコマンドについては、バインドしています Super-h (パネルを「隠す」ため)。
上記のコマンドでわかるように、動作は1つのパネルでのみ変更されます(この場合、panel-0は変更されています)。
パネルの状態が変わる間、わずかな遅延が発生する場合があります。
xte
およびxdotool
をSudo apt-get install xdotool xautomation
とともにインストールします
xdotool
を使用して、マウスのX、Y座標を見つけることができます。ターミナルタイプxdotool getmouselocation
を開き、パネルをアクティブにする場所にマウスを移動してEnterキーを押します。次のような出力が得られます。
findclient: 62914741
findclient: 6291474
x:1282 y:1079 screen:0 window:62914741
ここで重要なのは、x:1282 y:1079
です。これは、マウスのx、y座標を提供します。
ここでxte 'mousemove 1282 1079'
と入力します(1282 1079
を以前に取得した座標に置き換えます)。これで、マウスを好きな場所に移動できます。
xbindkeys
を使用して、このコマンドをキーボードのキーにバインドできます。リクエストに応じて指示を追加するか、Xubuntuのキーボード設定で設定できます。
編集:
@JQuigleyは「これはもう機能しません...」とコメントを指摘しました。
Kevinが言ったように、xfconfを使用できますが、私はこのようにします:
xfconf-query -c xfce4-panel -p /panels/panel-0/autohide -T
-T
は、true/false値を切り替えます。この方法で、同じキーを使用して非表示/再表示することができます。
より多くのオプションを取得するには:
xfconf-query --help
Kevinからの答えにコメントを付けたかったのです。しかし、私はここで新しいです、十分な評判..
上記のtopisaniのスクリプトは、xfce 4.12でも引き続き機能します。スクリプトのpanel-0
をpanel-1
またはpanel-2
などに変更することにより、ターゲットパネルを変更できます。変更する行が2行あることを忘れないでください。
編集:
コメントで指摘されているのは、自動非表示プロパティが別のものに変更され、-Tが新しいプロパティでは機能しないことです:/
それで、私はこれにだまされている間、私はすべてのパネルを同時に切り替えるために小さなRubyスクリプトを作りました。うまくいくようです。
#!/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
それはおそらくそれを行うための最良の方法ではなく、Rubyについてはあまり知らないので、気軽に火の中に放り込んでください! :P
誰かがそれを使用したい場合:
Rubyがインストールされていることを確認してください。
適切と思われる場所にファイルにコピーします(私は~/scripts/xfce/toogleautohide.rb
として私のものを持っています)。
実行可能にする
chmod +x path/to/your/script
私はパーティーに数年遅れていることを知っていますが、将来これを見るかもしれない人のために:新しいシステムで自動非表示を切り替えるbashスクリプトは、単にこれをどこかにテキストファイルに保存して実行しますchmod +x file/that/i/saved
および[設定]-> [キーボード]-> [ショートカット]でスクリプトをキーに設定します。
#!/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