Do you agree with me that this is unexpected behaviour?:
$ beet ls mood_happy:0.5..1 -f
I get no results and by examining the query I see that the above query was parsed to:
AndQuery([SubstringQuery('mood_happy', '0.5..1', False)])
By hacking into the parser and making it yield this:
AndQuery([NumericQuery('mood_happy', '0.5..1', False)])
Everything works as expected.
I am working on the beets-goingrunning plugin which makes extensive use of these numeric flex attributes. In the plugin I created a custom parser which is based on a hardcoded list of attribute names used to indicate for which attributes should the NumericQuery be used.
I don’t really like the idea of the hardcoded list (I might move it to the plugin’s configuration) but it does the job for now. Do you have any better ideas? Also, could this be something to be integrated into the core parser?