উবুন্টুর জন্য কি ডায়নামিক-মাল্টিপল-মনিটর ফ্রেন্ডলি ডেস্কটপ পরিবেশ উপলব্ধ?


14

আমি একটি ল্যাপটপ ব্যবহার করি এবং দিনের বেলা এক (শারীরিক) কর্মস্থল থেকে অন্য স্থানে স্থানান্তর করতে এবং যদি পাওয়া যায় তবে বাহ্যিক মনিটরের সাথে সংযোগ স্থাপন করতে চাই।

আমার অবশ্যই প্রচুর পরিমাণে মাল্টিটাস্ক করতে হবে, তাই আমার কোনও নির্দিষ্ট সময়ে প্রচুর উইন্ডো খোলা আছে এবং সেগুলি সংগঠিত করার জন্য অনেকগুলি (ভার্চুয়াল) ওয়ার্কস্পেস রয়েছে।

তবে প্রতিবার আমি বাহ্যিক মনিটরের সাথে সংযোগ / সংযোগ বিচ্ছিন্ন করার পরে আমার সমস্ত যত্নশীল ব্যবস্থা শেষ হয়ে যায়। এটি আমাকে সত্যিই পাগল করে তোলে ।

এমন কোনও ডেস্কটপ পরিবেশ রয়েছে যা আপনি যখন দ্বিতীয় মনিটরের সাথে সংযোগ / সংযোগ বিচ্ছিন্ন করেন তখন কেবল উইন্ডোজকে একা ফেলে দেয়? বা আরও ভাল, যে মনিটর ব্যবস্থা প্রতি উইন্ডো বিন্যাস মনে আছে? যাতে আমি যখন আমার বাড়ির অফিস থেকে (ল্যাপটপের স্ক্রিনের উপরে "17" মনিটরে) আমার স্বাভাবিক কর্মক্ষেত্রে (ল্যাপটপের স্ক্রিনের 21% "মনিটরে)" বা আমার সহকর্মীর ডেস্ক (ল্যাটপ স্ক্রিনের 19 "ডানদিকে) থাকি" উইন্ডোজগুলি শেষ হয়েছিল যেখানে মনিটরটি সংযুক্ত ছিল শেষ বার - বা তারা যদি এই মনিটরটি না দেখেন তবে রাখুন।

Unityক্য বহিরাগত মনিটরদের যেভাবে "পরিচালনা করে" কেবল আমাকে দু: খিত করে তোলে এবং কামনা করি যে আমার সংযুক্ত করার জন্য এই সমস্ত অতিরিক্ত মনিটর না থাকত এবং একবার এটি সংযোগ স্থাপন করে আমাকে এই বিন্যাসে বেঁধে রাখে, যেন আমার কাছে একটি ডেস্কটপ মেশিন মেঝেতে পেরেকযুক্ত ছিল।


এটি কি কোনও উইন্ডো ম্যানেজারের সাথে ঘটে? জিনোম 3, কে, কে, এলএক্সডিই, এক্সএফসিই?
ব্রায়াম

আমি জানি না। এটি unityক্যের সাথে ঘটে।
আর্টেম

আপনি কি এর কোনও ভাল সমাধান খুঁজে পেয়েছেন? আমাকে একটি ডেল ল্যাপটপ ব্যবহার করতে বাধ্য করা হয়েছে যা আমি উবুন্টুকে রেখেছি, তবে আমি আমার ম্যাকবুক প্রোতে অভ্যস্ত। ম্যাকে স্টে নামে একটি প্রোগ্রাম রয়েছে, যা অপরিহার্য, কারণ এটি প্রতিটি মনিটরের কনফিগারেশনের জন্য উইন্ডোর অবস্থানগুলি মনে রাখে। একটি মনিটরে প্লাগ করুন, সমস্ত উইন্ডোগুলি যেখানে ছিল সেখানে সরে যায়। দ্বিতীয় মনিটরে প্লাগ ইন করুন, তারা সবাই আবার সরান। আনপ্লাগ করুন, তারা সবাই যেখানে ছিল সেখানে ফিরে যায়। তবুও সমস্ত উইন্ডো দৃশ্যমান কিনা তা নিশ্চিত করার জন্য মেক স্টে ছাড়াই যথেষ্ট স্মার্ট। এই উবুন্টু ল্যাপটপটিতে আমি পর্দার বাইরে থাকা উইন্ডোজগুলি সন্ধান করতে থাকি।
গ্রেইয়ের

স্টিক অন লিনাক্স এর মতো কিছু আমি খুঁজে পাচ্ছি না। দেখে মনে হচ্ছে আপনি পৃথক কমান্ড থেকে সমস্ত তথ্য এবং নিয়ন্ত্রণ পেতে পারেন এবং নীচের স্ক্রিপ্টগুলি কাছাকাছি এসে গেছে। আমার প্রয়োজনীয় ক্রিয়াকলাপটি পেতে আমি এগুলি উন্নত করার জন্য কাজ করছি ...
গ্রেওয়ায়ার

আমি যা মিস করছি তার মতো শব্দ থাকুন। না, আমি কোনও সমাধান খুঁজে পাইনি।
আর্টেম

উত্তর:


10

আমি আপনাকে দুটি শেল স্ক্রিপ্ট সরবরাহ করছি। এটি আপনাকে উইন্ডোজ অবস্থান এবং আকারের আপনার ব্যবস্থা সংরক্ষণ করতে সহায়তা করবে । যদি কোনওভাবে আপনার কাঙ্ক্ষিত উইন্ডোজ বিন্যাসগুলি বিঘ্নিত হয়, আপনি এই স্ক্রিপ্টটি ব্যবহার করে সমস্ত উইন্ডোজের সঠিক উইন্ডোজ আকার এবং অবস্থানগুলি সহ সেই ব্যবস্থাগুলি পুনরুদ্ধার করতে সক্ষম হবেন ।

আপনার wmctrlযদি ইতিমধ্যে এটি না থাকে তবে আপনাকে ইনস্টল করতে হবে। টার্মিনালের মাধ্যমে ইনস্টল করুন,

sudo apt-get install wmctrl

উইন্ডোজ কনফিগারেশন সংরক্ষণ করার জন্য স্ক্রিপ্ট

# Script_Name: save_window_conf.sh
#!/bin/bash
if [ -f $HOME/.my_windows_config.txt ]; then
    echo -e "Information: Previous configuration file \"$HOME/.my_windows_config.txt\" already exists.\nTo save a new configuration remove it manually using the following command,\n\n\trm $HOME/.my_windows_config.txt"
    exit 1
else
    wmctrl -p -G -l | awk '($2 != -1)&&($3 != 0)&&($NF != "Desktop")' | awk '{print $1}' | while read mywinid
    do
        xwininfo -id "$mywinid" >> $HOME/.my_windows_config.txt
    done
fi

এক্সিকিউশনের সময় উপরের স্ক্রিপ্টটি আপনার উইন্ডোজ অবস্থান এবং আকারটি আপনার সমস্ত ডিরেক্টরিতে আপনার উইন্ডোজ .my_windows_config.txtডিরেক্টরিতে নামক কোনও ফাইলে সংরক্ষণ করবে । এটি একটি গোপন পাঠ্য ফাইল।

উইন্ডোজ কনফিগারেশন পুনরায় লোড করার স্ক্রিপ্ট

# Script_Name: load_window_conf.sh
#!/bin/bash

file=$HOME/.my_windows_config.txt
declare -a mywinid
declare -a x
declare -a y
declare -a width
declare -a height

nl=$(cat "$file" | grep xwininfo |wc -l)

for i in $(seq 1 $nl)
do
    mywinid[i]=$(cat "$file" | grep "xwininfo" | awk -v p="$i" '{if(NR==p) print $4}')
    x[i]=$(cat "$file" | grep "Absolute upper-left X" | awk -v p="$i" '{if(NR==p) print $NF}')
    y[i]=$(cat "$file" | grep "Absolute upper-left Y" | awk -v p="$i" '{if(NR==p) print $NF}')
    width[i]=$(cat "$file" | grep "Width" | awk -v p="$i" '{if(NR==p) print $NF}')
    height[i]=$(cat "$file" | grep "Height" | awk -v p="$i" '{if(NR==p) print $NF}')
done

for it in $(seq 1 $nl)
do
    wmctrl -i -r "${mywinid[$it]}" -e 0,"${x[$it]}","${y[$it]}","${width[it]}","${height[it]}"
done

আপনি যখন দ্বিতীয় স্ক্রিপ্টটি কার্যকর করেন এটি আপনার সমস্ত উইন্ডোগুলির জন্য সঠিক আকারের সাথে আপনার উইন্ডোজ অবস্থান পুনরুদ্ধার করবে।

ব্যবহার

এই $HOME/bin/ডিরেক্টরিগুলি আপনার ডিরেক্টরিতে সংরক্ষণ করুন । $HOME/bin/আপনার যোগ করুন PATH। এর জন্য আপনার শেষে এই লাইনগুলি যুক্ত করুন$HOME/.bashrc

PATH=$HOME/bin:$PATH
export PATH

এটি আপনাকে কেবল তাদের নামের সাথে এই স্ক্রিপ্টগুলি কার্যকর করতে সক্ষম করবে। স্ক্রিপ্টগুলি কার্যকর করার অনুমতি দিন,

chmod +x $HOME/bin/save_window_conf.sh
chmod +x $HOME/bin/load_window_conf.sh

আপনার কনফিগারেশন সংরক্ষণ করুন $HOME/.my_windows_config.txt

আপনি টার্মিনালে চালিত আপনার সমস্ত উইন্ডো খুলুন এবং সমন্বয় করার পরে,

save_window_conf.sh

আপনার থেকে কনফিগারেশনটি পুনরায় লোড করুন $HOME/.my_windows_config.txt

load_window_conf.sh

আশা করি এটি আপনার সমস্যার সমাধান করবে। এখানে একটি স্ক্রিন শট হয়,

এখানে চিত্র বর্ণনা লিখুন


বাহ, ধন্যবাদ, এটি আশাব্যঞ্জক দেখাচ্ছে। আমি স্ক্রিপ্টগুলি চেষ্টা করে দেব।
আর্টেম

@ আর্টম আমি একটু বিড়ম্বনা এবং একটি টাইপো সম্পাদনা করেছি, এখন ঠিক আছে বলে মনে হচ্ছে। আমি এটি ইউনিটি এবং জিনোম-ফ্যালব্যাক-সেশনে পরীক্ষা করেছি, জিনোম 3 এ কাজ করা উচিত। আপনি যদি কোনও সমস্যার মুখোমুখি হন তবে আমাকে জানান।
সৌরভসি

@artm এটা যখন আপনি মুছে ফেলার আপনার সিদ্ধান্ত হওয়া উচিত .my_windows_config.txt। আপনি যদি বিদ্যমান উইন্ডোজগুলির জন্য একই সময়ে উইন্ডোজ কনফিগারেশনটি বেশ কয়েকটি সময় লোড করতে চান তবে আপনি এটি সংরক্ষণ করতে চাইতে পারেন। তবে আপনি যদি একটি সম্পূর্ণ নতুন সেশন শুরু করেন তবে সেই উইন্ডোজ আইডি আলাদা হবে এবং সেই ক্ষেত্রে পুরানো কনফিগারেশন ফাইলটি সরিয়ে ফেলা ভাল $HOME/.my_windows_config.txt। একটি নতুন কনফিগারেশন সংরক্ষণ করার আগে আপনাকে ম্যানুয়ালি কনফিগারেশন সংরক্ষণ করা ফাইলটি সরিয়ে ফেলতে হবে।
সৌরাভসি

উবুন্টুতে এক্সএফসিই 4 তে 18.04 এ আমাকে গ্র্যাভিটিটি পরিবর্তন করতে হয়েছিল (-e প্যারামিটারের প্রথম "0") 31 এ পরিবর্তন করা হয়েছে, অন্যথায় উইন্ডোগুলি যেখানে ছিল সেখান থেকে প্রায় 31px পুনরুদ্ধার করা হয়েছিল। আমি মনে করি এটি ডিফল্ট এক্সএফসিই প্যানেলের আকার হতে পারে। কোডের জন্য ধন্যবাদ!
akom

-1

সাধারণ গাইড এখানে: রেজোলিউশন

ডায়নামিকাল রেজোলিউশন সম্পর্কে আপনার সমাধানগুলি Xorg এবং XrandR বা Xinerama এর কাছাকাছি

আপনার আছে:
সেটআপ করার জন্য চারটি পদ্ধতি

  1. .Xprofile দিয়ে সেশন দ্বারা।

  2. গতিশীলভাবে xrandr সরঞ্জাম ব্যবহার করে

  3. Xorg.conf এ স্থির করে।

  4. Xrandr গ্রাফিকাল ফ্রন্ট এন্ড জিইআই।

উত্তম উত্তর হ'ল একাধিক মনিটরের জন্য সেটিংস সংরক্ষণ করা হয় না

আপনার কর্মক্ষেত্র জুড়ে আপনার উইন্ডো পরিচালনাটি সক্রিয় করতে আপনি কমিজ কনফিগার ম্যানেজার দ্বারা প্রদত্ত প্রোফাইলিং সিস্টেমটি ব্যবহার করতে পারেন


2
রেজোলিউশন বা প্রদর্শনের ব্যবস্থা নিয়ে আমার কোনও সমস্যা নেই - প্রত্যাশাগুলি হিসাবে সেগুলি কাজ করে।
আর্টেম

সুতরাং কোনও ডেস্কটপ পরিবেশ আপনার জন্য বন্ধুত্বপূর্ণ। দয়া করে জনগণকে দোষ দিবেন না।
দ্রুত

আমি কাউকে দোষ দিই না। আমি মনিটরদের সংযোগ / সংযোগ বিচ্ছিন্ন করার সময় কেবল ওপেন উইন্ডোগুলিকে যেখানে রেখেছিলাম সেখানেই থাকতে চাই।
আর্টেম

সুতরাং আপনার সরকারী রেফারেন্স সহ চারটি সমাধান রয়েছে। আমার উত্তরটি আপনার "পাগলামি" পর্যাপ্তরূপে cover
দ্রুত

2
ওহ, কেবল নিজের জন্য এটি চেষ্টা করুন: প্রতিটি কর্মক্ষেত্রের জন্য একটি উইন্ডো খুলুন তারপরে মূল পর্দার শীর্ষে প্রদর্শিত একটি মনিটরের সাথে সংযুক্ত করুন এবং আপনার উইন্ডোজটি কোথায় শেষ হয়েছে তা দেখুন। তারপরে আমাকে বলুন যে কোনও মনিটর সংযুক্ত থাকাকালীন কীভাবে এক্সরেন্ডারটি এলোমেলোভাবে ঝাঁপ দেওয়া থেকে উইন্ডোজগুলি থামানো সম্পর্কিত।
আর্টেম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.