Pertanyaan Dapatkah saya memperlihatkan panel di XFCE 4.10 menggunakan tombol tekan daripada menggunakan kursor mouse untuk menampilkannya?


Saya ingin dapat memperlihatkan panel XFCE dengan menekan sebuah tombol alih-alih menempatkan kursor mouse di tepi layar.

Saya menjalankan Xubuntu 12.04 tetapi diperbarui ke XFCE 4.10


13
2018-01-18 00:39


asal


hmmm .. saya rasa saya bisa datang dengan sesuatu yang mau pindah mouse Anda di sana pada tombol tekan. Apakah itu yang Anda inginkan? - Seth♦
@ iSeth - jika tidak ada yang lebih baik maka ya. Tetapi secara optimal saya ingin dapat menekan tombol dan melihat panel di mana pun kursor berada ... - Borsook


Jawaban:


Ambil dua perintah berikut dan ikat mereka untuk memisahkan kombinasi Super-key:

xfconf-query -c xfce4-panel -p /panels/panel-0/autohide -s false
xfconf-query -c xfce4-panel -p /panels/panel-0/autohide -s true

Ini dapat dilakukan dengan memilih, Menu Aplikasi -> Pengaturan -> Keyboard, atau dengan menjalankan xfce4-keyboard-settings dari baris perintah (Ctrl-Alt-t.

Saya telah mengikat perintah pertama Super-kamu (to 'unhide' panel). Untuk perintah kedua, saya mengikat Super-h (untuk 'menyembunyikan' panel).

Seperti yang Anda lihat pada perintah di atas, perilaku hanya diubah pada satu panel (Dalam hal ini, panel-0 sedang dimodifikasi).

Anda akan melihat sedikit penundaan saat panel berubah status.

Sumber. Detail lebih lanjut tentang xfconf perintah dapat ditemukan sini.


8
2018-01-23 04:00



Hmmm, saya mencoba dan mendapatkannya xconf command not found kesalahan. Versi Xfce apa yang Anda gunakan? - Seth♦
@ iSeth Perintahnya adalah xfconftidak xconf. ;-) Perintah telah tersedia sejak xfce 4.6. Saya menjalankan xfce 4.10 dari PPA ini ppa.launchpad.net/xubuntu-dev/xfce-4.10/ubuntu - Kevin Bowen
Ah, kananmu. Bekerja sekarang. +1 - Seth♦
Anda juga bisa menggunakan toggle pilihan di Xfce 4.10 dan hanya mengikat satu perintah ke satu kunci: yaitu xfconf-query -c xfce4-panel -p /panels/panel-0/autohide -T
Hanya untuk memperbarui pada versi xfce4-panel yang lebih baru. Panel xfce4 terbaru tidak memiliki properti 'autohide'. Alih-alih ada 'autohide-behavior' dan tidak lagi boolean, tetapi nilai numerik 0, 1, atau 2. 0: tidak pernah sembunyi, 1: hide cerdas, 2: selalu bersembunyi. Untuk mencapai hasil yang sama, Anda bisa menggunakannya xfconf-query -c xfce4-panel -p /panels/panel-0/autohide-behavior -s 0 dan xfconf-query -c xfce4-panel -p /panels/panel-0/autohide-behavior -s 2. - Richard Wong


Coba solusi ini:

Memasang xte dan xdotool dengan sudo apt-get install xdotool xautomation 

Kamu dapat memakai xdotool untuk menemukan koordinat x, y dari mouse. Buka tipe terminal xdotool getmouselocation kemudian gerakkan mouse ke suatu tempat di mana ia akan mengaktifkan panel dan tekan enter. Anda akan mendapatkan beberapa hasil seperti:

findclient: 62914741
findclient: 6291474  
x:1282 y:1079 screen:0 window:62914741  

Yang penting di sini adalah: x:1282 y:1079, yang memberi kita koordinat x, y dari mouse.

Sekarang ketik xte 'mousemove 1282 1079' (mengganti 1282 1079 dengan koordinat yang Anda dapatkan sebelumnya). Itu harus menggerakkan mouse ke tempat yang Anda inginkan.

Kamu dapat memakai xbindkeys untuk mengikat perintah ini ke kunci pada keyboard. Saya dapat menambahkan instruksi sesuai permintaan atau Anda dapat mengaturnya di pengaturan keyboard Xubuntu.


4
2018-01-23 02:34





Edit:

@JQuigley menunjukkan "Ini tidak lagi berfungsi ..." lihat komentar.


Seperti kata Kevin, Anda dapat menggunakan xfconf, tetapi saya akan melakukannya dengan cara ini:

xfconf-query -c xfce4-panel -p /panels/panel-0/autohide -T

Itu -T matikan nilai benar / salah. Dengan cara ini, Anda dapat menggunakan kunci yang sama untuk menyembunyikan / memperlihatkan.

Untuk mendapatkan opsi lain, lakukan:

xfconf-query --help

Saya ingin memberikan komentar atas jawaban Kevin, karena itulah yang membuat saya berada di jalur yang benar. Tapi aku baru di sini, tidak cukup reputasi ..


1
2018-01-26 03:02



Ini tidak lagi berhasil sayangnya; properti autohide tampaknya telah diganti dengan autohide-behavior, yang merupakan integer yang dapat 0, 1, atau 2. Tetapi pendekatan dua-kunci masih berfungsi. Saya juga membayangkan seseorang dapat menulis skrip beralih kecil untuk semacam mungkin menyimpan negara dalam file atau sesuatu dan memungkinkan strategi satu-kunci untuk bekerja lagi. - J Quigley
@JQuigley oh, terima kasih sudah menunjukkannya. Saya tidak di xfce lagi ... Jika itu yang terjadi, saya akan pergi dengan skrip untuk membaca nilai saat ini dan mengubahnya sesuai (file eksternal rentan terhadap kesalahan). - fede s.


skrip topisani di atas masih berfungsi dengan baik di xfce 4.12. Anda dapat mengubah panel target dengan mengubah panel-0 dalam skrip untuk panel-1 atau panel-2 dll. Jangan lupa bahwa ada dua jalur untuk berubah.


1
2017-08-22 21:05





Saya tahu saya beberapa tahun terlambat ke pesta, tetapi hanya untuk siapa saja yang mungkin melihat ini di masa depan: Berikut ini adalah skrip bash yang mengubah autohide di sistem baru, cukup simpan ini di file teks di suatu tempat, jalankan chmod +x file/that/i/saved dan mengatur skrip ke kunci dalam Pengaturan -> Keyboard -> Pintasan.

#!/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

0
2018-01-19 22:57





EDIT:

Sudah ditunjukkan dalam komentar bahwa properti autohide telah diubah menjadi sesuatu yang lain, dan -T tidak bekerja dengan yang baru: /


Jadi, ketika saya bermain-main dengan ini, saya membuat skrip ruby ​​kecil untuk mengganti semua panel pada saat yang bersamaan. Sepertinya berhasil.

#!/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

Ini mungkin bukan cara terbaik untuk melakukannya, dan saya tidak benar-benar tahu banyak tentang rubi, jadi jangan ragu untuk melemparkan saya ke dalam api! : P

Jika Seseorang ingin menggunakannya:

  1. pastikan Anda memasang ruby.

  2. salin ke file di mana pun Anda mau (saya punya saya sebagai ~/scripts/xfce/toogleautohide.rb).

  3. Jadikan itu bisa dieksekusi

    chmod +x path/to/your/script
    

0
2018-01-26 03:53