Çift ekran ortamında sağ tarafta monitörde guake kullanılması

21

Guake 'yi sağ monitörde kullanmak istiyorum.

Bu yüzden bu ppa'yı sudo add-apt-repository ppa:cberner/guake ve sudo apt-get update ile ekledim.

İşte

Talimat, bir şekilde monitor_index 'yi ayarlayabileceğimi söylüyor. Ama nasıl yapılandırılacağını bulamadım.

Birisi bunu biliyor mu?

    
sordu ironsand 06.04.2014 01:09

10 cevap

21

İki monitör kullanıyorum ve Guake 'in sağda gösterilmesini istedim (burada varsayılan olarak soldaki ekranda görüntülenir).

Yaptığım şey, /usr/bin/guake/ adlı dosyamı get_final_window_rect yöntemini değiştirerek düzenlemek:

def get_final_window_rect(self):
    """Gets the final size of the main window of guake. The height
    is the window_height property, width is window_width and the
    horizontal alignment is given by window_alignment.
    """
    screen = self.window.get_screen()
    height = self.client.get_int(KEY('/general/window_height'))
    width = 100
    halignment = self.client.get_int(KEY('/general/window_halignment'))

    # get the rectangle just from the first/default monitor in the
    # future we might create a field to select which monitor you
    # wanna use
    monitor = 1 # use the right most monitor
    window_rect = screen.get_monitor_geometry(monitor)
    # see if we don't have another screen, and if so, use the first one
    if window_rect.width == 0:
        monitor = 0
        window_rect = screen.get_monitor_geometry(monitor)
    total_width = window_rect.width
    window_rect.height = window_rect.height * height / 100
    window_rect.width = window_rect.width * width / 100

    if width < total_width:
        if halignment == ALIGN_CENTER:
            window_rect.x = (total_width - window_rect.width) / 2
            if monitor == 1:
                    right_window_rect = screen.get_monitor_geometry(0)
                    window_rect.x += right_window_rect.width
        elif halignment == ALIGN_LEFT:
            window_rect.x = 0
        elif halignment == ALIGN_RIGHT:
            window_rect.x = total_width - window_rect.width
    window_rect.y = 0
    return window_rect

Temel olarak,% indeksi% endeksi monitör endeksi olarak kullanır ve daha sonra, doğru ekran genişliğini guake penceresinin başlangıç ​​noktası ekranına ekler

Bunun yardımcı olacağını umuyorum!

    
verilen cevap wilfo 30.07.2014 13:04
2

Çözüm çok basittir, çünkü Guake ekranınızı sağ taraftaki monitörünüze hizalamak istediğinizde, ekranın başlangıç ​​pozisyonunda (x, y), y koordinatı aynı olacak, yani 0'dan başlayacaktır. Ancak x koordinatı değişecek ve sol taraftaki monitörünüzün genişliğine eşit olmalıdır. Bunu yapabilmek için 2 şey yapmalısınız.

. Yukarıda önerilen şekilde monitör numarasını 1 olarak değiştirin. Satırda

  

window_rect = screen.get_monitor_geometry (0)

0’ı 1’e değiştirin.

II. İlk ekran genişliğini başlangıç ​​koordinatının x pozisyonuna ekleyin. Bunu yapmak için.

Değiştir

if width < total_width:
    if halignment == ALIGN_CENTER:
        window_rect.x = (total_width - window_rect.width) / 2
    elif halignment == ALIGN_LEFT:
        window_rect.x = 0
    elif halignment == ALIGN_RIGHT:
        window_rect.x = total_width - window_rect.width
window_rect.y = 0
return window_rect

göre

if width < total_width:
     if halignment == ALIGN_CENTER:
         window_rect.x += (total_width - window_rect.width) / 2
     elif halignment == ALIGN_LEFT:
         window_rect.x += 0
     elif halignment == ALIGN_RIGHT:
         window_rect.x += total_width - window_rect.width
window_rect.y = 0
return window_rect

Bu değişiklikleri yaptıktan ve guake'i yeniden başlattıktan sonra (Quit ve tekrar başlat), Guake ekranının istediğiniz hizalamasını almalısınız.

Bunun yardımcı olacağını umarım:)

    
verilen cevap lalit 27.11.2014 09:18
1

Bunu da bir soru olarak yaptım: çift ekran ortamında sağdaki monitörde guake - Ubuntu 15.10 (Wily Werewolf))

Ubuntu 15.10'da guake biraz değişti. Terminalinizi doğru monitöre değiştirmek için düzenlemek zorundasınız:

sudo vim /usr/lib/python2.7/dist-packages/guake/guake_app.py

sonra 831 numaralı satırı değiştirin:

window_rect = screen.get_monitor_geometry(monitor)

için:

window_rect = screen.get_monitor_geometry(1)

guake'i öldür ve yeniden başlat

