View Single Post
Old 11-04-2015, 11:38 AM   #702
DavidTC
Connoisseur
DavidTC began at the beginning.
 
Posts: 77
Karma: 10
Join Date: Sep 2011
Device: Nook, Boox C67ML
Hi. I want to thank you for your plugin, I've been using it for years.

A week or so ago I got ereader that can support Calibre Compaign, so I've worked on trying to normalize my various tags. I love the 'download metadata and store it in an attribute', thanks, that is very helpful and keeps me from pounding the servers.

I've almost got things as I want, except for two slight problems, both in the 'ship' area.

But first, a small bug report:

You cannot save the default as 'Update Calibre Metadata from Saved Metadata Column' in the config. It gives an unhandled exception. As that is the last option, and only appears if you have a saved metadata column, I suspect you've got a bad 'valid options' test there.

Anyway, feature request #1:
Using & to break apart ships.

I know you say 'If you want to, you can use a regexp to change that to /'...the problem is, there's often a difference between / and & (With / being romance and & being friendship), and so & ships need to be *put back together* with a &, while keeping / as /.

I've spent the last day trying to rig up some insanity with regexps where I turn & into #/, and then ships_LIST tries to detect the # in the result and turn all / back into & and delete the #. This is...not easy. I might get it eventually, but at this point, I thought I'd ask 'Can you break apart ships on & also, and put them back together with the same symbol?' (Perhaps there could even be a configurable list? I don't know that anything except / and & is used, though.)

Slight complication: & is almost always surrounded by spaces. 'X & Y', instead of 'X/Y'. Don't actually know how you handle spaces in the input there, just thought I'd mention it. At the end, either go with spaces or not, *that* is easy enough to change with a regexp.

Not a complication: I have *never* seen something of the form 'X & Y/Z', and, frankly no one would know what that means. I think if FFF ever runs across that, it should not try to sort it at all. (Note that FFF *already* sorts that wrong anyway, because, whatever 'X & Y/Z' means, it probably is not the same thing as 'Z/X & Y', which is what FFF could end up with.)

Anyway, that would be awesome, not only for sorting, but for my next request:

Feature request #2:
Regexp access to the ships while broken apart.

I have a lot of regexps that normalize character names. I can, of course, make those apply to ships also, but the problem is, a lot of these regexps are turning first names or last names into full names, so need to be anchored at the ends, right? Otherwise you get a bunch of 'Harry Potter Potter's.

The problem then arises if I put that replacement in 'ships,characters', I end up with extremely complicated regexps that might be anchored with a start of line, or a /, or a ' & ', and the same at the end, and then have to put that character back after replacement. And it's all well and good to write something that complicated once, but for every single character name it's getting a bit...old, and hard to read.

So my question is: Can we have access to the ship names *while* they're broken apart? I mean, clearly you already break them apart anyway, to sort them. Can we perhaps get a ship_CHARACTER or something we can run a regexp over, one name at a time?

Or, even better, true/false option to just apply the *character* regexps to broken apart ships? Then people who already munge character names could just flip that to true and not have to mess with their regexps at all.

Thanks for all your effort.
DavidTC is offline   Reply With Quote