Wiki-Lyrics

Amarok 1.x Scripts

Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net

0
Score 50.0%
Description:

A lyrics script to interface with various sites and, optionally, submit content to Lyriki.com or LyricWiki.org (wikis for lyrics). Lyrics can be searched on multiple sites according to a configurable priority.

Supported sites:
- Lyriki (www.lyriki.com)
- LyricWiki (www.lyricwiki.org)
- AZ Lyrics (www.azlyrics.com)
- Baidu MP3 (mp3.baidu.com)
- Dark Lyrics (www.darklyrics.com)
- Giitaayan (www.giitaayan.com)
- Jamendo (www.jamendo.com)
- Leos Lyrics (www.leoslyrics.com)
- Lyrc (lyrc.com.ar)
- Lyrics Download (www.lyricsdownload.com)
- Lyrics Mania (www.lyricsmania.com)
- Not Popular (www.notpopular.com)
- Seek Lyrics (www.seeklyrics.com)
- Sing365 (www.sing365.com)
- Terra Letras (letras.terra.com.br)

Dependencies:
- Amarok 1.4
- Ruby 1.8
- QtRuby, Ruby/GTK or Ruby/Tk

Translators wanted:
If you want to help, translate the script into your language and send me the result
(take a look at the i18n folder and ask if you need any help).


Important!!
The settings file format changed in version 0.13.2 so the old file must be removed when upgrading from versions of the script older than that one. Running the following command should take care of it:
rm $HOME/.kde/share/apps/amarok/scripts-data/wikilyrics.xml
Last changelog:

10 years ago

Version 0.13.4
- [fix] update LyricWiki plugin to match site change
- [fix] update Jamendo plugin to match site changes

Version 0.13.3
- [change] search dcop program on predefined locations if not found in PATH (*)
- [fix] update Sing365 plugin to match site changes
- [fix] bug in Jamendo plugin removed line break from lyrics

(*) Fixes the script when using Amarok 1.4 on KDE4 with Gentoo (and probably other distros too)

Version 0.13.2
- [new] the script can now spawn threads to handle Amarok messages
- [new] added option to disable using threads (Ruby threads are not battery/power friendly...)
- [new] removed all unnecessary usage of threads (parsing Amarok messages, Tk GUI backend)
- [fix] check if song page exists before attempting to submit it (wiki plugins)
- [fix] relogin when session expires (wiki plugins)
- [fix] parsing of suggestions in wiki plugins
- [fix] update Dark Lyrics plugin to match site changes
- [fix] update Jamendo plugin to match site changes
- [fix] update Lyrics Download plugin to match site changes
- [fix] update Seek Lyrics plugin to match site changes
- [change] replaced NotPopular.com plugin with LoudSon.gs plugin (NotPopular.com site lyrics now point to LoudSon.gs)
- [change] removed Lyrc plugin as site has been down for more than a month
- [change] removed Baidu MP3 plugin as site no longer provides lyrics

boyska

10 years ago

Hi, I see that it has some problems with ruby1.9
I don't know ruby very well, so I can't tell you further, but seems that the cli interface is not working properly.
I'm very much interested on this project because I want to use it as a swiss-army-knife for lyrics, to be used from more than just amarok!

Hey, and thank you for that great code! ;)

Report

Mikage

10 years ago

hello,
any chances this will be ported to amarok 2.x?

thanks!

Report

C

attendant

10 years ago

probably at some point in the future. many changes are required by the new scripting framework (including porting everything to JS) and I don't have the time do it right now.

Report

gimox

10 years ago