Herkes bunu daha az hacky yapmak için bir yol biliyor mu?

    
verilen cevap clvx 23.10.2015 16:42
1

lalit dediği gibi, ubuntu 14.04LTS üzerinde bunu bulmanın en iyi yolu değişiyordu

window_rect = screen.get_monitor_geometry(0)

-

window_rect = screen.get_monitor_geometry(0)

ancak değiştiriliyor

    if width < total_width:
    if halignment == ALIGN_CENTER:
        window_rect.x = (total_width - window_rect.width) / 2
    elif halignment == ALIGN_LEFT:
        window_rect.x = 0
    elif halignment == ALIGN_RIGHT:
        window_rect.x = total_width - window_rect.width
window_rect.y = 0
return window_rect

-

 if width < total_width:
     if halignment == ALIGN_CENTER:
         window_rect.x += total_width + (total_width - window_rect.width) / 2
     elif halignment == ALIGN_LEFT:
         window_rect.x += 0
     elif halignment == ALIGN_RIGHT:
         window_rect.x += total_width - window_rect.width
window_rect.y = 0
return window_rect

İlk "if" öğesindeki tek fark, "total_width" ifadesini "window_rect.x" dizinine eklemeden sol monitörümün ortasında görünür.

P.S: Üzgünüz Lalit, ancak henüz puan almadığımdan yayınınıza yorum ekleyemiyorum = (

    
verilen cevap Ramiro R.C. 11.12.2015 13:41
1

Wilfo'nun çözümü bana işe yaramıyor. Benim durumumda, aşağıdaki kodla Linux Mint'te çözdüm:

def get_final_window_rect(self):
    """Gets the final size of the main window of guake. The height
    is the window_height property, width is window_width and the
    horizontal alignment is given by window_alignment.
    """
    screen = self.window.get_screen()
    height = self.client.get_int(KEY('/general/window_height'))
    width = 100
    halignment = self.client.get_int(KEY('/general/window_halignment'))

    # future we might create a field to select which monitor you
    # wanna use
    #monitor = 0 # use the left most monitor
    monitor = screen.get_n_monitors() - 1 # use the right most monitor

    monitor_rect = screen.get_monitor_geometry(monitor)
    window_rect = monitor_rect.copy()
    window_rect.height = window_rect.height * height / 100
    window_rect.width = window_rect.width * width / 100

    if width < monitor_rect.width:
        if halignment == ALIGN_CENTER:
            window_rect.x = monitor_rect.x + (monitor_rect.width - window_rect.width) / 2
        elif halignment == ALIGN_LEFT:
            window_rect.x = monitor_rect.x
        elif halignment == ALIGN_RIGHT:
            window_rect.x = monitor_rect.x + monitor_rect.width - window_rect.width

    window_rect.y = monitor_rect.y
    return window_rect

Onu buradan alabilirim, ancak 80 'sini 100 olarak değiştirdim.

    
verilen cevap smartmouse 11.12.2015 15:36
1

İyi haber!

0.8.5 sürümünde, aktif monitörde Guake görüntülenir, Yani artık Guake kodunu düzeltmek zorunda değilsin.

    
verilen cevap everlasting-learner 29.06.2016 22:19
0

Bunu test etmedim ama sanırım bir python betiği olduğu için / usr / bin / guake dosyasını düzenleyebilirsiniz.

Bul

window_rect = screen.get_monitor_geometry(0) #line 824 makinemde

tuşuna basın ve 0'ın guake olmasını istediğiniz monitörün dizinine değiştirin.

    
verilen cevap Jack 07.04.2014 20:05
0

Sadece smartmouse'a ve wilfo'nun cevaplarına eklemek için, / usr / bin / guake ile değiştirdikten sonra sert bir yeniden başlatmanız gerekir. Guake seansından çıkış yapmak Guake işlemini bitirmez.

Sistem izleyicisini açın ve guake başvuru işlemini sonlandırın ve yeniden başlatın

    
verilen cevap Anuraag 22.01.2016 22:23
0

Bunu Ubuntu 16.04 LTS'de 2 monitör ile değiştirmek zorunda kaldım.

Yukarıdaki yöntemleri deniyordum ancak kodun o zamandan beri değişmiş olduğunu fark ettim. 2. monitörüm ~/.gconf/apps/guake/general 'sine gidip %gconf.xml düzenledim ve display_n (int) ' sinden 0 'i 1 ' e değiştirdim.

Bunun yardımcı olacağını umarım:)

    
verilen cevap pwnall1337 09.09.2016 17:15
0

Ubuntu 14.04’te deniyorum, Ben sadece o zaman kullandığınız monitöre terminal pop dışarı guake görebilirsiniz aynı monitörde, daha sonra "Göster" i tıklayın ya monitörde guake simgesine (sağ üst ekran) de "Tercihler" tıklamanız gerekir bulundu !!!

    
verilen cevap tony chen 08.02.2017 13:11

Etiketlerdeki diğer soruları oku