Pageinfo

Blog o Linuxu, testování software a linuxových distribucí. Pohled laika i odborníka na téma Linux.

pondělí 16. července 2012

Estetická úprava pluginu Stav IM pro Rhythmbox

Je dost možné, že pokud toto čtete, používáte linuxový přehrávač Rhythmbox.
Zná ho každý linuxák a velmi často je taky jeho uživatelem.
Každý takový program má tu možnost integrovat do sebe pluginy (doplňky).

Pokud používáte taky IM komunikátory jako třeba Pidgin nebo Empathy, znáte určitě plugin Stav IM.
Tento plugin automaticky odesílá názvy právě přehrávaných skladeb do stavového řádku vašeho komunikátoru. Podle popisu funguje programy s Empathy, Gossip a Pidgin.

Nevýhody má ale všechno...

Plugin Stav IM není editovatelný, jednoduše funguje sám bez úpravy.

Odesílá stavy v tomto tvaru:

♫ Autor - Název skladby ♫

Problémem je, že se to nemusí každému líbit a tak jsem našel dobré řešení.

Každý plugin má nějaký soubor, ze kterého funguje. Pokud patří k programu, určitě ja někde v jeho datových složkách.

Střeva Rhythmboxu se nachází v /usr/lib/rhythmbox/, kdo to zkusil, určitě už našel složku plugins. V ní se nachází všechny dostupné pluginy pro Rhythmbox.
Je tam i IM Status.

No a tak napíšeme příkaz do terminálu:

sudo gedit /usr/lib/rhythmbox/plugins/im-status/__init__.py

Otevře se nám okno editoru a v něm modrý text, spousta textu a příkazů. My si jich ale všímat nebudeme a najdeme si odstavec nesmyslů obsahující toto:


    if self.current_artist:
      if self.current_title:
        # Translators: do not translate %(artist)s or %(title)s, they are
        # string substitution markers (like %s) for the artist and title of
        # the current playing song.  They can be reordered if necessary.
        new_status = _(u"♫ %(artist)s - %(title)s ♫") % subs
      elif self.current_album:
        # Translators: do not translate %(artist)s or %(album)s, they are
        # string substitution markers (like %s) for the artist and album name
        # of the current playing song.  They can be reordered if necessary.
        new_status = _(u"♫ %(artist)s - %(album)s ♫") % subs
    elif self.current_album:
      # Translators: do not translate %(album)s, it is a string substitution
      # marker (like %s) for the album name of the current playing song.
      new_status = _(u"♫ %(album)s ♫") % subs
    elif self.current_title:
      # Translators: do not translate %(title)s, it is a string substitution
      # marker (like %s) for the title of the current playing song.
      new_status = _(u"♫ %(title)s ♫") % subs
    else:
      new_status = _(u"♫ Listening to music... ♫")

Na 6. řádku odstavce je v závorce toto: u"♫ %(artist)s - %(title)s ♫".
Jestlize my to přepíšeme na: u"Přávě mi hraje: %(artist)s - %(title)s" 
... zavřeme editor a restartujeme Rhythmbox, po spuštění programu a přehrávání, se zobrazí ve stavu to, co jsme si nastavili. :)

Nakonec může vypadat celý odstavec takhle:

    if self.current_artist:
      if self.current_title:
        # Translators: do not translate %(artist)s or %(title)s, they are
        # string substitution markers (like %s) for the artist and title of
        # the current playing song.  They can be reordered if necessary.
        new_status = _(u"Právě mi hraje:  %(artist)s - %(title)s") % subs
      elif self.current_album:
        # Translators: do not translate %(artist)s or %(album)s, they are
        # string substitution markers (like %s) for the artist and album name
        # of the current playing song.  They can be reordered if necessary.
        new_status = _(u"Právě mi hraje:  %(artist)s - %(album)s") % subs
    elif self.current_album:
      # Translators: do not translate %(album)s, it is a string substitution
      # marker (like %s) for the album name of the current playing song.
      new_status = _(u"Právě mi hraje:  %(album)s") % subs
    elif self.current_title:
      # Translators: do not translate %(title)s, it is a string substitution
      # marker (like %s) for the title of the current playing song.
      new_status = _(u"Právě mi hraje:  %(title)s ") % subs
    else:
      new_status = _(u"♫ Poslouchám hudbu... ♫")

Žádné komentáře:

Okomentovat

Reagujte relevantně.