Selecting performer type in tagger script

I know we have a function:

$performer(pattern="",join=", ")
Returns the performers where the performance type (e.g. “vocal”) matches pattern, joined by join.

but is it possible to select performers NOT of a particular type? I want to get all individual performers, so excluding, for example, performer[orchestra]. The instruments might be unknown and varied, so can’t be provided in advance. Any ideas?

1 Like

After sleeping on it, here is a work-round.

  1. Set a hidden variable to the performers to be excluded, using $performer:
  2. remove those performers;
  3. use $performer to get the other performers:
  4. re-set the excluded performers from the hidden variable.

would you share your code with us? I encounter the same problem… except I want to remove all vocal types of performer from the performer() function call.

specifically, I am wondering how do you do step 2, when there are going to be more than one entries in the performer list (different types of vocals, example). I can’t do a simply substring matching. if you figured this out, please share the code with me.


Ah. That is a bit more difficult, since the performers to be excluded cannot be specified explicitly and neither can the performers to be included! It needs to be done with a plugin, not a script, I think.
I am developing a plugin which may address the issue, but it is not ready yet.

Beta version of plugin is here, but read the readme first.