Ubuntu için pencere yapıştırma nasıl kullanılır? [çiftleme]


14

Olası Çoğaltma:
Winkey + ok Windows 7'nin kısayol tuşlarını en üst düzeye çıkarma nasıl yapılır?

Ubuntu'yu deniyorum ve Windows Key + Arrow kısayol tuşlarını kullandığımda pencerelerimin Windows 7 gibi sola ve sağa yapışmasını istiyorum. Bunu nasıl yapabilirim?


Ubuntu, pencere efektleri sağlamak için Compiz'i kullanır. Baktım ama güzel bir pencere özelliği olduğu için üzücü olan Win 7 efektini verecek Compiz için resmi bir eklenti göremiyorum. Bir şey bulursam bakmaya ve cevap olarak postalamaya devam edeceğim.

Yanıtlar:


18

CompizConfig Ayarlar Yöneticisi'nden etkinleştirmek kolaydır. (Henüz yüklemediyseniz kurun).

Ardından Pencere Yönetimi altında Izgara'yı etkinleştirin. CTRL + ALT + NumPad'in varsayılan bağlantılarını sakladım, ancak istediğiniz gibi Super + Arrow'u kolayca değiştirebilirsiniz.


Bundan eksik olduğum tek şey eylemleri birleştirmek. Pencereyi sağa ve alta hareket ettirmek, pencerenin ekranın sağ alt çeyreğinde olmasına neden olur (pencerelerin davranışına benzer).
kleinfreund

@kleinfreund Gridonay kutusunun yanındaki düğmeyi tıklarsanız değiştirebileceğiniz birçok ayar vardır; Corners / Edgessekmesi köşe yerleştirme ayarlamanıza izin verir.
swref

Bu, ana kısayollar olan Pop OS
18.10'da işe yaramıyor

4

Mike'ın Ubuntu'sundan okunabilir bir formda tam talimatlar için buraya gidin (teşekkürler Mike) ve işte orijinal Ubuntu forum yazısı (teşekkürler gotsanity). Bunu sistemimde kontrol ettim, bu yüzden senin için çalışmalı. Ayrıca, anlaşılmasını biraz daha kolaylaştırmak için biraz ekledim ve düzenledim.

