GNU Emacs YouTube front-end.
About
Yee(t) (You)Tube
This package provides the ability to scrape YouTube, with the results displayed in a tabulated list.
Core features include:
- Executing queries on YouTube
- Playing video URLs using default mpv
- Bookmark/Save video url for future reference
- Download video using yt-dlp
- A standalone, minimalist yt-dlp wrapper
This package does not use Invidious or YouTube’s API, just “parses” html & json.
Installation
YeeTube is available via MELPA
Example using use-package
(use-package yeetube
:init (define-prefix-command 'my/yeetube-map)
:config
(setf yeetube-mpv-disable-video t) ;; Disable video output
:bind (("C-c y" . 'my/yeetube-map)
:map my/yeetube-map
("s" . 'yeetube-search)
("b" . 'yeetube-play-saved-video)
("d" . 'yeetube-download-videos)
("p" . 'yeetube-mpv-toggle-pause)
("v" . 'yeetube-mpv-toggle-video)
("V" . 'yeetube-mpv-toggle-no-video-flag)
("k" . 'yeetube-remove-saved-video)))
Dependencies
Debian/Ubuntu
$ sudo apt install mpv yt-dlp
Configuration
Media Player
By default yeetube-play-function
is set to yeetube-mpv-play
, you can
use mpv.el,
GNU/Emms or other similar
packages like so:
(setf yeetube-play-function #'emms-play-url)
Make sure that the media player of your choice can directly play youtube urls.
Thumbnails
Disable thumbnails:
(setf yeetube-display-thumbnails nil)
Apply Filters
To filter the search results based on a specific criterion, you can
modify the yeetube-filter
value to your preferred option.
For example:
(setf yeetube-filter "Views")
This will filter & sort the search results according to the number of views.
Tor & torsocks support
For enhanced privacy, using tor & torsocks:
(setf yeetube-enable-tor t
yeetube-mpv-enable-torsocks t) ;; if you are using yeetube-mpv as your media player
It’s recommended to disable thumbnail support to imrpove performance when using tor.
Yeetube is configured to use tor via port 9050.
You can toggle that option for mpv with yeetube-mpv-toggle-torsocks