उबंटू के लिए विंडो स्नैपिंग का उपयोग कैसे करें? [डुप्लिकेट]


14

संभव डुप्लिकेट:
winkey + तीर का अनुकरण कैसे करें विंडोज 7 की अधिकतम शॉर्टकट कुंजी?

मैं उबंटू की कोशिश कर रहा हूं और मैं चाहता हूं कि जब मैं हॉटकीज़ विंडो की + एरो का उपयोग करूं तो मेरी विंडोज़ की बाईं और दाईं ओर विंडोज 7 की तरह स्नैप हो। मैं यह कैसे कर सकता हूँ?


उबंटू विंडो प्रभाव प्रदान करने के लिए Compiz का उपयोग करता है। मैंने देखा है, लेकिन Compiz के लिए कोई भी आधिकारिक प्लगइन नहीं देख सकता है जो आपको वह विन 7 इफेक्ट देगा जो एक अच्छा विंडो फीचर है। मैं देख रहा हूँ और एक उत्तर के रूप में पोस्ट अगर मैं कुछ मिल जाएगा।

जवाबों:


18

यह CompizConfig सेटिंग्स प्रबंधक से सक्षम करना आसान है। (इसे स्थापित करें, यदि आपने पहले से नहीं किया है)।

फिर विंडो प्रबंधन के तहत, ग्रिड सक्षम करें। मैंने CTRL + ALT + NumPad की डिफ़ॉल्ट बाइंडिंग रखी है, लेकिन आप इसे आसानी से सुपर + एरो में बदल सकते हैं।


केवल एक चीज जो मुझे याद आ रही है वह है क्रियाओं का संयोजन। यानी खिड़की के दाईं ओर और नीचे के परिणामों के लिए एक खिड़की चलती है जो स्क्रीन के निचले दाहिने हिस्से में होती है (विंडोज़ व्यवहार के समान)।
kleinfreund

@kleinfreund अगर आप Gridचेकबॉक्स के बगल वाले बटन पर क्लिक करते हैं तो बहुत सारी सेटिंग्स हैं जिन्हें आप बदल सकते हैं; Corners / Edgesटैब आप कोने डॉकिंग की स्थापना की सुविधा देता है।
swref

यह पॉप ओएस 18.10 पर काम नहीं करता है, मुख्य शॉर्टकट, वे कुछ भी नहीं करते हैं
Zach ब्लूमक्विस्ट

4

माइक के उबंटू से एक मानव पठनीय रूप में पूर्ण निर्देशों के लिए यहां जाएं , (धन्यवाद माइक) और यहां मूल उबंटू फोरम पोस्ट (धन्यवाद गोटसनिटी) है। मैंने इसे अपने सिस्टम पर चेक किया है, इसलिए इसे आपके लिए काम करना चाहिए। मैंने भी इसे थोड़ा समझने की कोशिश करने के लिए थोड़ा जोड़ा और संपादित किया है।

केवल एक ही बदलाव जो मैं उसकी दिशाओं में करूँगा, वह यह है कि आप पहले यह देख लें कि क्या आपने कंपीज़ स्थापित किया है (सबसे आसान तरीका सॉफ्टवेयर मैनेजर का उपयोग करना है और सर्च विंडो में "कॉम्पिज़" डालना है।

यदि आप करते हैं तो एक टर्मिनल में निम्नलिखित लिखें: -

sudo apt-get install compizconfig-settings-manager wmctrl

अन्यथा Compiz सेटिंग्स मैनेजर आपके सिस्टम पर मौजूद नहीं होगा।

एक टर्मिनल खोलें और टाइप करें:

xinput list

यह एक सूची प्रदर्शित करेगा। अपने माउस के लिए अपना आईडी नंबर ढूंढें। आपको अगले चरणों में इस नंबर की आवश्यकता होगी। मेरा 10. था। आपका बहुत अलग होगा।
ये अगली कमांड आपके होम फोल्डर में एक नया हिडन फोल्डर बनाते हैं जो आवश्यक स्क्रिप्ट को पकड़ कर आपको उसमें ले जाता है।

mkdir .scripts

cd .scripts

फिर टाइप करें

gedit compizsnap-left.sh    

एक पाठ संपादक पॉप जाएगा। इसमें पेस्ट करें, और फिर अपनी माउस आईडी को "xinput सूची" कमांड के आउटपुट से संख्या में बदल दें । जब आपने ऐसा कर लिया है, तो फ़ाइल को सहेजें।

#!/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    

फिर, अन्य दो लिपियों के लिए भी ऐसा ही करें। (माउस आईडी बदलने के लिए मत भूलना)

compizsnap-right.sh

कोड:

#!/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    

तथा

compizsnap-max.sh

कोड:

#!/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    

(क्या आपको माउस आईडी बदलना याद है)

अब हमें यह बताने की जरूरत है कि स्क्रीन के दाएं, ऊपर और बाएं मूव करने पर कैसे व्यवहार करना है।

सिस्टम चलाएँ> वरीयताएँ> CompizConfig सेटिंग्स प्रबंधक। कमांड सेक्शन में जाएं। निम्नलिखित सेट करें:
कमांड 0 फ़ील्ड में:

sh ~/.scripts/compizsnap-left.sh

कमांड 1 फ़ील्ड में:

sh ~/.scripts/compizsnap-right.sh

कमांड 2 फ़ील्ड में:

sh ~/.scripts/compizsnap-max.sh

अंत में, एज बाइंडिंग टैब पर जाएं और कमांड 0 को लेफ्ट में सेट करें, कमांड 1 से दाईं ओर सेट करें और कमांड 2 को टॉप पर सेट करें।

एनबी कॉम्पिज़ शिकायत कर सकते हैं कि पहले से ही किनारे के बाइंडिंग के लिए निर्धारित फ़ंक्शन हैं जो आप उपयोग करना चाहते हैं - उन्हें अपने साथ बदलें।


यह बहुत अच्छा काम करता है, ट्विन व्यू कॉन्फ़िगरेशन में दो मॉनिटर के साथ काम करने के तरीके के बारे में कोई सुझाव।
नाथन श्वरमन

2

अधिकांश यूनिक्स विंडो प्रबंधकों और विंडोज के बीच एक अंतर यह है कि अधिकांश यूनिक्स विंडो प्रबंधक स्क्रीन के किनारों पर खिड़कियों की आवाजाही के लिए प्रतिरोध प्रदान करते हैं। इसलिए आपको स्क्रीन के बाएं या दाएं किनारे पर खिड़कियों को स्थानांतरित करने के लिए किसी विशेष कमांड की आवश्यकता नहीं है; बस एक को एक किनारे की ओर खींचें और जब यह वहां पहुंच जाएगा तो यह रुक जाएगा। मैं किसी भी गनोम (अब के लिए मानक उबंटू विंडो प्रबंधक) को कीबोर्ड शॉर्टकट नहीं जानता हूं जो विंडोज़ को स्थानांतरित करते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.