tag search logic
I have updated the tag search logic in two important ways:
- First, if you give a file search a tag that currently has a better sibling (loading up old favourite searches can do this), let's say you enter 'shinji', which would now normally display as 'character:shinji', the database now recognises that this tag has a better sibling and will give you the results as if you had entered 'character:shinji'. Previously, it would give you no results since that tag 'didn't exist' any more. This sounds like a small easy thing to change, but as I peeled this system apart this week, I recognised there were several logical problems and inefficiencies with edge-case sibling search, so I rebuilt the bad parts and cleared several issues up. In any case, sibling tag search = better.
- Second, searching files for the tag 'asuka' will no longer give files that have 'character:asuka'. This 'unnamespaced search tags give all namespaced variants too' rule has been in place since the start of the program, but it has always been awkward to implement, sometimes confusing, and it makes it difficult to search for an unnamespaced tag explicitly. If you would like to search for all namespaced variants of a subtag, please enter '*:asuka', which is now acceptable input.
Note that this does not affect tag lookups. If you type 'rei', you will see 'character:rei' in the result list to choose from. But entering 'rei' will not find files with any namespaced version of the tag.
Wildcards follow the new unnamespaced rule too, now. If you enter 'm*na', you will not get files with 'character:mana'. '*:m*na' will, though, and these 'any namespace' wildcard rules are now supplied as suggestions whenever you enter an unnamespaced wildcard.
other highlights
You can now fully edit tag, namespace, and wildcard search predicates. Either shift+double-click some active tag search predicates, or right-click and select 'edit', and you can now change their text. You can also convert between one or another just by typing.
Thanks to a user, the 'pattern' you use when declaring export filenames now supports '{#}', which will give you the same as the incrementing number '#' column in the manual export dialog. You can now export files and give them a filename based on their current thumbnail order.