Belirli bir çalışma alanına gitmek için bir komut var mı?

20

Belirli bir çalışma alanına hızlı geçiş sağlayan Çalışma Alanı Değiştirici başlatıcısı üzerinde bir hızlı liste oluşturmaya çalışıyorum. (Arkadaşım bazen bilgisayarımı kullanır ve klavye kısayollarını kullanmaz, bu yüzden ona yardım etmek isterim.)

Peki, belli bir çalışma alanını odaklanmaya zorlayacak bir terminale yazabilecek bir komut var mı?

    
sordu Leron 07.05.2011 23:58

4 cevap

29

wmctrl 'yi kullanabilirsiniz.

Temel komutlar:
Tüm çalışma alanlarınızı göstermek için% wmctrl -d . Belirli bir çalışma alanına geçmek için wmctrl -s <workspace_name> .

Eğer Compiz kullanıyorsanız, bir dizi yapmalısınız çünkü Compiz "çalışma alanları" aslında tek bir Çalışma Alanının Viewport'larıdır.

Trick Talimatları

wmctrl -d çıktısını kontrol edin Örneğin, benim:

0  * DG: 4098x2304  VP: 1366,0  WA: 0,23 1366x745  N/A  

Bunun anlamı, sahip olduğum "düşünmek" yerine (9 "çalışma alanı", 3 x 3) yerine, 4098 x 2304 bir Çalışma Alanına sahip olduğum anlamına geliyor.

"Çalışma alanı" 2 olması gerekiyordu, ama aslında yukarıdaki çıktı tarafından gösterildiği gibi ben viewport (VP) 1366,0 (4098/3 = 1366) idi.

Öyleyse böyle çalışıyor: Tüm Çalışma Alanını ele alıyoruz ve sahip olduğumuz "düşünen" "çalışma alanları" sayısına bölünüyoruz. Benim durumumda: 4098/3 = 1366 ve 2304/3 = 768.

"Çalışma alanım" 1'e gitmek istersek, komut şöyledir:

wmctrl -o 0,0

Ardından, "çalışma alanım" 4'e gitmek istersek, komut şöyledir:

wmctrl -o 0,768

"Çalışma alanıma" 8 gitmek istiyorum, komut:

wmctrl -o 1366,1536

"Çalışma alanım" 9'a gitmek istersek, komut şöyledir:

wmctrl -o 2732,1536

Anladın mı? ; -)

-o bayrağı, değerlerini "kırpıyor". Başka bir deyişle, gerçek pikselin ait olduğu "çalışma alanını" değiştirir. Aşağıdakiler eşdeğerdir:

wmctrl -o 0,0
wmctrl -o 1365,767
    
verilen cevap desgua 08.05.2011 03:34
7

İstediğiniz şeyi elde etmek için, xdotool ile, farklı çalışma alanlarını yönetmek için birden fazla seçeneğe sahip olan (program belgelerinde 'masaüstleri' olarak da bilinir) elde etmek çok kolay. Komutları man xdotool 'den bir araya getirmek çok ilginç ve yaratıcı olabilir. Aşağıda formüle ettiğim komutlar betiklerde yararlı olabilir.

Not: Bazı pencere yöneticileriyle veya compiz kullanıyorsanız, xdotool ve set_desktop_viewport gibi get_desktop_viewport komutlarını kullanmanız gerekebilir. Komutları, yukarıdaki desgua önerdiğinden farklı bir şekilde belirtmeniz gerekebilir, ancak benim için set_desktop ve set_desktop_for_window komutları, bir compiz olmayan sistemde en yararlı olduğunu kanıtladı.)

( Çözüm, Xubuntu / Lubuntu kullanıcıları veya compiz çalıştırmayanlar için en yararlı olanıdır. )

Mevcut çalışma alanlarının sayısını listelemek için

girin
xdotool get_num_desktops

Aşağıdaki komutlar yalnızca en az 1 başka çalışma alanınız varsa çalışır.

Odağı çalışma alanınıza değiştirmek için 1 girin

xdotool set_desktop 1 

Sonra varsayılan çalışma alanına geri dönmek için

girin
xdotool set_desktop 0

Çalışma alanının sadece komutta son değer olarak belirtilmesi gerekir (1 veya 2 veya 3, vb.).

Şu anda üzerinde bulunduğunuz çalışma alanının numarasını bulmak için

kullanabilirsiniz
xdotool get_desktop

Bu komutlar betiklerde kullanılabilir ve neyi elde ettiğinize ulaşmak için çok kullanışlı olmalıdır.

Uygulamaları belirli bir masaüstüne nasıl geçireceğiniz hakkında cevabımı buraya bakın:

Çalışma alanı geçişi için daha kullanışlı seçenekler için, man xdotool dosyasına bakın.

    
verilen cevap user76204 12.01.2013 20:46
1

İstediğiniz şeyi yapan bir komut dosyası uyguladık. İşte: İşte

Desgua'nın yazılarında anlatıldığı gibi çalışır. Ayrıca diğer çalışma alanlarına pencere gönderme yetenekleri.

    
verilen cevap Norswap 12.01.2013 19:21
0

compiz-send.py compiz wiki 'de kısaca sorunuzu kısaca açıklar: belirli bir çalışma alanı değildir, ancak yanında.

Bununla, ./compiz-dbus-send.py put put_viewport_left_key
./compiz-dbus-send.py put put_viewport_right_key
komut yazabilirsiniz.
ve viewport 1'i sola veya sağa taşıyor.

    
verilen cevap Rinzwind 08.05.2011 00:14

Etiketlerdeki diğer soruları oku