From: Max Kellermann Date: Wed, 28 May 2014 16:18:28 +0000 (+0200) Subject: remove broken leoslyrics plugin X-Git-Tag: v0.22~8 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=55d4e85df12779c61541432685368a6a4f21acd2;p=ncmpc.git remove broken leoslyrics plugin --- diff --git a/Makefile.am b/Makefile.am index 72e93a1..aa984d3 100644 --- a/Makefile.am +++ b/Makefile.am @@ -205,7 +205,7 @@ sparse-check: # lyrics plugins # -lyrics_plugins = lyrics/10-hd.sh lyrics/15-leoslyrics.sh lyrics/20-lyricwiki.rb lyrics/30-leoslyrics.py +lyrics_plugins = lyrics/10-hd.sh lyrics/20-lyricwiki.rb if ENABLE_LYRICS_SCREEN diff --git a/NEWS b/NEWS index d6ebaba..cf73d0a 100644 --- a/NEWS +++ b/NEWS @@ -4,6 +4,7 @@ ncmpc 0.22 - not yet released * require libmpdclient 2.3, MPD 0.16 * patched color line-flags * configuration option "search-format" +* remove broken leoslyrics plugin ncmpc 0.21 - (2013-04-11) diff --git a/lyrics/15-leoslyrics.sh b/lyrics/15-leoslyrics.sh deleted file mode 100755 index 7a119bb..0000000 --- a/lyrics/15-leoslyrics.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash - -set -e - -search="http://api.leoslyrics.com/api_search.php?auth=ncmpc" -lyrics="http://api.leoslyrics.com/api_lyrics.php?auth=ncmpc" -cache="$HOME/.lyrics/$1 - $2.txt" - -hid=$(wget -q -O- "$search&artist=$1&songtitle=$2" | - sed -n 's/.*hid="\([^"]*\)".*exactMatch="true".*/\1/p' | - head -n 1) - -test "$hid" - -mkdir -p "$(dirname "$cache")" - -wget -q -O- "$lyrics&hid=$hid" | awk ' - // { go=1; sub(".*", "") }; - /<\/text>/ { go=0; sub(".*", "") }; - go { sub(" ", ""); print }; -' | tee "$cache" diff --git a/lyrics/30-leoslyrics.py b/lyrics/30-leoslyrics.py deleted file mode 100755 index 87953e8..0000000 --- a/lyrics/30-leoslyrics.py +++ /dev/null @@ -1,96 +0,0 @@ -#!/usr/bin/python -# -# (c) 2004-2008 The Music Player Daemon Project -# http://www.musicpd.org/ -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# - -# -# Load lyrics from leoslyrics.com -# - -from sys import argv, exit, stderr -from urllib import urlencode, urlopen -from xml.sax import make_parser, SAXException -from xml.sax.handler import ContentHandler - -class SearchContentHandler(ContentHandler): - def __init__(self): - self.code = None - self.hid = None - - def startElement(self, name, attrs): - if name == 'response': - self.code = int(attrs['code']) - elif name == 'result': - if self.hid is None or attrs['exactMatch'] == 'true': - self.hid = attrs['hid'] - -def search(artist, title): - query = urlencode({'auth': 'ncmpc', - 'artist': artist, - 'songtitle': title}) - url = "http://api.leoslyrics.com/api_search.php?" + query - try: - f = urlopen(url) - except IOError: - stderr.write("Failed to connect to http://api.leoslyrics.com, it seems down!\n") - exit(1) - handler = SearchContentHandler() - parser = make_parser() - parser.setContentHandler(handler) - try: - parser.parse(f) - except SAXException: - stderr.write("Failed to parse the search result!\n") - exit(1) - return handler.hid - -class LyricsContentHandler(ContentHandler): - def __init__(self): - self.code = None - self.is_text = False - self.text = None - - def startElement(self, name, attrs): - if name == 'text': - self.text = '' - self.is_text = True - else: - self.is_text = False - - def characters(self, chars): - if self.is_text: - self.text += chars - -def lyrics(hid): - query = urlencode({'auth': 'ncmpc', - 'hid': hid}) - url = "http://api.leoslyrics.com/api_lyrics.php?" + query - f = urlopen(url) - handler = LyricsContentHandler() - parser = make_parser() - parser.setContentHandler(handler) - try: - parser.parse(f) - except SAXException: - stderr.write("Failed to parse the lyrics!\n") - exit(1) - return handler.text - -hid = search(argv[1], argv[2]) -if hid is None: - exit(69) -print lyrics(hid).encode('utf-8').rstrip()