@loujin, sorry if i am being too persistent on this topic, but how hard it would be to create such script? It will easy my editing on MB a lot, that’s why i am so curious.
Not hard, but the problem is maintaining the scripts in the future, especially scripts I don’t have a use for myself. So just writing it now doesn’t mean I will update it in the future or fix bugs, let that be clear.
That being said, https://github.com/loujine/musicbrainz-scripts/blob/set_writer/mb-reledit-set_rec_artist_as_writer.user.js can copy recording artists to the related works as "writer’ relationships
Thank you, @loujin, but i have now rather a stupid question - how to use it? xD Lets say i have added a new release and now want to create new works and assign (copy using your script) writers there. I open a relationship editor:
Now i select one (or all) recording(s), click batch-create new works and then click an “apply” button from your script to transfer writer credits? Or should i before using your script attach (by submitting) these newly created works to recordings to form a link between them?
Anyway nothing is happening for me either way. The only thing i see after click an “apply” button is editor comment: —
GM script: “MusicBrainz relation editor: Set writer relation from recording artist” (2021.4.4)
I am using tampermonkey on chrome if that matters.
Normally you should first select the recordings you want (with the usual checkboxes) then click Apply. But it seems the script is not working on the release you linked, because there’s no explicit artist credit in the recordings. I’ll have to find another way to find the recording artists
Edit: should be fixed now with version 2021.4.5. Note that the script will need 1 second per recording because I have to use the API to get the necessary info
Thank you, @loujin. This script will be useful a lot.
The only question - is it possible to add credits not as “writers”, but as “composers”? I suppose this line determine that, but i wasnt able to figure how to modify it:
As far as I remember you have to add something like
dialog.relationship().linkTypeID(168) just before the
dialog.accept() line. I can’t check right now
Yep, that worked perfectly! Thanks again for the script.