লগইনে কেন্দ্রীয় কর্মক্ষেত্রে অবস্থান


12

আমি 3x3 ওয়ার্কস্পেস সুইচার সেট আপ করেছি এবং আমি চাই যে আমার অবস্থানটি ডিফল্টরূপে কেন্দ্রীয় অবস্থানে থাকবে। এটা কি সম্ভব?

উত্তর:


7

মার্কোর ধন্যবাদ, আমি একটি উপায় ব্যবহার করে খুঁজে পেয়েছি wmctrl

কারণ কমিজ ওয়ার্কস্পেসগুলি আসলে একটি একক ডেস্কটপের ভিউপোর্ট হয়, সুতরাং সমাধানটি হ'ল ডেস্কটপের মধ্যবর্তী অঞ্চলটি আবরণে বর্তমান ভিউপোর্টটি সরিয়ে নেওয়া।

প্রথমে wmctrl -dবর্তমান ডেস্কটপের তথ্য পেতে কল করুন:

read desktop_id _ast \
    DG_ geometry \
    VP_ viewport \
    WA_ wa_off wa_size \
    title \
    < <(LANG=C wmctrl -d | grep '*')

geom_w=${geometry%x*}
geom_h=${geometry#*x}

# The workarea size isn't accurate, because the top/bottom panel is excluded. 
viewport_w=${wa_size%x*}
viewport_h=${wa_size#*x}

rows=$((geom_w / viewport_w))
cols=$((geom_h / viewport_h))

# Fix the viewport size
viewport_w=$((geom_w / rows))
viewport_h=$((geom_h / cols))

তারপরে, কেন্দ্রের ভিউপোর্টের উত্স গণনা করুন:

center_row=$((rows / 2))
center_col=$((cols / 2))

center_x=$((center_col * viewport_w))
center_y=$((center_row * viewport_h))

center_viewport=$center_x,$center_y

এবং সেখানে ভিউপোর্টটি সরান:

wmctrl -o $center_viewport

6

হ্যাঁ: wmctrl ইনস্টল করুন

sudo apt-get install wmctrl

এবং ~/.config/autostart/wmctrl.desktopনিম্নলিখিতগুলির সাথে একটি ফাইল তৈরি করুন :

[Desktop Entry]
Name=Desktop Switcher
Exec=/usr/bin/wmctrl -s 4
Type=Application

1
কমপিউসে একটি মাত্র ডেস্কটপ রয়েছে। তবে wmctrlযাইহোক ডেস্কটপের মধ্যে ভিউপোর্ট স্যুইচ করতে পারেন। আমার উত্তর নীচে দেখুন।
Xiè Jìléi

2
  1. কমান্ড লাইন থেকে কমিজ নিয়ন্ত্রণের জন্য প্রথমে এই সহায়ক স্ক্রিপ্টটিবিকল্প পাঠ ডাউনলোড করুন । এটি compiz-send.pyআপনার বাড়ির ফোল্ডারের মতো সংরক্ষণ করুন ।
  2. python compiz-send.py vpswitch switch_to_5_keyএটি সঠিকভাবে কাজ করে তা নিশ্চিত করতে কমান্ডটি চালান । এটি আপনাকে কেন্দ্রের কর্মক্ষেত্রে স্যুইচ করা উচিত।
  3. যদি এটি কাজ .switch_to_center_workspace.shকরে তবে আপনার বাড়ির ফোল্ডারে ডাকা একটি ফাইল তৈরি করুন এবং এর মধ্যে নিম্নলিখিতটি আটকে দিন:

    #!/bin/bash
    sleep 5 && python /home/user/compiz-send.py vpswitch switch_to_5_key
    

    userআপনার ব্যবহারকারীর নাম দিয়ে প্রতিস্থাপন ।

  4. স্টার্টআপ অ্যাপ্লিকেশনগুলি, সিস্টেম -> পছন্দসমূহ -> স্টার্টআপ অ্যাপ্লিকেশনগুলি খুলুন ।

  5. যোগ করুন এবং কমান্ডে: এন্ট্রি করাতে ক্লিক করুন/home/user/.switch_to_center_workspace.shনাম এবং মন্তব্য: এন্ট্রিতে আপনি যা চান তা রাখুন ।

  6. লগ আউট এবং পুনরায় লগ ইন করুন এবং এটি কাজ করে যাচাই করুন।


দুর্ভাগ্যক্রমে স্ক্রিপ্টটি কাজ করে নাdbus.exceptions.DBusException: org.freedesktop.DBus.Error.UnknownMethod: Method "activate" with signature "si" on interface "org.freedesktop.compiz" doesn't exist
Xiè Jéléi

@ 谢 继 雷sleep 5স্ক্রিপ্টের অংশটি একটি উচ্চ সংখ্যায় পরিবর্তন sleep 10করুন নিশ্চিত করুন স্ক্রিপ্টটি চালু হওয়ার আগেই কমপিজ ইতিমধ্যে চলছে কিনা। আপনি ঠিক কমিজ ব্যবহার করছেন?
যিশাইয়

আমি স্ক্রিপ্টটি জিনোম-টার্মিনালে চালানোর চেষ্টা করি এবং ব্যতিক্রমটি পাই। আমি কমিজ 0.8.6 ব্যবহার করছি।
Xiè Jìléi

স্ক্রিপ্টে বলা হয়েছে যে পদ্ধতিটির স্বাক্ষর "সি" উপস্থিত নেই, সুতরাং আমি অনুমান করি যে আর্গুমেন্টগুলি (স্ট্রিং, ইনট) সক্রিয় করার জন্য পাস করা হয়েছে () সঠিক নাও হতে পারে ..
শিওল জেলি

2

আমি অনুরূপ প্রশ্ন জিজ্ঞাসা করতে যাচ্ছিলাম, তবে 3 টি অনুভূমিক কর্মক্ষেত্রের জন্য এবং আমিও কম্পিজ চালাচ্ছি, এবং wmctrl -dআউটপুট (প্রতি কর্মক্ষেত্রের) দেখতে এই রকম দেখাচ্ছে:

  • ওয়ার্কস্পেস 1 এ: 0 * DG: 4098x768 VP: 0,0 WA: 0,24 1366x744 Workspace 1
  • কর্মক্ষেত্র 2 এ: 0 * DG: 4098x768 VP: 1366,0 WA: 0,24 1366x744 Workspace 1
  • ওয়ার্কস্পেস 3 এ: 0 * DG: 4098x768 VP: 2732,0 WA: 0,24 1366x744 Workspace 1

শুরুতে কেন্দ্রটিকে আমার ডিফল্ট ওয়ার্কস্পেস হিসাবে তৈরি করতে আমি কেবল wmctrl -o 1366,0( ভিপি মান) ব্যবহার করেছি। সবার জন্য কাজ করতে পারে না, তবে কেবল ক্ষেত্রে;)


কমান্ডটি আমি "সিস্টেম -> পছন্দসমূহ -> স্টার্টআপ অ্যাপ্লিকেশনগুলিতে" ব্যবহার করছি:sh -c "sleep 2;/usr/bin/wmctrl -o 1366,0
উইক

... আপনার ঘুমের মান সামঞ্জস্য করতে হতে পারে, উদাহরণস্বরূপ 10, 15 ইত্যাদি চেষ্টা করুন
উইক

এই নোটের জন্য ধন্যবাদ - দুঃখিত আমি আপনার উত্তরটি পড়ার আগে এটি পড়িনি :)
sdaau