What i have to do for installing it? :(

Report

C

attendant

10 years ago

To install any Amarok script, select the "Script Manager" entry in the "Tools" menu and click the "Get More Scripts" button. You'll see a list with available scripts, select the one you wish to install and click the "Install" button. Alternately, you can download the package manually from this site and use the "Install script" button in the Script Manager to select the downloaded file.

Report

federr77

10 years ago

Hi! I'm having problems to fetch lyrics of songs with special characters (In spanish: "tildes" or "acentos") in artist or song name.
I'm a programmer (but not a Ruby one), so with the help of the log I discovered a workaround: comment out the line: -->Strings.titlecase!( title, true, downcase )<-- in the cleanup_title_token! function of the files lyrics_Lyriki.rb and lyrics_LyricWiki.rb .
I know, I know (actually I supose it) the real solution is to fix the problem in the titlecase! function in strings.rb file, but I'm not a Ruby programmer :P
I dont know if this has a downside (It just works for me).
Hope it helps!

Great script !!

Report

evod

10 years ago

thanks for this great script, finally I can see lyrics for which ever-down standard lyric script could never even think of!

all thumbs up!

Report

gymnart

10 years ago

Will the script update work on an older system?

I am running SuSE 10.0 and I have Wiki Lyrics v0.12.8 installed and running nicely right now and amarok-1.4.7 and ruby-1.8 installed.

As for QT, I have gtk-qt-engine, and among others, qt3-3.3 installed as well as other qt apps/dependencies.

The reason I'm asking is that sometimes, the script does not seem to work, or it delays and I am afraid that the script version that I am running might become incompatible with the server or something.

Report

C

attendant

10 years ago

the script should update without problems but you'll need to remove the old script config file. doing the following should do the trick:
rm $HOME/.kde/share/apps/amarok/scripts-data/wikilyrics.xml

Report

fairman

10 years ago

Thanks for good script. I have one request. Does it possible to change encoding of the downloaded text? I am from Czech Republic and we have some special chars and they cause problems.

Something in Ruby like "
$user_defined='UTF-8'
$text=set_encoding($user_defined)"; :)

Thanks a lot.

Report

C

attendant

10 years ago

The encoding for the downloaded lyrics does not depends on your locale but on the settings of the relevant lyrics site. If you are seeing garbled data then either some site is returning bad data or the corresponding plugin needs updating. Tell me which site(s) you are using and the song(s) you are having troubles with and I'll try to fix the problem.

Report

Mikage

11 years ago

hi!
notpopular.com recently changed to www.loudson.gs and also the php code changed

it would be awesome if you could update your script

thanks a lot!
Andrea

Report

C

attendant

11 years ago

notpopular.com was replaced with www.loudson.gs in version 0.13.2.

Report

Mikage

11 years ago

thanks i didn't notice that in the changelog

Report

glen

11 years ago

note that last version was 0.13.3, not 0.13.2 :)

but i started having such weird errors with 0.13.2, and persists with 0.13.3, what is broken in my system? i don't recall updating ruby or related on my system.

Error loading Qt3 GUI backend: no such file to load -- Qt
Error loading Qt4 GUI backend: no such file to load -- Qt
Error loading GTK GUI backend: no such file to load -- gtk2
/usr/share/apps/amarok/scripts/wiki_lyrics/amarok/plugins.rb:70:in `used_names=': undefined method `uniq' for #<String:0x2ad4aebb3ae8> (NoMethodError)
from /usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:119:in `read_config'
from /usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:398:in `exec'
from /usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:573

my ruby ver: 1.8.5p2

Report

C

attendant

11 years ago

have you tried removing the script settings?
rm $HOME/.kde/share/apps/amarok/scripts-data/wikilyrics.xml

Report

glen

11 years ago

thanks, renaming it helped!

mv $HOME/.kde/share/apps/amarok/scripts-data/wikilyrics.xml{,.broken}


however i saved broken copy as
http://glen.alkohol.ee/wikilyrics.xml
so you could debug and fix :)

Report

JunCTionS

11 years ago

Hi!, thanks for this script I really like it. And love how it helps contribute to the Wikilyrics quite easily.
I'm an avid listener of free music from Jamendo, so I really like how it includes it in the search.
Although it seems it's a bit broken since it doesn't import the carrier returns (it places the jamendo lyrics in one big line).

And on a final note: How difficult would it be to add a timestamp feature? So that the lyrics would be highlighted on the line that's being sung.

Thanks again for this really good script

Report

lazyboy

11 years ago

Any chance you could port this to Amarok 2?
The default lyricwiki script kinda sux :)
Cheers

Report

arkoldthos

11 years ago

