Genres and flags
Turn many AO3 tags into a few useful cover labels
We get tags from AO3. FanFicFare can modify them—for example, by cleaning up inconsistent names—before writing them into your Calibre library. A calculated genre column then searches those saved tags and produces shorter labels for the cover.
Create the genre column
Create Genre, with lookup name genre, as Column built from other columns, behaves like tags. If you have not created a calculated column before, review the explanation in Add AO3 metadata.
The easiest option is the Genre code generator: add your cover labels and matching keyphrases, generate the code, and copy it.
To edit the example by hand instead:
- Open the genre template in a plain-text editor.
- Replace the sample labels, such as
Fluff, and the keyphrases beside them. The|character means “or”:fluff|domestic blissmatches either phrase. Copy a complete block when you need another genre. - In Calibre, open Preferences → Add your own columns, select Genre, and edit it.
- Paste everything from the file’s
program:line to the end—or paste the code from the generator—into the column’s Template box. Save the column and restart Calibre if asked.
Each genre has a cover label and a group of matching keyphrases. A story can match several genres. You can also use an emoji as the cover label—for example, 🌟 for a recommended tag.
Add {#genre} to Generate Cover’s Contents → Custom text field when you are ready to show it on a cover.
Use a tag as a simple flag
A flag is simply a small visual marker, often an emoji, that calls attention to something in your library. The same method can show one for a tag you add yourself in Calibre. For example, create a generator row with Recommended as the matching keyphrase and 🌟 as its cover label. Any book whose standard Tags column contains “Recommended” can then show the star alongside its genres.
The downloadable template reads Calibre’s standard tags field. If the tags you want to search are stored in a custom column instead, change field('tags') near the top of the template to that lookup name—for example, field('#ao3_tags'). The Genre code generator lets you enter the source column directly.
Limitations
The basic method matches a keyphrase anywhere in the saved tags. For example, romance also matches Necromancer AU. Use specific phrases, or see Precise tag matching for ambiguous short terms.