- Reusable templates — named regex fragments referenced with
!name!syntax - Mapping rules — a small DSL for renaming, regrouping, and enriching content
Template loading
Templates can live in three places:
If a directory is used, all
*.yml files are loaded in alphanumeric order and merged. Template names must be globally unique across all sources.
Template syntax
Define templates as named string values:! characters:
value.
mapping.yml structure
The top-level mappings key holds:
Each mapping entry defines:
match_as_ascii
When enabled, Tuliprox deunicodes field values before applying filters. This lets simple ASCII patterns match content with accented or special characters:
é→eö→oß→ss
Mapper rules
Each mapper rule contains:Mapper DSL reference
Accessing playlist fields
Playlist fields are accessed with the@Field syntax. Fields can also be assigned to update the output:
Variable assignment
Regex capture
Regex matches expose numbered captures via.1, .2, etc., and named captures via .name:
match block
Select a value based on which variables are truthy:
map block
Map a variable’s value to a new value:
for_each
Iterate over split values or regex capture groups:
Nested map blocks
map blocks can be nested: