এক্সএফসিই-তে আমি কীভাবে আমার মনিটর লেআউটটিকে স্বয়ংক্রিয়ভাবে আপডেট করতে পারি?


9

আমার কাছে একটি ল্যাপটপ রয়েছে যা সাধারণত একটি বড় মনিটরের সাথে ডক হয়। ডক করা অবস্থায়, ল্যাপটপের স্ক্রিনটি ডানদিকে গৌণ প্রদর্শন হিসাবে ল্যাপটপের স্ক্রিনের সাথে আমি বড় প্রদর্শনীটিকে প্রাথমিক প্রদর্শন হিসাবে ব্যবহার করতে চাই। যখন আনকড করা হয় তখন ল্যাপটপের স্ক্রিনটি একমাত্র প্রদর্শন।

এক্সএফসিইতে এ জাতীয় মাল্টি-মনিটরের সমর্থন অন্তর্নির্মিত বলে মনে হয় না I আমি আরআ্যান্ডআর পেয়েছি , যা আমার মনিটরসগুলিকে আমার পছন্দ মতো সেট আপ করতে দেয়। ডকড এবং আনডকড কনফিগারেশনের জন্য প্রোফাইলগুলি সংরক্ষণ করতে আমি আরআ্যান্ডআর ব্যবহার করতে পারি (যা সত্যই কেবল শেল স্ক্রিপ্ট যা এক্সরেন্ডারকে ডাকে )।

তবে ল্যাপটপটি ডক করা এবং আনডকড করা অবস্থায় আমি কীভাবে সেই প্রোফাইলগুলিকে স্বয়ংক্রিয়ভাবে প্রয়োগ করতে পারি? ডকিং স্টেশন সনাক্ত করে এমন কোনও উদেব নিয়ম তৈরি করার চেষ্টা করা উচিত? একটি ভাল উপায় আছে কি?


এটি এখনও পরীক্ষা করা যায় নি, তবে এক্স-অন-রিসাইজ এক্স বিকাশকারীদের মধ্যে এটির জন্য ঠিক একটাই করে তৈরি করেছিলেন।
মাইকেল

উত্তর:


5

একটি উপায় হ'ল উদেব নিয়ম তৈরি করা, তবে আমি আরও কিছু পোর্টেবলের মতো দেখতে চাইলে আমার এই বাশ স্ক্রিপ্ট রয়েছে। এটি ইনোটিফয়েট সমর্থনের উপর নির্ভর করে, কোনও ধরণের লুপ নেই এবং এটি দক্ষ হিসাবে বিবেচিত হয়।

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) তৈরি করতে ভুলবেন না । তারপরে আপনি যখনই নিজের ডিই চালু করেন তখন কেবল এটি শুরু করুন।

আমি এটি আর্চলিনাক্সে ব্যবহার করছি তাই আমার মনে হয় এটি কাজ করা উচিত। আরেন্ডার কনফিগারেশন ব্যবহার করতে আপনি এক্সরেন্ডার প্যারামিটারগুলি পরিবর্তন করতে বা এটিকে অদলবদল করতে পারেন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.