Replies: 1 comment 2 replies
-
A third option I toyed with is to use "dot notation", e.g. But it seems to me this causes some confusion with keywords which already use dot in the name, e.g. and means that filter names would always have to be disambiguated from field names. |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I'm in the middle of a complete re-write of the template system (see #363 ) that will make the template system much more capable. You'll be able to use any template field as a boolean and also nest templates.
e.g. export photos to directory based on album name, unless photos aren't in an album, then export by date:
--directory "{inalbum?{album},{created.year/created.mm}}"
This also opens the possibility to do other things such as add filters to transform results of a field, for example, output all keywords as lower case. I'm experimenting with different syntax for this and would be glad to have any feedback on what is easier to read.
The easiest implementation (which I currently have prototyped) makes the filters just another field:
{lower,{keyword}}
takes results of {keyword} and makes it lowercaseThese can be stacked, for example:
{parens,{lower,{keyword}}}
takes the result of keywords, makes it lower case and then adds parentheses around each keyword. e.g. transforms 'Keyword1', 'Keyword2' to '(keyword1)', '(keyword2)'Add a new optional modifier to each field using
<>
.()
is currently used for path separator and[]
for find/replace:{keyword<lower>}
and to stack these:
{keyword<lower,parens>}
Current filters are lower case, upper case, strip whitespace, add parentheses, add brackets, add curly braces
Beta Was this translation helpful? Give feedback.
All reactions