ฉันสามารถยกเลิกการซ่อนแผงใน XFCE 4.10 โดยใช้การกดปุ่มแทนที่จะใช้การเลื่อนเคอร์เซอร์ของเมาส์เพื่อเปิดเผยหรือไม่


17

ฉันต้องการยกเลิกการซ่อนแผง XFCE ด้วยการกดปุ่มแทนการวางเคอร์เซอร์เมาส์ที่ขอบของหน้าจอ

ฉันใช้ Xubuntu 12.04 แต่อัปเดตเป็น XFCE 4.10


อืมฉันคิดว่าฉันสามารถคิดอะไรบางอย่างที่จะเลื่อนเมาส์ของคุณไปที่นั่นด้วยการกดปุ่ม คุณจะทำในสิ่งที่คุณต้องการหรือไม่
เซท

@ iSeth - หากไม่มีสิ่งใดดีไปกว่านี้แล้วใช่ แต่ดีที่สุดฉันต้องการที่จะสามารถที่จะกดปุ่มและดูแผงโดยไม่คำนึงถึงที่เคอร์เซอร์คือ ...
Borsook

คำตอบ:


10

ใช้คำสั่งต่อไปนี้และผูกไว้เพื่อแยกการรวมกันของ Super-key:

คำสั่งสำหรับ 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' ถูกใช้สำหรับ'ไม่เคย'ซ่อนอัตโนมัติ ค่า '1' ใช้สำหรับ'ซ่อนแผง'โดยอัตโนมัติและใช้ '2' เพื่อตั้งค่าเป็น'เสมอ'ซ่อนอัตโนมัติ

การตั้งค่าการเชื่อมโยงคีย์:

สิ่งนี้สามารถทำได้โดยการเลือกเมนูแอปพลิเคชัน -> การตั้งค่า -> คีย์บอร์ด -> ทางลัดแอปพลิเคชันหรือโดยเรียกใช้xfce4-keyboard-settingsจากบรรทัดคำสั่ง ( Ctrl- Alt- t)

ฉันได้ผูกคำสั่งแรกกับSuper- u(เพื่อ 'ยกเลิกการซ่อน' พาเนล) สำหรับคำสั่งที่สองฉันกำลังผูกพันSuper- h(เพื่อ 'ซ่อน' พาเนล)

ดังที่คุณเห็นในคำสั่งด้านบนพฤติกรรมจะเปลี่ยนเฉพาะในพาเนลเดียว (ในกรณีนี้พาเนล -0 กำลังถูกแก้ไข)

คุณอาจสังเกตเห็นความล่าช้าเล็กน้อยในขณะที่แผงเปลี่ยนสถานะ

แหล่ง รายละเอียดเพิ่มเติมเกี่ยวกับxfconfคำสั่งที่สามารถพบได้ที่นี่


อืมฉันพยายามและได้รับxconf command not foundข้อผิดพลาด คุณใช้ Xfce รุ่นใด
เซท

1
@iSeth คำสั่งคือไม่xfconf xconf;-) คำสั่งนั้นมีให้ใช้ตั้งแต่ xfce 4.6 ฉันใช้ xfce 4.10 จาก PPA นี้ppa.launchpad.net/xubuntu-dev/xfce-4.10/ubuntu
Kevin Bowen

อ่าใช่มั้ย ใช้งานได้ทันที +1
เซท

4
นอกจากนี้คุณยังสามารถใช้toggleตัวเลือกใน Xfce 4.10 และเพียงผูกคำสั่งเดียวกับหนึ่งคีย์: iexfconf-query -c xfce4-panel -p /panels/panel-0/autohide -T

3
เพียงเพื่ออัปเดตบนแผง xfce4 รุ่นที่ใหม่กว่า แผง xfce4 รุ่นล่าสุดไม่มีคุณสมบัติ 'autohide' แต่จะมี 'พฤติกรรมซ่อนเร้น' และไม่มีบูลีนอีกต่อไป แต่มีค่าตัวเลขเป็น 0, 1 หรือ 2 0: ไม่เคยซ่อน, 1: ซ่อนอัจฉริยะ, 2: ซ่อนอยู่เสมอ เพื่อให้บรรลุผลเดียวกันคุณสามารถใช้และ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 2
Richard Wong

