Dok sam koristio xmms ispisivanje imena pesme koju trenutno slušam na IRC-u sam radio pomoću plugin-a za Xchat pod imenom Xlack. Nažalost, xmms i dalje koristi GTK1, pa sam počeo da koristim audacious za puštanje muzike. E sad, problem je što Xlack ne podržava preuzimanje imena pesme iz audaciousa, pa sam odlučio da napišem neku skripticu na brzinu. Jeste budž, ali za 10ak minuta kucanja koda, odradiće posao.
Da bi skripta radila, potrebno je da se instalira Song Change plugin za audacious. Pod Gentoo-om ovaj plugin se nalazi u paketu audacious-plugins. Za ostale distribucije ćete morati sami da se snađete. Kada je plugin instaliran potrebno je podesiti neke stvari. Kada ga uključite (nalazi se u General sekciji) pojaviće se nova opcija u Preferences (koja se, naravno, zove Song Change). Tu imate mogućnost da ukucate komande koje će se izvršiti kad počne nova pesma, završi pesma ili kad se dođe do kraja liste. U mom slučaju to ovako izleda:
# na pocetku nove pesme
echo "%s" > /tmp/del-boy-audacious-cur-song
# na kraju pesme
# ostaljamo prazno
# na kraju playliste
rm /tmp/del-boy-audacious-cur-song
Naravno, možete promeniti ime fajla…
Zatim je potrebno da u direktorijum ~/.xchat2 snimite fajli cursong.py sa sledećim sadržajem:
#!/usr/bin/env python __module_name__ = "Currnet song" __module_version__ = "0.1" __module_description__ = "Displays current song played by audacious" __module_author__ = "Bojan Delic del-boy@ns-linux.org" FILE = '/tmp/del-boy-audacious-cur-song' import xchat import re def chomp(s): return re.sub(r"[\r\n]+$", "", s) def getSong(): try: f = open(FILE, 'r') except IOError: return song = f.read() return chomp(song) def song(word, word_eol, userdata=None): if word[0] == 'song': song = getSong() if song: xchat.command("me slusa " + song) return xchat.EAT_ALL xchat.hook_command("song", song, help="/song displays current song")
Eventualno treba da izmenite vrednost promenljive FILE ako ste to uradili i u Song Change plugin-u u audacious-u.
Ugasite i upalite Xchat (ili iskoristite komandu /py load ~/.xchat2/cursong.py) i plugin je spreman za upotrebu. Komanda za prikazivanje pesme je /song.
Svestan sam da ovaj plugin nema veliku upotrebnu vrednost (možda postoji već nešto sličtno što radi istu stvar). U stvari cilj ovoga je bio da se malo upoznam sa python API-jem za Xchat, pa ako nekome usput pomogne super… Ako ne, meni opet super