Je voulais donc être en mesure de pouvoir visualiser d'un coup d'oeil le morceau écouté dans la barre des statuts de Byobu.
Car oui, Byobu vous permet d'écrire vos propres indicateurs. Pour cela, il vous faut seulement créer le répertoire $HOME/.byobu/bin, puis de créer un ficher dont le nom à pour forme fréquence_de_rafraichissement_en_secondes_nom_de_lindicateur.
Tout d'abord il nous faut installer MoC :
sudo apt install moc
Ensuite nous allons créer le répertoire pour les indicateurs personnalisés de Byobu :
mkdir $HOME/.byobu/bin/
Puis on crée le fichier
5_mocp
:vi $HOME/.byobu/bin/5_mocp
Voici le script, écrit en bash :
#!/bin/bash music=$(mocp -i 2>&1) ## check if moc is running function music_info() { mocp -i | grep -i $1 | awk -F": " '{print $2}' } function transform_state() { case $1 in PLAY) echo ">>" ;; STOP) echo "[]" ;; PAUSE) echo "||" ;; esac } if [ $(echo $music | head | awk -F ':' '{print $1}') == 'State' ]; then if [ $(music_info state) != 'STOP' ]; then echo """\ $(transform_state $(music_info state)) \ $(music_info songtitle) \ by $(music_info artist) \ ($(music_info album)) """ else echo """\ $(transform_state $(music_info state)) \ No music played ! """ fi fi
On lui donne les droits d’exécution :
chmod +x $HOME/.byobu/bin/5_mocp
Et voilà :)
Concrètement, si le serveur MoC n'est pas lancé, l'indicateur n'affiche rien. Sinon il affiche la ligne suivante :
$title by $artist ($album)
préfixé par le symbole >>
en cas de lecture, et
||
lorsque le morceau est en pause.Si aucun morceau n'est joué, l'indicateur affiche
[] No music played !
Voici quelques copies d'écran :
Enjoy !
Aucun commentaire:
Enregistrer un commentaire