diff options
author | Max Kellermann <max@duempel.org> | 2008-09-16 19:11:40 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2008-09-16 19:11:40 +0200 |
commit | f41b9942af7278ab67dc799ad6c17ad74dc0aa1b (patch) | |
tree | 69c7c715ff3abd78bb26a7a4d80dd1da5fd5c08b /lyrics/hd.py | |
parent | 4d01c183b4c1e4c51dff3d9aeec1c01ce13a4323 (diff) | |
download | mpd-f41b9942af7278ab67dc799ad6c17ad74dc0aa1b.tar.gz mpd-f41b9942af7278ab67dc799ad6c17ad74dc0aa1b.tar.xz mpd-f41b9942af7278ab67dc799ad6c17ad74dc0aa1b.zip |
lyrics: converted in-process plugins to external programs
In-process plugins are very problematic. It is much easier and
flexible to move the lyrics plugins to external programs, with a
trivial protocol. This is work in progress, among the things missing:
- protocol specification, including exit codes
- plugin installation
- plugin search directory
- run-time configuration (currently hard coded)
- automatic polling (using glib's main loop?)
- better and more robust error handling
Diffstat (limited to 'lyrics/hd.py')
-rwxr-xr-x | lyrics/hd.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/lyrics/hd.py b/lyrics/hd.py new file mode 100755 index 000000000..173342c98 --- /dev/null +++ b/lyrics/hd.py @@ -0,0 +1,22 @@ +#!/usr/bin/python +# +# Load lyrics from the user's home directory +# +# Author: Max Kellermann <max@duempel.org> +# + +from sys import argv, exit, stdout +from os import environ +from os.path import expanduser + +path = expanduser("~/.lyrics/%s - %s.txt" % (argv[1], argv[2])) +try: + f = file(path) +except IOError: + exit(2) + +while True: + x = f.read(4096) + if not x: + break + stdout.write(x) |