ฉันจะให้ xfce ปรับโดยอัตโนมัติเพื่อเปลี่ยนเอาต์พุตที่มีอยู่ได้อย่างไร


11

ใน xfce ฉันสามารถเรียกใช้การตั้งค่า -> จอแสดงผลเพื่อเปลี่ยนมอนิเตอร์ที่ต้องการ สิ่งที่ฉันไม่ได้พบตัวเลือกสำหรับคือการให้มันปรับโดยอัตโนมัติเพื่อการเปลี่ยนแปลงในผลลัพธ์ที่มีอยู่

ตัวอย่างเช่นถ้าฉันใช้จอแสดงผล DVI แต่ปลดแล็ปท็อปของฉันออก XFCE จะไม่รับรู้โดยอัตโนมัติว่าฉันไม่มีจอแสดงผลที่ใช้งานได้และเปลี่ยนเอาต์พุต Gnome ทำสิ่งนี้แม้ว่าฉันจะไม่แน่ใจในเรื่องการบริการ ฉันต้องการมีวิธีการบางอย่างเพื่อให้แน่ใจว่าฉันมีผลงานอย่างน้อยหนึ่งรายการโดยอัตโนมัติ

หมายเหตุด้าน: สิ่งนี้เกี่ยวข้องกับคำถามอื่นของฉันหากฉันใช้ตัวจัดการหน้าต่างและไม่ใช่สภาพแวดล้อมเดสก์ท็อปฉันจะได้รับการอัปเดตความละเอียดเทียบท่า / ปลดอัตโนมัติได้อย่างไร แต่สำหรับ xfce ไม่ใช่ตัวจัดการหน้าต่างทั่วไป


1
ดีที่สุดเท่าที่ฉันเคยเห็น: unix.stackexchange.com/a/120945/14907
akostadinov

@akostadinov คำตอบควรเป็นคำตอบ ฉันจะไปข้างหน้าและเปลี่ยนเป็นหนึ่ง
Aleksandr Dubinsky

คำตอบ:


6
$ xrandr --auto

จากหน้ามนุษย์ xrandr:

- อัตโนมัติ : สำหรับเอาต์พุตที่เชื่อมต่อ แต่ถูกปิดใช้งานสิ่งนี้จะเปิดใช้งานพวกเขาโดยใช้โหมดที่ต้องการ (หรือบางอย่างใกล้เคียงกับ 96dpi หากไม่มีโหมดที่ต้องการ) สำหรับเอาต์พุตที่ตัดการเชื่อมต่อ แต่เปิดใช้งานสิ่งนี้จะปิดใช้งาน


สิ่งนี้ใช้ได้กับฉันเป็นอย่างน้อยสำหรับการตั้งค่าของฉัน
pl1nk

แต่นี่เป็นคำสั่งครั้งเดียวไม่ใช่บริการใช่ไหม
Aleksandr Dubinsky

0

คำถามนี้ตอบใน Unix StackExchange: /unix/101809/how-can-i-automatically-update-my-monitor-layout-in-xfce/120945#120945อย่างไรก็ตามเนื่องจากมันไม่ใช่ เป็นไปได้ที่จะทำเครื่องหมายคำถามนี้ว่าเป็นคำถามที่ซ้ำกันในเว็บไซต์อื่นฉันแค่คัดลอกคำตอบที่นี่


วิธีหนึ่งคือการสร้างกฎ udev แต่เมื่อฉันต้องการสิ่งที่พกพามากขึ้นฉันมีสคริปต์ทุบตีนี้ มันขึ้นอยู่กับการสนับสนุนที่ไม่คาดคิดรอคอยไม่มีลูปบางชนิดและถือว่ามีประสิทธิภาพ

external-lcd.sh

#!/bin/sh
# inspired of:                                                                                            
#   http://unix.stackexchange.com/questions/4489/a-tool-for-automatically-applying-randr-configuration-   when-external-display-is-p                                                                                
#   http://ozlabs.org/~jk/docs/mergefb/                                                                   
#   http://superuser.com/questions/181517/how-to-execute-a-command-whenever-a-file-changes/181543#181543  

export MONITOR2=/sys/class/drm/card0-VGA-1/status                                                         

while inotifywait -e modify,create,delete,open,close,close_write,access $MONITOR2;                        

dmode="$(cat $MONITOR2)"                                                                                  

do                                                                                                        
    if [ "${dmode}" = disconnected ]; then                                                                
         /usr/bin/xrandr --auto                                                                           
         echo "${dmode}"                                                                                  
    elif [ "${dmode}" = connected ];then                                                                  
         /usr/bin/xrandr --output VGA1 --auto --right-of LVDS1                                            
         echo "${dmode}"                                                                                  
    else /usr/bin/xrandr --auto                                                                           
         echo "${dmode}"                                                                                  
    fi                                                                                                    
done 

อย่าลืมทำให้ไฟล์นั้นทำงานได้ ( chmod +x external-lcd.sh) จากนั้นเริ่มต้นเมื่อใดก็ตามที่คุณเปิดใช้ DE ของคุณ

ฉันใช้สิ่งนี้กับ archlinux ดังนั้นฉันคิดว่ามันน่าจะใช้ได้ คุณสามารถเปลี่ยนพารามิเตอร์ xrandr หรือสลับเป็นใช้การกำหนดค่า arandr


-1

ไม่มีตัวเลือกดังกล่าวเนื่องจากเทคโนโลยีที่อยู่เบื้องหลังการตรวจจับเหตุการณ์ฮาร์ดแวร์ที่ไม่เชื่อเรื่องเดสก์ท็อป ( udev) นั้นค่อนข้างใหม่สำหรับโครงการงานอดิเรกเช่น xfce

คุณอาจได้รับผลดีบางขุดลงและD-Bus udevดูที่udev ไม่ได้ใช้งานลบเหตุการณ์สำหรับการเริ่ม

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