Sonata : Recherche sur Wikipédia en français
Utilisant depuis peu Sonata ( qui pour rappel est une interface graphique à MPD ), j’ai eu une désagréable surprise. Rien de bien grave mais la fonction de recherche d’informations sur les artistes pointe automatiquement vers le site anglophone de Wikipédia. Vous avez sûrement compris : Une recherche sur http://fr.wikipedia.org/ est bien plus adéquate !
Ayant un peu de temps à perdre, je me suis mis en tête de résoudre ce petit désagrément. Cette article n’a rien d’exceptionnel, il indique juste pas à pas la démarche effectuée par mes soins… Rien de bien difficile à vrai dire, mais cela prouve que les systèmes GNU/Linux possèdent bien des avantages .
How to :
Premièrement, il faut rechercher la location des fichiers concernant Sonata :
$ locate sonata /home/gnu/.config/sonata /home/gnu/.config/sonata/art_cache /home/gnu/.config/sonata/sonatarc /usr/bin/sonata /usr/lib/python2.6/site-packages/sonata /usr/lib/python2.6/site-packages/sonata/__init__.py /usr/lib/python2.6/site-packages/sonata/__init__.pyc /usr/lib/python2.6/site-packages/sonata/about.py ...
À priori, une recherche du terme « wikipédia » dans le répertoire /usr/lib/python2.6/site-packages/sonata doit suffire…
$ grep -r "wikipedia" /usr/lib/python2.6/site-packages/sonata /usr/lib/python2.6/site-packages/sonata/main.py: browser_not_loaded = not misc.browser_load("http://www.fr.wikipedia.org/wiki/Special:Search/" + urllib.quote(mpdh.get(self.songinfo, 'artist')), self.config.url_browser, self.window) /usr/lib/python2.6/site-packages/sonata/main.py: browser_not_loaded = not misc.browser_load("http://www.fr.wikipedia.org/wiki/Special:Search/" + urllib.quote(mpdh.get(self.songinfo, 'album')), self.config.url_browser, self.window) ...
Bingo ! Le terme « wikipedia » est bien présent dans le fichier main.py, il ne reste plus qu’à le modifier :
# nano /usr/lib/python2.6/site-packages/sonata/main.py
def on_link_click(self, type): browser_not_loaded = False if type == 'artist': browser_not_loaded = not misc.browser_load("http://www.fr.wikipedia.org/wiki/Special:Search/" + urllib.quote(mpdh.get(self.songinfo, 'artist')), self.config.url_browser, self.window) elif type == 'album': browser_not_loaded = not misc.browser_load("http://www.fr.wikipedia.org/wiki/Special:Search/" + urllib.quote(mpdh.get(self.songinfo, 'album')), self.config.url_browser, self.window)
Astuce : Pour effectuer une recherche avec nano appuyez sur les touches Ctrl + H
Sauvegarde du fichier et un petit test : Ça fonctionne .
Pour finir, voici la version utilisée de Sonata sur mon Archlinux :
$ yaourt -Si sonata Dépôt : extra Nom : sonata Version : 1.6.2.1-1 URL : http://sonata.berlios.de/ Licences : GPL3 Groupes : -- Fournit : -- Dépend de : pygtk python-mpd Dépendances opt. : gnome-python-extras: Enhanced system tray support tagpy: Metadata editing support zsi: Lyrics fetching support dbus-python: Various extra functionality (e.g. multimedia keys support) Est en conflit avec : -- Remplace : -- A télécharger : 503,11 K Taille (installé) : 1976,00 K Paqueteur : Andrea Scarpino Architecture : i686 Compilé le : dim. 04 oct. 2009 15:24:15 CEST somme MD5 : 3540c1c796a3457028fbe672c2e9f623 Description : Elegant GTK+ music client for MPD