0

একটি সংক্ষিপ্ত বিবরণ - আমি নাটি ব্যবহার করছি, এবং @ 谢 继 雷 'র উত্তরের জন্য ধন্যবাদ আমি লক্ষ্য করেছি যে ইউনিটির চারটি' ওয়ার্কস্পেসের 'প্রতিটিটিতে টার্মিনালটি সরিয়ে নীচের প্রতিবেদন করা হয়েছে:

$ wmctrl -d
# top left
0  * DG: 2048x1200  VP: 0,0  WA: 0,24 1024x576  Workspace 1
# bottom left
0  * DG: 2048x1200  VP: 0,600  WA: 0,24 1024x576  Workspace 1
# top right
0  * DG: 2048x1200  VP: 1024,0  WA: 0,24 1024x576  Workspace 1
# bottom right 
0  * DG: 2048x1200  VP: 1024,600  WA: 0,24 1024x576  Workspace 1

... অর্থাৎ এগুলি আলাদা আলাদা ডেস্কটপ বা ওয়ার্কস্পেস নয় - কেবল ভিউপোর্টে পরিবর্তন হয়!

সুতরাং, এই চারটি ভিউপোর্টের মধ্যে পরিবর্তন করতে, উপরের তালিকাভুক্ত মানগুলির wmctrl -oসাথে সরাসরি কমান্ডটি কল করুন VP, যেমন:

wmctrl -o 0,0
wmctrl -o 0,600
wmctrl -o 1024,0
wmctrl -o 1024,600

সম্পাদনা: আপস, দুঃখিত, সবেমাত্র এটি দেখেছেন @ উইকের উত্তরের মতো - যথাযথভাবে মার্জ / মুছুন ..

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