Would love it, Amarok 2 lyric thingies sux :(

Report

C

attendant

11 years ago

Not in the short term.
The scripting framework in Amarok has changed radically. Amongst other things, I would have to port all of the code (which is quite a lot) from Ruby to JavaScript. That's unfortunate not only because I'm not very knowledgeable of that language, but also because it seems to have many drawbacks compared to using a general scripting language. I had written the script in a way that could be interface agnostic (even though there were only an Amarok and a command line interface, adapters for other players could be written). Porting it would probably mean the script can only be used from Amarok and that's an idea I'm not completely sold on. That might change once Amarok 2 gets in a state that (IMO) justifies upgrading from 1.4.

Report

partizann

11 years ago

Hi,
it's realy great script, but...
I discover in powertop that this script couse too many CPU wakeups:

( 98,7) ruby : do_nanosleep (hrtimer_wakeup)

When the script is stoped, the interrupts disapears (i tried some other scripts but they dont generate interrupts).
I hope it will help to improve and fix this script.

Report

C

attendant

11 years ago

does installing QtRuby or RubyGTK solve this?

Report

partizann

11 years ago

After instaled ruby-gtk2 its still the same:

( 99,5) ruby : do_nanosleep (hrtimer_wakeup)

i have some problems with compiling ruby-qt4 so i doesnt try it now.

Report

glen

11 years ago

nothing critical, but you might want to be informed. i clicked configure plugin in amarok, and then pressed three times cancel (one for app, and two for lyrics submit) and then the script died with this log:

Error loading Qt3 GUI backend: no such file to load -- Qt
Error loading Qt4 GUI backend: no such file to load -- Qt
Error loading GTK GUI backend: no such file to load -- gtk2
uninitialized constant REXML::Formatters
/usr/share/apps/amarok/scripts/wiki_lyrics/utils/xmlhash.rb:44:in `write'
/usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:127:in `write_config'
/usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:158:in `on_configure'
/usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:471:in `run_worker'
/usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:465:in `loop'
/usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:465:in `run_worker'
/usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:421:in `exec'
/usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:418:in `initialize'
/usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:418:in `new'
/usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:418:in `exec'
/usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:558/usr/share/apps/amarok/scripts/wiki_lyrics/utils/xmlhash.rb:44:in `write': uninitialized constant REXML::Formatters (NameError)
from /usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:127:in `write_config'
from /usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:132:in `on_quit'
from /usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:442:in `exec'
from /usr/share/apps/amarok/scripts/wiki_lyrics/amarok/wikilyrics.rb:558

Report

10 years ago

Version 0.13.4
- [fix] update LyricWiki plugin to match site change
- [fix] update Jamendo plugin to match site changes

Version 0.13.3
- [change] search dcop program on predefined locations if not found in PATH (*)
- [fix] update Sing365 plugin to match site changes
- [fix] bug in Jamendo plugin removed line break from lyrics

(*) Fixes the script when using Amarok 1.4 on KDE4 with Gentoo (and probably other distros too)

Version 0.13.2
- [new] the script can now spawn threads to handle Amarok messages
- [new] added option to disable using threads (Ruby threads are not battery/power friendly...)
- [new] removed all unnecessary usage of threads (parsing Amarok messages, Tk GUI backend)
- [fix] check if song page exists before attempting to submit it (wiki plugins)
- [fix] relogin when session expires (wiki plugins)
- [fix] parsing of suggestions in wiki plugins
- [fix] update Dark Lyrics plugin to match site changes
- [fix] update Jamendo plugin to match site changes
- [fix] update Lyrics Download plugin to match site changes
- [fix] update Seek Lyrics plugin to match site changes
- [change] replaced NotPopular.com plugin with LoudSon.gs plugin (NotPopular.com site lyrics now point to LoudSon.gs)
- [change] removed Lyrc plugin as site has been down for more than a month
- [change] removed Baidu MP3 plugin as site no longer provides lyrics

12345678910
product-maker Base: 4 x 5.0 Ratings
Be the first to comment
File (click to download) Version Description Downloads Date Filesize DL OCS-Install MD5SUM
*Needs pling-store or ocs-url to install things
Pling
0 Affiliates
Details
license
version
0.13.4
updated Mar 12 2009
added Feb 11 2006
downloads 24h
0
mediaviews 24h 0
pageviews 24h 17
System Tags addon