Onun yönlerinde yapacağım tek değişiklik ilk önce yüklü compiz olup olmadığını görmek için kontrol (en kolay yolu yazılım yöneticisini kullanmak ve arama penceresinde "compiz" koymaktır.

Bunu yaparsanız, terminalde aşağıdakileri yazın: -

sudo apt-get install compizconfig-settings-manager wmctrl

Aksi takdirde compiz ayarları yöneticisi sisteminizde mevcut olmaz.

Bir terminal açın ve şunu yazın:

xinput list

Bir liste görüntüler. Fareniz için kimlik numaranızı bulun. Sonraki adımlarda bu numaraya ihtiyacınız olacak. Benimki 10 yaşındaydı. Seninki büyük olasılıkla farklı olacak.
Bu sonraki komutlar, gerekli komut dosyalarını tutmak ve sizi bu klasöre taşımak için ana klasörünüzde yeni bir gizli klasör oluşturur.

mkdir .scripts

cd .scripts

Sonra yazın

gedit compizsnap-left.sh    

Bir metin düzenleyici açılır. Bunu yapıştırın ve fare kimliğinizi 11'den "xinput list" komutunun çıkışından sayıya değiştirin . Bunu yaptıktan sonra dosyayı kaydedin.

#!/bin/sh
#
# CompizSnap is a collaborative project from ubuntuforums.org and is free software.
# This script adds window snapping functionality to compiz using the commands plugin.
#
# Directions: run "xinput list" to find your mouse's ID# and then edit the MOUSE variable below:
#

MOUSE="11"

# ----- Don't edit below this line unless you know what you are doing.
WIDTH=`xdpyinfo | grep 'dimensions:' | cut -f 2 -d ':' | cut -f 1 -d 'x'` && HALF=$(($WIDTH/2-10))

echo $WIDTH
TEMPWIDTH=$(($WIDTH-10))
echo $TEMPWIDTH
if /usr/bin/X11/xinput --query-state $MOUSE | grep down
then
    while (/usr/bin/X11/xinput --query-state $MOUSE | grep down)
    do
        echo 'button pressed'
    done

    if [ "$(/usr/bin/X11/xinput --query-state $MOUSE | grep "valuator\[0\]=." | sed s/"valuator\[0\]="//)" -le 10 ]
    then

        wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz && wmctrl -r :ACTIVE: -b add,maximized_vert && wmctrl -r :ACTIVE: -e 0,0,0,$HALF,-10

    else
        echo "exiting without matching"
        exit 1
    fi
else
        echo "exiting because button isnt "
        exit 1
fi    

Ardından, diğer iki komut dosyası için de aynısını yapın. (Fare kimliğini değiştirmeyi unutmayın)

compizsnap-right.sh

Kod:

#!/bin/sh
#
# CompizSnap is a collaborative project from ubuntuforums.org and is free software.
# This script adds window snapping functionality to compiz using the commands plugin.
#
# Directions: run "xinput list" to find your mouse's ID# and then edit the MOUSE variable below:
#

MOUSE="11"

# ----- Don't edit below this line unless you know what you are doing.
WIDTH=`xdpyinfo | grep 'dimensions:' | cut -f 2 -d ':' | cut -f 1 -d 'x'` && HALF=$(($WIDTH/2))

echo $WIDTH
TEMPWIDTH=$(($WIDTH-10))
echo $TEMPWIDTH
if /usr/bin/X11/xinput --query-state $MOUSE | grep down
then
    while (/usr/bin/X11/xinput --query-state $MOUSE | grep down)
    do
        echo 'button pressed'
    done

    if [ "$(/usr/bin/X11/xinput --query-state $MOUSE | grep "valuator\[0\]=." | sed s/"valuator\[0\]="//)" -ge $TEMPWIDTH ]
    then

        wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz && wmctrl -r :ACTIVE: -b add,maximized_vert && wmctrl -r :ACTIVE: -e 0,$HALF,0,$HALF,-1

    else
        echo "exiting without matching"
        exit 1
    fi
else
        echo "exiting because button isnt "
        exit 1
fi    

Ve

compizsnap-max.sh

Kod:

#!/bin/sh
#
# CompizSnap is a collaborative project from ubuntuforums.org and is free software.
# This script adds window snapping functionality to compiz using the commands plugin.
#
# Directions: run "xinput list" to find your mouse's ID# and then edit the MOUSE variable below:
#

MOUSE="11"

# ----- Don't edit below this line unless you know what you are doing.
if /usr/bin/X11/xinput --query-state $MOUSE | grep down
then
    while (/usr/bin/X11/xinput --query-state $MOUSE | grep down)
    do
        echo 'button pressed'
    done
    if [ "$(/usr/bin/X11/xinput --query-state $MOUSE | grep "valuator\[1\]=." | sed s/"valuator\[1\]="//)" -le 10 ]
    then

        wmctrl -r :ACTIVE: -b add,maximized_vert,maximized_horz

    else
        echo "exiting without matching"
        exit 1
    fi
else
        echo "exiting because button isnt "
        exit 1
fi    

(Fare kimliğini değiştirmeyi hatırladınız mı?)

Şimdi fare ekranın sağına, üstüne ve soluna hareket ettiğinde compiz'e nasıl davranacağını söylememiz gerekiyor.

Sistem> Tercihler> CompizConfig Ayarları Yöneticisi'ni çalıştırın. Komut bölümüne gidin. Aşağıdakileri ayarlayın:
Komut 0 alanında:

sh ~/.scripts/compizsnap-left.sh

Komut 1 alanında:

sh ~/.scripts/compizsnap-right.sh

Komut 2 alanında:

sh ~/.scripts/compizsnap-max.sh

Son olarak, kenar ciltleri sekmesine gidin ve komut 0'ı sola ayarlayın, komut 1'i sağa ayarlayın ve komut 2'yi en üste ayarlayın.

NB Compiz, kullanmak istediğiniz kenar ciltlerine ayarlanmış işlevler olduğundan şikayet edebilir - bunları kendinizinkilerle değiştirin.


Bu harika çalışıyor, TwinView yapılandırmasında iki monitörle nasıl çalışacağına dair ipuçları var mı?
Nathan Schwermann

2

Çoğu Unix pencere yöneticisi ve Windows arasındaki farklardan biri, çoğu Unix pencere yöneticisinin pencerelerin ekranın kenarlarındaki hareketine karşı direnç sağlamasıdır. Bu nedenle pencereleri ekranın sol veya sağ kenarına taşımak için özel komutlara ihtiyacınız yoktur; sadece birini bir kenara doğru sürükleyin ve oraya ulaştığında duracaktır. Pencereleri hareket ettiren herhangi bir Gnome (şimdilik standart Ubuntu pencere yöneticisi) klavye kısayollarını bilmiyorum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.