-
Notifications
You must be signed in to change notification settings - Fork 602
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[lyrics] Romanization toggle for Genius plugin #1039
Conversation
…rks as intended as well as config but langauge detection is hard
… it appends it onto the query used for searching along with song title
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left some code review, note that I didn't actually test it yet.
also you should change the name of the PR to be more like [lyrics] Added romanization option
since this has nothing to do with either in-app-menu or a "side menu"
thanks 👍🏼
Currently reworking detection for east Asian language songs! |
Will Indian languages be possible 🤓 I'm not really sure if Genius/Musixmatch has a good database of lyrics for Indian songs though. Lyrics are either in native script or in romanized script, but there doesn't seem to be a pattern, and it just seems to be the fancy of whoever uploaded the lyrics 😅 |
Honestly I'd love to take a look at that after I finish implementing this for East Asian songs! (I'm not sure how Indian language scripts work with Unicode and stuff but if it exists there's probably a way) Also love your profile widgets lol |
Yeah, me neither. I mostly listen to Malayalam songs, and I only know to read Hindi besides Malayalam. Since we are a relatively small state, the lyrics available are sort of random, like I mentioned before. I did a bit of digging on Genius, and first of all, very few Malayalam songs have lyrics available. The ones that I did find had romanized lyrics already, so that's that. (See this, this, and this). Musixmatch has some lyrics in native script though, in case you want to take a look (See this and this; I'm not able to view these lyrics on the Musixmatch website because it's apparently "restricted"). I'm wondering, would it be possible to convert romanized lyrics back to native script if Genius/Musixmatch has the romanized version 🤔
You mean my README? Thanks; took me plenty of time to set up 🤭 Edit: I realize now that the romanization is an option inherent in Genius, and not something that you implemented. In this case it probably won't be possible to support Malayalam, and also won't be possible to convert romanized lyrics back to native script. Just hoping Genius implements a good Malayalam database soon (Genius doesn't support community contributions right?)! Edit 2: Musixmatch has a good implementation of Malayalam lyrics with romanization support. See this. Would it be possible to add a similar toggle for Musixmatch or is it too much work? Also, and this is really awkward, but I don't exactly understand how the Genius plugin works. How does it decide when to replace the Musixmatch lyrics with the Genius one? And is there any benefit to using Genius over Musixmatch or is it just a fallback for when Musixmatch doesn't have lyrics for any one song? I suspect Musixmatch will soon become more popular due to the amazing integrations with Spoify, YTM, Amazon Music, Google Search, etc. |
they have a free api from what I see https://github.com/musixmatch/musixmatch-sdk EDIT: 2k calls is absolutely nothing since this app has alot of downloads |
No, but YTM natively supports Musixmatch. Would it be hard to intercept those API calls? I haven't worked with this before, so I'm really not sure if it's like relatively easy to implement or near impossible. |
It does seem that in some cases the lyrics are overrided with other sites like Musixmatch and I can't do much in those scenarios, but for the instances where Genius Lyrics is used it works |
I'll be pushing my updated version soon |
Alright this is it; take a look at the updated screenshots I've included in the description! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM (codewise, haven't actually tested the functionality)
Co-authored-by: Araxeus <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@DereC4 The merge conflict should be simple to resolve,
use your incoming changes but replace encodeURI
with encodeURIComponent
- `https://genius.com/api/search/multi?per_page=5&q=${encodeURI(queryString)}`
+ `https://genius.com/api/search/multi?per_page=5&q=${encodeURIComponent(queryString)}`
will do |
I meant you should update from the main branch and resolve the merge conflict, not make a new commit 😅 Could you update from master now? |
ohh |
Made some progress #1092 regarding Musixmatch interception |
Adds a side menu to the genius-lyrics plugin
Adds a romanization toggle to the side menu allowing song lyrics in East Asian languages to be converted to their romanized forms
I've been exploring other methods right now and the one implemented is non invasive (doesn't interfere with other lyrics) which I believe is the best result
Screenshots:
Prior behavior

With romanization toggle
