You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Introduce "if exists bracket" as a new syntax element
which outputs null if its contained tag evaluates as null
or else outputs the result of the tag plus any static text before or after
Syntax Idea
Tag %() — The syntax as it currently is. Outputs the tag value.
If-exists-bracket *{}
If the contained tag evaluates as non-null then output the tag plus free text before or after it.
Else output NULL.
Additional ideas
If-exists-tag *() - Output tag if it exists
If-else-bracket *{tag plus freetext}{tag2 plus freetext}{tag3}{freetext only as last alternative}
If the contained tag evaluates as non-null then output the tag plus free text before or after it.
Else try the next curly bracket, which again can be a tag and/or a freetext.
An alternative consisting of freetext only is only effective at the last position. As it always evaluates as true all further alternative after it are discarded.
Problem
For classical music I often only state the composer and leave the artist field empty.
With a stubborn filename formatter I get results like this:
Proposed Solution
Introduce "if exists bracket" as a new syntax element
Syntax Idea
%()
— The syntax as it currently is. Outputs the tag value.*{}
Additional ideas
*()
- Output tag if it exists*{tag plus freetext}{tag2 plus freetext}{tag3}{freetext only as last alternative}
Examples where and how this would help
*{%(composer) - }*{%(artist) - }*(trackNumber#00) - }%(name).%(ext.lowercaseString)
*{%(composer)}{%(artist)} - *(trackNumber#00) - }%(name).%(ext.lowercaseString)
*{%(artist) - }*{%(album) - }*(trackNumber#00) - }%(name).%(ext.lowercaseString)
%(artist) - *{%(trackNumber#00)}{00}%(name).%(ext.lowercaseString)
The text was updated successfully, but these errors were encountered: