Watch the recording on YouTube!
Just like last time, let's try a bunch of Emacs packages.
I want to try your package suggestions, they can be any of the following:
(use-package beacon
:straight t)
(use-package plz
:straight (plz :host github :repo "alphapapa/plz.el"))
;; Install Ement.
(use-package ement
:straight (ement :host github :repo "alphapapa/ement.el"))
(use-package shackle
:straight t
:config
(shackle-mode 1)
(setq ;shackle-rules '((help-mode :noselect t))
shackle-default-rule '(:same t)))
(use-package popper
:straight t
:bind (("C-`" . popper-toggle-latest)
("M-`" . popper-cycle)
("C-M-`" . popper-toggle-type))
:init
(setq popper-reference-buffers
'("\\*Messages\\*"
"Output\\*$"
"*eshell*"
help-mode
compilation-mode))
(popper-mode +1))
(use-package ytel
:straight t
:config
(setq ytel-invidious-api-url "https://invidious.snopyta.org"))
(defun ytel-watch ()
"Stream video at point in mpv."
(interactive)
(let* ((video (ytel-get-current-video))
(id (ytel-video-id video)))
(start-process "ytel mpv" nil
"mpv"
(concat "https://www.youtube.com/watch?v=" id))
"--ytdl-format=bestvideo[height<=?720]+bestaudio/best")
(message "Starting streaming..."))
(use-package vuiet
:straight t)
(use-package ranger
:straight t)
(use-package selectric-mode
:straight t)
;; https://github.com/benoitj/dotfiles/blob/main/private_dot_irssi/notify.wav
(defun selectric-type-sound ()
"Make the sound of the printing element hitting the paper."
(selectric-make-sound (expand-file-name "~/Downloads/notify.wav")))
Ashraz offered up this little gem before the stream but I didn't get to use it (yet!):
(defun potluck--show-winner (name)
"Use animation to anounce the winner of a potluck draw.
See `potluck-random-package' for more information."
;; Heavily inspired by `butterfly'.
(switch-to-buffer (get-buffer-create "*potluck*"))
(erase-buffer)
(sit-for 0)
(animate-string "And the winner is..."
(/ (window-height) 2)
(- (/ (window-width) 2) 11))
(animate-string name
(+ 3 (/ (window-height) 2))
(- (/ (window-width) 2) (/ (length name) 2))))
(defun potluck--random-element (sequence)
"Pick one of the elements out of SEQUENCE randomly."
(seq-elt sequence (random (length sequence))))
(defun potluck-random-package (&optional include-installed print-only)
"Show a random not installed package.
If INCLUDE-INSTALLED is not nil, then also include installed packages.
If PRINT-ONLY is `t' the don't use any animation."
(interactive)
(let ((all-names (mapcar 'car package-archive-contents)))
(unless include-installed
(setq all-names (seq-difference all-names (mapcar 'car package-alist))))
(let ((winner (symbol-name (potluck--random-element all-names))))
(if print-only
(princ winner)
(potluck--show-winner winner)))))