[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-bugs-dist
Subject: [Bug 76462] New: wishlist: support for user-specified scripts on
From: Justin Mason <jm-kde () jmason ! org>
Date: 2004-02-29 22:58:09
Message-ID: 20040229225809.20782.qmail () ktown ! kde ! org
[Download RAW message or body]
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
http://bugs.kde.org/show_bug.cgi?id=76462
Summary: wishlist: support for user-specified scripts on song-
change event
Product: juk
Version: unspecified
Platform: Debian testing
OS/Version: Linux
Status: UNCONFIRMED
Severity: wishlist
Priority: NOR
Component: general
AssignedTo: wheeler kde org
ReportedBy: jm-kde jmason org
Version: (using KDE KDE 3.2.0)
Installed from: Debian testing/unstable Packages
OS: Linux
Me again. Another wishlist item, this time from xmms: support for song-change events.
Xmms has a nifty plugin called "song-change". When a song is changed (e.g. start playing from Stop, or \
one track ends and the next one in the playlist starts), it will expand a user-specified command-line \
with a couple of %-escapes, and run it.
It's kind of cool for hooking all sorts of rubbish into the player, without causing too much overhead in \
the player code ;) . By just expanding a command line and running it, that's a very small amount of \
overhead in code terms -- and works pretty well in terms of speed overhead, too, since a song-change \
event doesn't happen that frequently.
Security-wise, it'd probably be best to remove all newline, ' and " chars -- or instead just take a \
CGI-type approach and pass the metadata to the script in predefined environment variables like \
"$JUK_SONG_ARTIST" etc.
For example, my .xmms/config has:
enabled_gplugins=libsong_change.so
[song_change]
cmd_line=xmms-song-change.sh "%s"
cmd_line_end=
and that script does:
#!/bin/sh
if [ "$*" = "`cat ~/.xmms.cur`" ] ; then
exit 0
fi
echo "$*" > ~/.xmms.cur
echo "$*" >> ~/.xmms.log
#echo "Song: $*" | set-osd
pretty simple -- logs all songs played into ~/.xmms.log and sets the on-screen-display (or at least it \
did before I turned that off). Then I have another shell script which takes ~/.xmms.log and generates a \
HTML snippet for inclusion on my weblog's front page, hacky hack ;)
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic