I had indeed checked the ‘use track relationships’ and I have read many MusicBrainz webpages (including the one you refer to), but one aspect that seems to be absent in many ‘tutorials’ on the MB website is the simple basis:
“What does this do”, “why would you use it” and “here are some examples:”.
I’m glad that guys such as you are active in the forum
I have added ‘work’ to the ‘preserve tags’ list.
But it is still being written in this scenario.
I am guessing that is because it was empty to start with, and the setting only prevents overwriting a populated tag?
Yet I want to preserve the ‘empty’ state for this tag.
How can I do that?
edit:
I found I can use ‘remove’ from the context menu, but if possible I want to have this as a fixed state, and not as a one-instant feature.
edit2:
I assumed wrong here: ‘remove’ doesn’t prevent Picard doing anything with/to that tag, but it actually deletes it.
A brief clarification and summary: I want the contents of MB’s ‘work’ to be written to the ‘title’ tag, and I want the ‘work’ tag frame to remain blank if it was blank before.
I thought there was an $unset() function, but I must have skimmed right by it when checking. Yup, that would be the one to use to remove the tag.
I may have misunderstood, but I thought @hiccup was wanting to keep the work tag even if it was empty. That’s why I suggested setting it to an empty string or “missing”. After re-reading his note, you may be right, in which case $unset(work) is the best solution (as you suggested).
The best way to say what I want might be: "I want the ‘work’ tag untouched"
If it was empty before, leave it empty. If it had a value, keep that value.
I don’t want Picard to do anything with/to it.
I probably raised some confusion because I spoke about: " remove’ from the context menu"
I was referring to the ‘Work’ cell at the bottom left of Picard. But I wrongly assumed that that would prevent Picard from doing anything with ‘Work’. But I now see it actually removes the ‘work’ tag frame itself.
Isn’t it possible to ‘prevent changes’ to a tag from the user interface?
Then if I need a script for that, the next challenge(s) arise:
Is it explained somewhere what “$unset” does? I can’t find an explanation in the documentation.
How do I add such another script?
Do I add it on the same page as the script I am using to write ‘work’ to ‘title’?
Or do I add it on a new page? But that confuses me too. If I click ‘add new script’, a new page opens (My script #), but then the previous page is gone, and I can see no way to get back at it? Will the script on the previous page still run? Can you activate/de-activate it?
There are a lot of outstanding Picard tickets. Bear in mind that all work on Picard is entirely voluntary! Also, effort is being directed to v2.0, I think, rather than fixing v1.4. I decided to brush up my Python and write my own plugin because I thought that would be the best way of getting Picard to do what I wanted, but I appreciate that’s a personal choice