Sacha Chua: YE16: Sacha and Prot talk Emacs
In this livestream, I showed Prot what I've been doing since our last conversation about Emacs configuration and livestreaming. I'll update this with chapter markers as I figure them out. In the meantime, here's the recording!
2026-04-16-01 Preparing for chat with Prot.jpeg
- Recap of my objectives:
- Overall: capture and share more, create opportunities for conversation
- Timeline:
- April, May, June: take advantage of predictable-ish schedule and set up streams, chats
- July, Aug: Focus on posts, videos, spontaneous streams
- Sept-: prepare for EmacsConf, see what I can squeeze in at the same time
- This session:
- Share my updates, see if you have other ideas, hear what you've been learning about
- #YayEmacs 10: Emacs coaching with Prot: Emacs workflows and streaming
- Emacs config modularization
- Moved the functions of my config into .el files and renamed to
sacha-prefix - Experimenting with using keyd for one-shot ctrl/alt/super modifiers on Linux
- Used C-z to toggle live.org and C-Z to toggle now.org
- Reading people's configs
- Moved the functions of my config into .el files and renamed to
- Streaming
- Set up mode for livestreaming and obs-websocket-el
- Saves variables, changes agenda / refile targets / capture templates, changes theme, etc.
- Planning upcoming videos / livestreams:
- Looks like there's lots of interest in Emacs Chat (config demos)
- I have a video call with jwiegley and Karthik which we will post afterwards
- Watching lots of other people's videos, reading people's configs
- Could have fun with a Thursday show-and-tell
- Set up mode for livestreaming and obs-websocket-el
- Contributing upstream
- Sent revised patch for org and sentence-at-point
- Bumped into something in which-key which I want to tweak
- Emacs config modularization
- GNU Emacs configuration | Protesilaos Stavrou
- Sacha Chua's Emacs configuration
Questions I'm thinking about / areas I'm working on improving:
- (Log) Getting more out of livestreams (for yourself or others)
- You've mentioned that you don't really go back to your videos to listen to them. I was wondering what could make the livestreamed recordings more useful to either the person who made them, people who watched it live, or people who come across it later.
- Tradeoffs for livestreaming:
- Plus: debugging help, capturing your thinking out loud, conversation, sharing more practices/tips
- Minus: Fitting less stuff on screen, distractability
- A few types of livestreams:
- "I'm going to spend the time doing this anyway, I might as well open it up in case other people are interested."
- Your package maintenance videos Emacs: live stream about maintaining the modus-themes - YouTube
- My Emacs News categorization
- People coding other things
- Other types of tinkering with code, debugging, etc.
- "I have something that I specifically want to teach/show."
- After writing a post
- Before writing a post
- Leaving yourself breadcrumbs ZZZ consider also colour (font-lock-keywords), maybe occur
- Reacting to other things
- Chatting with a guest
- I had fun fiddling with my two-speaker workflow for whisperx and subed; hooray for the visual distinction between your subtitles and mine on Yay Emacs 10: Talking to Prot about Emacs workflows - YouTube =)
- Chatting with the community, hanging out
- Playing
- "I'm going to spend the time doing this anyway, I might as well open it up in case other people are interested."
- (Log) Announcing livestreams
- You add a post for scheduled/spontaneous livestreams and then you update it with the description; probably fine considering RSS readers - people can visit the page if it's finished
Debating whether to embed the channel livestream (picks next public scheduled stream, I think) or embed the specific livestream
- Now on https://yayemacs.com (also https://sach.ac/live, https://sachachua.com/live)
- Added timestamp translation to Embark keymap for timestamps,
sacha-org-timestamp-in-time-zones - ☐ TODO: Post template
- ☐ TODO: ical file
- ☐ TODO: Easier workflow for embedding streams
- ☐ TODO: Google API for scheduling a livestream
- (Log) Processing the recordings
- I like editing transcripts because that also helps me quickly split up chapters
- Tracking chapters on the fly
- Extracting screenshots and clips
- Turning videos into blog posts (or vice versa)
- ☐ TODO: Automate more of the downloading/transcription, common edits, Internet Archive uploads
- (Log) Do you sometimes find yourself copying non-packaged code from other people? How do you like to integrate it into your config, keep references to the source, check for updates?
- convert defvar to defcustom
Current approach: autoload if possible; if not, add a note to the docstring
(use-package prot-comment ; TODO 2026-04-16: :load-path "~/vendor/prot-dotfiles/emacs/.emacs.d/prot-lisp" :commands (prot-comment-timestamp-keyword) :bind (:map prog-mode-map ("C-x M-;" . prot-comment-timestamp-keyword)));;;###autoload (defun sacha-org-capture-region-contents-with-metadata (start end parg) "Write selected text between START and END to currently clocked `org-mode' entry. With PARG, kill the content instead. If there is no clocked task, create it as a new note in my inbox instead. From https://takeonrules.com/2022/10/16/adding-another-function-to-sacha-workflow/, modified slightly so that it creates a new entry if we are not currently clocked in." (interactive "r\nP") (let ((text (sacha-org-region-contents-get-with-metadata start end))) (if (car parg) (kill-new text) (org-capture-string (concat "-----\n" text) (if (org-clocking-p) "c" "r")))))- prot-window: run a command in a new frame
- ☐ Look into using keyd for tap and hold space?
- ☐ header line format with common tips
You can e-mail me at sacha@sachachua.com.
-1:-- YE16: Sacha and Prot talk Emacs (Post Sacha Chua)--L0--C0--2026-04-16T16:44:19.000Z



