4

ลองวิธีแก้ปัญหานี้:

ติดตั้ง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


2

แก้ไข:

@JQuigley ชี้ให้เห็น "สิ่งนี้ใช้ไม่ได้อีกต่อไป ... " ดูความคิดเห็น


ตามที่เควินพูดคุณสามารถใช้ xfconf ได้ แต่ฉันจะทำเช่นนี้:

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

-Tสลับจริงค่า / เท็จ ด้วยวิธีนี้คุณสามารถใช้ปุ่มเดียวกันเพื่อซ่อน / เลิกซ่อน

ในการรับตัวเลือกเพิ่มเติมให้ทำดังนี้

xfconf-query --help

ฉันต้องการแสดงความคิดเห็นต่อคำตอบจากเควินเพราะมันเป็นสิ่งที่ทำให้ฉันไปถูกทาง แต่ฉันใหม่ที่นี่ชื่อเสียงไม่เพียงพอ ..


สิ่งนี้ไม่ได้ผลอีกต่อไปแล้ว ดูเหมือนว่าคุณสมบัติ autohide นั้นถูกแทนที่ด้วย autohide-behavior ซึ่งเป็นจำนวนเต็มที่สามารถเป็น 0, 1 หรือ 2 แต่วิธีการสองคีย์ยังคงใช้งานได้ นอกจากนี้ฉันคิดว่าคน ๆ หนึ่งสามารถเขียนสคริปต์สลับบางอย่างเพื่อเก็บสถานะไว้ในไฟล์หรือบางสิ่งและอนุญาตให้ใช้กลยุทธ์แบบคีย์เดียวเพื่อทำงานอีกครั้ง
J Quigley

@JQuigley โอ้ขอบคุณสำหรับการชี้ให้เห็น ฉันไม่ได้อยู่ใน xfce อีกต่อไป ... หากเป็นกรณีนี้ฉันจะไปพร้อมกับสคริปต์เพื่ออ่านค่าปัจจุบันและเปลี่ยนแปลงตามนั้น (ไฟล์ภายนอกมีแนวโน้มที่จะเกิดข้อผิดพลาด)
fede s

2

สคริปต์ของ topisani ด้านบนยังคงทำงานได้ดีใน xfce 4.12 คุณสามารถเปลี่ยนพาเนลเป้าหมายโดยเปลี่ยนpanel-0ในสคริปต์เป็นpanel-1หรือpanel-2อื่น ๆ อย่าลืมว่ามีสองบรรทัดที่จะเปลี่ยน


1

ฉันรู้ว่าฉันมางานปาร์ตี้ไม่กี่ปี แต่สำหรับใครก็ตามที่อาจเห็นสิ่งนี้ในอนาคต: นี่คือสคริปต์ทุบตีที่สลับการซ่อนอัตโนมัติในระบบใหม่เพียงบันทึกสิ่งนี้ในไฟล์ข้อความที่ใดที่หนึ่งเรียกใช้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

0

แก้ไข:

มีการชี้ให้เห็นในความคิดเห็นว่าคุณสมบัติการซ่อนอัตโนมัติถูกเปลี่ยนเป็นอย่างอื่นและ -T ไม่ทำงานกับอันใหม่: /


ดังนั้นในขณะที่ฉันหลงกลกับสิ่งนี้ฉันทำสคริปต์ทับทิมเล็กน้อยเพื่อสลับแผงทั้งหมดในเวลาเดียวกัน ดูเหมือนว่าจะทำงาน

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

อาจไม่ใช่วิธีที่ดีที่สุดในการทำและฉันไม่รู้เกี่ยวกับทับทิมมากนักดังนั้นโปรดโยนฉันลงในกองไฟ! : P

หากมีคนต้องการใช้:

  1. ตรวจสอบให้แน่ใจว่าคุณติดตั้งทับทิมแล้ว

  2. คัดลอกไปยังไฟล์ทุกที่ที่คุณเห็นว่าเหมาะสม (ฉันมีของฉันเป็น~/scripts/xfce/toogleautohide.rb)

  3. ทำให้ปฏิบัติการได้

    chmod +x path/to/your/script
    
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.