Compléments à la documentation Conky
Les codes donnés ci dessous sont à placer après la section TEXT de votre conkyrc
Références des Variables
Si vous desirez juste sur votre Conky, ce que vous ecoutez sur Rhythmbox, voici la portion à rajouter dans votre .conkyrc
${color lightgrey}Now Playing : ${exec rhythmbox-client --print-playing}
Pour une version plus complète, il suffit de regarder le manuel de rhythmbox-client pour imaginer
${color lightgrey}RhythmBox Now Playing : ${alignc}${exec rhythmbox-client --print-playing-format "%ta - %at"} ${alignc}${exec rhythmbox-client --print-playing-format "%tn - %tt"}
Les différents scripts conky pour Rhythmbox lancent Rhythmbox pour récupérer des informations sur le morceau en cours. Cela peut ralentir votre ordinateur, et laisse Rhythmbox en marche, ce qui n'est pas forcément utile. On peut remédier à ce problème en insérant le code suivant autour des commandes qui récupèrent les informations sur Rhythmbox.
${if_running rhythmbox} # commandes en relations avec Rhythmbox $endif
Il existe aussi un script (que j'ai créé à l'instant)1), assez basique, qui permet de récupérer les pochettes des CD depuis le dossier ~/.cache/rhythmbox/covers/
. Il fonctionne à l'aide d'un petit script bash.
Script "conky_album_cover"
#!/bin/bash album=$(rhythmbox-client --print-playing-format "%ta - %at") fichier="$HOME/.cache/rhythmbox/covers/$album.jpg" if test -s "$fichier" then ln -sf "$fichier" "$HOME/.conky_cover.jpg" else if test -s "$HOME/.conky_cover.jpg" then rm "$HOME/.conky_cover.jpg" fi fi
Et pour votre .conkyrc
${exec ~/.script/conky_album_cover}${image ~/.conky_cover.jpg -n -p 240,640 -s 64x64}
240
et 640
par les coordonnées de l'endroit où afficher la pochette, et adapter l'adresse du script.
conky_rhythmbox_bar2)
#!/bin/bash #Par Ph3nix_ convert_sec() { min=`echo $1 | cut -d':' -f1` sec=`echo $1 | cut -d':' -f2` [ ${sec:0:1} = '0' ] && sec=${sec:1:2} res=$((min*60+sec)) } convert_sec $(rhythmbox-client --print-playing-format "%te") now=$res convert_sec $(rhythmbox-client --print-playing-format "%td") [ $res -eq 0 ] && echo 0 && exit echo ` echo "$now*100/$res" | bc -l`
.conkyrc
${execbar ~/.script/conky_rhythmbox_bar}
Audacious intègre un outil dédié très pratique : "audtool". Celui-ci fourni des informations console qui peuvent être utilisé ensuite pour des programmes tels que Conky.
Pour cela, il faut rajouter des "exec audtool <commande>" dans votre script, par exemple :
${color #e49c16}Audacious:${color white} ${exec audtool --current-song-length} ${exec audtool --current-song-bitrate-kbps} kbps ${exec audtool --current-song | cut -b-50} ${color #ffc11f}${execbar expr 99 \* $(audtool --current-song-output-length-seconds) \/ $(audtool --current-song-length-seconds)}
Pour plus de commandes :
man audtool
Attention tout de même, si Audacious n'est pas lancé, vous aurez des messages d'erreur. Ceux-ci peuvent déformer Conky, alors pour éviter cela, il faut bidouiller l'argument "maximum_width" dans l'en-tête (350 semble être une valeur correcte pour du 1024*768 :)).
Moi j'ai une formule simple pour éviter le message d'erreur : ${if_running audacious} au début de la partie "audacious", puis on ajoute à la fin de cette partie : $endif on pourra "bidouiller" pour rajouter des choses comme une barre etc… mais ça je sais pas faire.
Ainsi on peut faire comme conseillé sur un site anglais :
${if_running audacious} ${color black}AUD:${color #C0C8CD} ${exec audtool --current-song | cut -b-34} ${color #C0C8CD} ${exec audtool --current-song-bitrate-kbps} kbps * ${exec audtool --current-song-length} ${execbar expr 100 \* $(audtool --current-song-output-length-seconds) \/ $(audtool --current-song-length-seconds)} ${color black}${hr 2}$endif
Selon les versions d'audacious, ${if_running audacious} doit être remplacé par ${if_running audacious2}
Si vous souhaitez rajouter la pochette du CD, voici un petit script (en reprenant le script plus vu plus haut)
#!/bin/bash IFS=$'\n' coverPath=$HOME$(audtool --current-song-tuple-data file-path | sed -e 's/~//') image=$(ls -1 $coverPath | grep '\.\(jpg\|jpeg\)' | grep -m 1 '.*') fullPath=$coverPath/$image if test -s "$fullPath" then ln -sf "$fullPath" "$HOME/.conky_cover.jpg" else if test -s "$HOME/.conky_cover.jpg" then rm "$HOME/.conky_cover.jpg" fi fi
Pour le .conkyrc il suffit d'utiliser le code vu plus haut
Conky peut afficher les informations de lecture de gmusicbrowser grâce à un patch créé par l'auteur Quentin Sculo ; par contre, cela nécessite de compiler soi-même conky depuis les sources. Pas de panique cependant, un How-To est disponible ici.
Contributeurs: moi.néo, McPeter, ljere, TheCaméléon (script pour les pochettes), Heziode (script pour afficher la pochette du CD avec Audacious)