jarv.org

Filtering YouTube Shorts from RSS Feeds

I subscribe to a lot of YouTube channels via RSS in NewsGoat, and the one thing that I can’t stand are Shorts. Every channel seems to produce them now, and they clutter up the feed with content I never want to watch.

To help, I just added regex-based filters to NewsGoat to deal with this.

Setting Up a Filter

In newsgoat, press f on a feed or folder to open a filter in $EDITOR. The filter is a simple YAML file with regex patterns for URL, Title, and Description fields:

# Filter for folder: YouTube
# Regexes are ANDed together. Prefix with ! to negate.
# Examples:
#   - "golang"        # items must match "golang"
#   - "!/shorts/"     # items must NOT match "/shorts/"
#
URL:
  - "!/shorts/"
Title:
Description:

The ! prefix negates the pattern — items matching !/shorts/ are excluded. Setting this on a YouTube folder applies it to every feed inside that folder, so I only had to configure it once.

How It Works

Filters can be scoped at three levels: global (F), per-folder (f on a folder), and per-feed (f on a feed). They compose with AND logic, for example if you have a global filter and a folder filter, both must pass for an item to show.

The regex patterns within each field are also ANDed together, so you can stack multiple conditions:

URL:
  - "!/shorts/"
  - "!/playlist"
Title:
  - "!LIVE"

This would exclude Shorts, playlists, and anything with “LIVE” in the title.

Feeds and folders with a configured filter show a indicator in the feed list, so it’s easy to see where filters are active. Items that don’t match the filter are hidden from the item list — they’re still in the database, just not displayed.