MOC et WMFS : Intégration

J’ai pendant longtemps utilisé le combo d’applications MPD + Ncmpcpp pour écouter ma musique, un ensemble qui fonctionne d’ailleurs très bien d’après ma propre expérience. Histoire de changer un peu d’air, j’ai regardé du coté de MOC ( Music On Console ) qui d’un point de vue usage ne m’a vraiment pas déçu ! Simple, efficace et configurable à souhait celui-ci est devenu depuis peu « Mon lecteur audio »

Cet article ne sera pas l’occasion de vous présenter en détail cette application mais plutôt de m’attarder sur son intégration dans le tiling manager WMFS. Une tâche que je viens d’accomplir aujourd’hui et que je vais vous faire partager avec plaisir !

Screenshots :

Installation :

Très simple, ouvrez votre terminal et faites :

# pacman -S moc

Pour connaitre le fonctionnement de MOC en détail :

$ man moc

Configuration du fichier autostart.sh

Comme il est possible de lancer MOC comme un serveur audio, il est de bonne augure de lancer celui-ci dès le démarrage de votre session :

$ vim ~/.config/wmfs/autostart.sh
#!/bin/sh
 
if [ -z $(pidof mocp) ]; then
	mocp -S
fi

Mise en place des raccourcis clavier

Un lecteur de musique sans raccourci clavier est une chose inconcevable pour moi ! Voici ma configuration :

$ vim ~/.config/wmfs/conf.d/keys
[keys]
	# Mocp
	[key] key = "XF86Tools" func = "spawn" cmd = "urxvtc -name mocp -e mocp" [/key]    
 
	# Mocp play/pause
	[key] key = "XF86AudioPlay" func = "spawn" cmd = "mocp -G" [/key]
 
	# Mocp next
	[key] key = "XF86AudioNext" func = "spawn" cmd = "mocp -f" [/key]
 
	# Mocp prev
	[key] key = "XF86AudioPrev" func = "spawn" cmd = "mocp -r " [/key]
[/keys]

Configuration d’un tag spécifique à MOC

Histoire que MOC ne s’ouvre pas dans un tag déjà rempli de clients, je lui est réservé une place bien au chaud :

$ vim ~/.config/wmfs/conf.d/rules
[rules]
	# Mocp tag 8
	[rule]
               instance      = "mocp"		# First part of WM_CLASS
               class         = "mocp"		# Seconf part of WM_CLASS
               screen        = 0		# Screen to use
               tag           = 8		# Tag number of apps
               free          = false		# Set automatic free client
               max           = false		# Set automatic maximized client
               follow_client = true		# follow the client
               ignore_tags   = false		# ignore tag (free mode)
	[/rule]
[/rules]

Configuration du fichier status.sh

Quoi de mieux que d’avoir toujours un œil sur le titre en cours ? Voici une petite idée de script « brut de décoffrage » :

$ vim ~/.config/wmfs/status.sh
_moc () {
if [ -z $(mocp -Q %state | grep PLAY) ]; then
	mus="off"
	moc="$rose [ M: $normal$mus$rose ]"
else
		art=$(mocp -Q %artist)
		tit=$(mocp -Q %song)
	if [ $(echo "$art - $tit" | wc -m) -gt "30" ]; then
		mus=$(echo "$art - $tit"  | cut -b 1-30)
		moc="$rose [ M : $normal$mus...$rose ]"
	else
		mus="$art - $tit"
		moc="$rose [ M : $normal$mus$rose ]"
	fi
fi
}

Ne prenez pas peur en voyant ce bout de script ! On peut surement mieux faire en la matière mais il a le mérite de fonctionner ;) .

Lien :

Dans la même catégorie :

Vus : 1107
Publié par Weedfast : 184