From f41b9942af7278ab67dc799ad6c17ad74dc0aa1b Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 16 Sep 2008 19:11:40 +0200 Subject: 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 --- lyrics/lyricswiki.rb | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100755 lyrics/lyricswiki.rb (limited to 'lyrics/lyricswiki.rb') diff --git a/lyrics/lyricswiki.rb b/lyrics/lyricswiki.rb new file mode 100755 index 000000000..39aa4a5b7 --- /dev/null +++ b/lyrics/lyricswiki.rb @@ -0,0 +1,16 @@ +#!/usr/bin/env ruby +# +# Load lyrics from lyricswiki.org +# +# Author: Max Kellermann +# + +require 'uri' +require 'net/http' + +url = "http://lyricwiki.org/api.php" + \ + "?artist=#{URI.escape(ARGV[0])}&song=#{URI.escape(ARGV[1])}" +response = Net::HTTP.get(URI.parse(url)) + +exit(2) unless response =~ /
\s*(.*?)\s*<\/pre>/im
+puts $1
-- 
cgit v1.2.3