ytdl-sub/examples
Jesse Bannon 9f408d2196
[FEATURE] Extend subscription syntax (#790)
Extends the subscription.yaml syntax at the cost of introducing a breaking change.

# New Syntax
## Mix-n-match presets and indent variables
```
# Can mix/match presets and indent override variables.
# Uses presets TV Show, Only Recent and assigns Kids, TV-Y to subscription_indent_1 and _2
TV Show | = Kids | = TV-Y | Only Recent:
  "Jake Trains": "https://..."
```

## Subscriptions with list-value support
```
TV Show | = Kids | = TV-Y | Only Recent:
  "Jake Trains":
    - "https://url.1..."  # Assigns to subscription_value and subscription_value_1
    - "https://url.2..."  # Assigns to subscription_value_2
```

## Subscriptions with override-keys support
```
TV Show | = Kids | = TV-Y | Only Recent:
  "~Jake Trains":  # the ~ means "all keys underneath get assigned as override variables"
    url: "https://url.1..."  # Assigns to url
    url2: "https://url.2..."  # Assigns to url2
```

# Breaking Changes
In the TV show subscriptions example (https://github.com/jmbannon/ytdl-sub/blob/master/examples/tv_show_subscriptions.yaml), it had
```
TV Show Full Archive:
  # Sets "Kids" for genre, "TV-Y" for content rating
  = Kids | TV-Y:
    "Jake Trains": "https://www.youtube.com/@JakeTrains"
    "Kids Toys Play": "https://www.youtube.com/@KidsToysPlayChannel"
```
This must be changed to
```
TV Show Full Archive:
  # Sets "Kids" for genre, "TV-Y" for content rating
  = Kids | = TV-Y:  # Each indent variable assignment must have an = before it
    "Jake Trains": "https://www.youtube.com/@JakeTrains"
    "Kids Toys Play": "https://www.youtube.com/@KidsToysPlayChannel"
```
2023-11-01 20:24:06 -07:00
..
music_subscriptions.yaml [FEATURE] Prebuilt Music Videos (#787) 2023-10-28 00:12:22 -07:00
music_video_subscriptions.yaml [FEATURE] Prebuilt Music Videos (#787) 2023-10-28 00:12:22 -07:00
README.md [FEATURE] New TV Show example config (#279) 2022-10-14 16:32:19 -07:00
tv_show_config.yaml [FEATURE][BUGFIX] Beautiful subscriptions syntax update + fix (#758) 2023-10-17 16:30:50 -07:00
tv_show_subscriptions.yaml [FEATURE] Extend subscription syntax (#790) 2023-11-01 20:24:06 -07:00

Example Configurations

This directory shows how you can use ytdl-sub for various use cases. These are the configs I personally use and have incorporated as part of the e2e tests.

Each example has a config.yaml and subscription.yaml. The config defines how you format your media, whereas the subscription defines what you download plus some additional configuring if needed.