উত্তর:
আপনি যদি করছে Compiz ব্যবহার করে, এই একটি বিট আরো কঠিন হবে।
সম্পাদনা করুন: এটি এখন কমিজের সাথে এবং ছাড়া উভয়ই কাজ করে, শেষ পর্যন্ত ...
এটি করার জন্য আমি একটি "ছোট" অজগর স্ক্রিপ্ট লিখেছি:
#!/usr/bin/python
from subprocess import Popen, PIPE
getoutput = lambda x: Popen(x, stdout=PIPE).communicate()[0]
compiz_running = list(i for i in getoutput(("ps", "-aef", )).split("\n")
if "compiz --replace" in i and not "grep" in i) != []
if compiz_running:
# get the position of the current workspace
ws = list(int(i.strip(",")) for i in getoutput(("xprop", "-root",
"-notype", "_NET_DESKTOP_VIEWPORT", )).split()[-2:])
# get the number of horizontal and vertical workspaces
hsize = int(getoutput(("gconftool",
"--get", "/apps/compiz/general/screen0/options/hsize", )))
vsize = int(getoutput(("gconftool",
"--get", "/apps/compiz/general/screen0/options/vsize", )))
# get the dimentions of a single workspace
x, y = list(int(i) for i in getoutput(("xwininfo", "-root",
"-stats", )).split("geometry ")[1].split("+")[0].split("x"))
# enumerate workspaces
workspaces, n = [], 0
for j in range(vsize):
for i in range(hsize):
workspaces.append([n, [x*i, y*j, ], ])
n += 1
print list(i for i in workspaces if i[1] == ws)[0][0]
# if compiz is not running
else: # this code via @DoR
print getoutput(("xdotool", "get_desktop", )).strip()
এটি কোথাও সংরক্ষণ করুন এবং কার্যকর হিসাবে চিহ্নিত করুন। এটি 0
ওয়ার্কস্পেসের সংখ্যার মধ্যে কেবল একটি সংখ্যার আউটপুট দেয় ।
গণনাটি এমনভাবে দেখায়:
+---+---+
| 0 | 1 |
+---+---+
| 2 | 3 |
+---+---+
কম্পিজ অক্ষম থাকলে ক্ষেত্রে আপনাকে এক্সডটুল ইনস্টল করতে হবে ।
কোনও কিছু ইনস্টল না করে এবং আপনি যদি মেটাটিটি ব্যবহার করেন তবে আপনি এটি ব্যবহার করতে পারেন:
python -c "import wnck; s=wnck.screen_get_default(); s.force_update(); w=s.get_active_workspace(); w_num=w.get_number(); print(w_num);" 2>/dev/null
মনে হচ্ছে Unক্যের সাথে, গৃহীত উত্তর
xdotool get_desktop_viewport
কাজ করে না - এটি সর্বদা 0 প্রদান করে I বিকল্পটি কিছুটা জটিল, যেহেতু আপনাকে আপনার কর্মক্ষেত্রের আকার জানতে হবে। অর্থাৎ,
xdotool get_desktop_viewport
আপনি উপরের ডান কর্মক্ষেত্রে থাকলে "1600 0" এর মতো কিছু ফিরে আসবে। প্রথম সংখ্যাটি সম্ভবত আপনার সবচেয়ে বড় ডিসপ্লেটির প্রস্থ।