Pidgin i Conky


Skrypt pidgin_buddies.py, który napisałem, umożliwia wyświetlanie kontaktów online z Pidgin’a w Conky. Skrypt wyświetla aktywne kontakty z podziałem na konta. Kolejność wyświetlania kont można zmienić edytując skrypt – jest to opisane w samym skrypcie.

Najnowszą wersję skryptu, można pobrać z tej strony.

Pobrany skrypt zapisujemy. Edytujemy plik .conkyrc dopisując linijkę:

${texeci 15 /scieżka/do/skryptu/pidgin_buddies.py}

Zamiast texeci możemy użyć dowolnego polecenia Conky do czasowego uruchamiania zewnętrznych programów. Można także zmienić czas co jaki ma być uruchamiany skrypt – tu 15 sekund (pierwsza liczba po texeci). Jeżeli wyświetlane dane były by ucięte należy zwiększyć bufor tekstu dla Conky ustawiając bądź zmieniając parametr text_buffer_size na większy.

Skrypt napisany jest w Python’ie.

UPDATE
Dodano obsługę wyświetlania aktywnych rozmów.

Zrzut z Conky:

pidgin_buddies

, , , , , ,

  1. #1 przez Kayne dnia Luty 1, 2010 - 19:51

    Wszystko fajnie, tylko gdy mam długą nazwę kontaktu, z którym mam otwartą rozmowę, to “rozszerza” mi całe Conky – pomimo ustawienia maksymalnej szerokości. Pomijam już fakt, że ma jeszcze z 50-100 px wolnego miejsca…

    Wiesz w czym rzecz?

  2. #2 przez Daniel 'yp2' Dereziński dnia Luty 5, 2010 - 19:13

    Zobacz tą sekcję w skrypcie pidgin_buddies.py:

    #Conversations
    if len(active_conv) == 0:
    pass
    else:
    print “Rozmowy:”
    for order in order_accounts:
    if active_conv.has_key(order):
    list = active_conv[order]
    list.sort()
    print ‘\n’.join(["%s (%s)" % (ele, order) for ele in list])

    W ostatniej linijce jak będą tabulatory – \t – to je usuń.

    Sprawdź ustawienia conky ja mam ustawioną maksymalną szerokość i nie zmienia mi szerokości samego conky.
    Mój config:
    background yes
    font Liberation Mono:encoding=utf-8:size=8
    #font Dejavu Sans:encoding=utf-8:size=8
    use_xft yes
    override_utf8_locale yes
    #xftalpha 0.1
    update_interval 4
    music_player_interval 5
    total_run_times 0
    own_window yes
    own_window_type override
    own_window_transparent yes
    own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
    double_buffer yes
    draw_shades no
    draw_outline no
    draw_borders no
    draw_graph_borders no
    minimum_size 120 5
    maximum_width 120
    default_color DED5C8
    default_shade_color black
    default_outline_color black
    alignment top_right
    gap_x 470
    gap_y 92
    no_buffers yes
    cpu_avg_samples 2
    net_avg_samples 2
    override_utf8_locale yes
    uppercase no # set to yes if you want all text to be in uppercase
    #use_spacer no
    mpd_host localhost
    mpd_port 6600
    text_buffer_size 10000

    TEXT
    PIDGIN ${hr 1 }${color}
    ${texeci 15 /home/daniel/dokumenty/python/projekty/skrypty/pidgin_buddies.py}

    Stawiam na ustawienia conky.

    Na zrzucie ekranu widać, że conky ucina za duży tekst.
    http://picasaweb.google.pl/daniel.derezinski/Zrzut#5434823452781877874

  3. #3 przez 3ED dnia Maj 20, 2010 - 20:21

    Daniel, brawo, cały python i jego wcięcia, pozatym wklejka jest, po co taki długi komentarz?

  4. #4 przez Daniel 'yp2' Dereziński dnia Maj 20, 2010 - 20:36

    Może racja trochę skopałem :) ale cóż. :). Poniechałem używania tego skryptu bo jakoś dziwnie męczy Pidgin’a.

(nie będzie widoczne)