The swap and unswap functions work now with semi-colons. That's great! But once this function is applied the semi-colon ceases to be read as a delimiter, and instead is treated like a regular semi-colon.
To explain: I have two (list-style) fields that I use to sort and display artists:
Artist: Brian Eno; John Cale
All Artists (Last Name): Eno, Brian; Cale, John
If I sort and display using *only* [Artist] then the semi-colon is "read" as a delimiter and I get the single album by these two artists sorted together with other albums by both of these artists separately:
Brian Eno
John Cale
But I--like many people--want to sort by last name. To do this I sort by [All Artists (Last Name)]. If I choose to display the same field, the sort order is right, but the names are reversed:
Cale, John
Eno, Brian
When I apply unswap() to the display name it can no longer "read" the semi-colon to send the album to the "Cale, John" grouping and to the "Eno, Brian" grouping. What I get is this grouping:
Brian Eno; John Cale
And when I have other "Eno, Brian" albums tagged, then I get
[Varies]
because the "Brian Eno; John Cale" album is grouped with other "Eno, Brian" albums.
I've figured out a workaround to this problem using the [Name] field in Standard View, where it functions as a kind of category field. But in Theater View this does not work. It seems to me the simplest solution would be to allow the semi-colon to do its work even when it is part of a function.