Sacha Chua

Emacs, sketches, and life
https://sachachua.com/blog/ (RSS)
visit blog
Minecraft tree orbs, tree farm upgrade
17 Jan 2025 | original ↗

A+ was inspired by the SapWing villages from Wings of Fire to make a couple of orb houses up in the trees. Figure 1: A+'s latest creation: tree orbs I think she used copycat blocks and vertical slabs from the modpack in order to get it to look so round. "I'm excellent at creating things that are not supposed to exist in Minecraft, in Minecraft,"...

Changing planet.emacslife.com
16 Jan 2025 | original ↗

For the longest time, planet.emacslife.com was generated with the Planet Venus aggregator, which required Python 2.7. My recent blog post about Yay Emacs 8: which-key-replacement-alist had some emojis that the parser couldn't handle, though (unichr() arg not in range(0x10000) (narrow Python build)). I decided to rewrite the aggregator using...

Learning more about looking ahead together
15 Jan 2025 | original ↗

2025-01-14-01 Looking ahead – parenting planning skills Text from sketch A+ is 8 years old. We're letting her be part of managing more things for her future self, like keeping track of when we're running low on her laundry or her favourite yogurt or toilet paper under the sink. She doesn't always get it right, but then...

2025-01-13 Emacs news
13 Jan 2025 | original ↗

Upcoming events (iCal file, Org): Emacs.si (in person): Emacs.si meetup #1 2025 (v #živo) https://dogodki.kompot.si/events/cb726f44-8b7f-44f7-91a5-fc9d3f9ad7a9 Tue Jan 14 1900 CET Talk by Andrew Tropin - Arei/Ares: A modern, extensible IDE for Guile Scheme https://www.meetup.com/guix-social/events/304634420/ Thu Jan 16 1000 America/Vancouver -...

Treemap visualization of an Org Mode file
12 Jan 2025 | original ↗

One of the challenges with digital notes is that it's hard to get a sense of volume, of mass, of accumulation. Especially with Org Mode, everything gets folded away so neatly and I can jump around so readily with C-c j (org-goto) or C-u C-c C-w (org-refile) that I often don't stumble across the sorts of things I might encounter in a physical...

Automatically correcting phrasing and misrecognized words in speech-to-text captions by using a script
11 Jan 2025 | original ↗

I usually write my scripts with phrases that could be turned into the subtitles. I figured I might as well combine that information with the WhisperX transcripts which I use to cut out my false starts and oopses. To do that, I use the string-distance function, which calculates how similar strings are, based on the Levenshtein [distance]...

Org Babel, Mermaid JS, and fixing "Failed to launch the browser process" on Ubuntu 24
10 Jan 2025 | original ↗

Mermaid makes pretty diagrams from text. It's Javascript-based, so the command-line tool (mmdc) uses Puppeteer to get the results of evaluating the diagram in the browser. I was running into some errors trying to get it to work from Org Mode over ob-mermaid on Ubuntu 24, since apparently AppArmor restricts Puppeteer. (Error: Failed to launch the...

Monthly review: December 2024
10 Jan 2025 | original ↗

2024-12-31-09 December 2024 -- monthly review.png EmacsConf 2024 was a ton of fun, and we managed to get the Q&A videos up quickly. I indexed lots of Emacs videos for emacs.tv, and I wrote some Emacs Lisp so I can manage the queue from Emacs. W- retired, hooray! He's been keeping himself active with lots of biking and various projects like...

Weekly review: Week ending January 8, 2025
9 Jan 2025 | original ↗

I sent a small patch for image-dired and default-directory to emacs-devel, and that was merged. I looked into using Galene, and my patch for requiring enabled devices before unmuting was merged. I reviewed the EmacsConf 2024 YouTube comments so far, and I wrote some code for collecting them and maybe even doing a mail-merge. I edited and posted...

#YayEmacs 9: Trimming/adding silences to get to a target; subed-record-sum-time
9 Jan 2025 | original ↗

New in this video: subed-record-sum-time, #+PAD_LEFT and #+PAD_RIGHT Video not supported. Thumbnail:Download the video I like the constraints of a one-minute video, so I added a subed-record-sum-time command. That way, when I edit the video using Emacs, I can check how long the result will be. First, I split the subtitles, align it with the audio...

2025-01-06 Emacs news
6 Jan 2025 | original ↗

Upcoming events (iCal file, Org): OrgMeetup (virtual) https://orgmode.org/worg/orgmeetup.html Wed Jan 8 0800 America/Vancouver - 1000 America/Chicago - 1100 America/Toronto - 1600 Etc/GMT - 1700 Europe/Berlin - 2130 Asia/Kolkata – Thu Jan 9 0000 Asia/Singapore Atelier Emacs Montpellier (in person) https://lebib.org/date/atelier-emacs Fri Jan 10...

Yay Emacs 8: which-key-replacement-alist
6 Jan 2025 | original ↗

Video not supported. Thumbnail:Download the video I wish I could memorize all these keyboard shortcuts in Emacs, but I just don't use some commands often enough to build the muscle memory for them, especially since I have so many context-sensitive shortcuts thanks to Embark. That's why which-key is great. It used to be a separate package, but...

A brief foray into Underdog, a realistic Minecraft modpack; returning to Total Animation
5 Jan 2025 | original ↗

A+ often enjoys watching Minecraft videos on Youtube where streamers take on challenges like surviving harder, more realistic worlds. We briefly gave RL Craft a spin the other day, but I died to a dragon and that wasn't realistic enough for A+, so we checked out Underdog today. We couldn't get Underdog to work under GDLauncher on her computer...

Using image-dired to browse the latest screenshots from multiple directories
2 Jan 2025 | original ↗

Since A+ and I play lots of Minecraft together, I figured it's a good opportunity to slowly get her into the idea of documenting learning. Besides, I can always practise it myself. Screenshots are handy for that. In Minecraft Java, F1 hides the usual heads-up display, and F2 takes the screenshot. Usually, when I start taking screenshots. A+...

Cuberventures: Early game Create Mod
1 Jan 2025 | original ↗

A+ likes exploring different Minecraft Java modpacks in creative mode. We're currently playing FXNT Create 2. I like challenging myself to figure things out in survival mode, so I'm getting a lot of practice in building early-game survival farms with Create. My setup has changed a little bit over the last few modpacks/worlds. I usually start by...

Editing videos with Emacs and subed-record.el
1 Jan 2025 | original ↗

I want to document more of my Minecraft adventures with A+. Video is a natural way to do this. It builds on her familiarity with the tutorials and streams she enjoys watching. I set up OBS on her laptop and plugged in my Blue Yeti microphone. We did our first interview yesterday. I edited and subtitled it (because why not!), uploaded it as an...

2024-12-30 Emacs news
30 Dec 2024 | original ↗

Upcoming events (iCal file, Org): M-x Research: TBA https://m-x-research.github.io/ Fri Jan 3 0800 America/Vancouver - 1000 America/Chicago - 1100 America/Toronto - 1600 Etc/GMT - 1700 Europe/Berlin - 2130 Asia/Kolkata – Sat Jan 4 d0000 Asia/Singapore OrgMeetup (virtual) https://orgmode.org/worg/orgmeetup.html Wed Jan 8 0800 America/Vancouver -...

Monthly review: November 2024
29 Dec 2024 | original ↗

2024-11-30-06 November 2024 daily #moments This month, I experimented with doing my daily drawings on a calendar grid. Since that meant I had a nice neat one-page summary of the month right there, I figured I might as well resume writing these monthly reviews. Most of my discretionary time was taken up by preparations for EmacsConf, which...

Linking to Org Babel source in a comment, and making that always use file links
29 Dec 2024 | original ↗

I've been experimenting with these default header args for Org Babel source blocks. (setq org-babel-default-header-args '((:session . "none") (:results . "drawer replace") (:comments . "link") ;; add a link to the original source (:exports . "both") (:cache . "no") (:eval . "never-export") ;;...

EmacsConf 2024 notes
28 Dec 2024 | original ↗

The videos have been uploaded, thank-you notes have been sent, and the kiddo has decided to play a little Minecraft on her own, so now I get to write some quick notes on EmacsConf 2024. Stats Timeline Data Communication Schedule Recorded videos Recorded introductions Captioning BigBlueButton web conference Tech checks and hosting Streaming...

emacs.tv
27 Dec 2024 | original ↗

I came across Ruby Video on Hacker News and thought it was a good idea, particularly the topic view. I mentioned it in a toot and that seemed to strike a chord in the #emacs community there, so I exported some of the metadata for EmacsConf videos into an Org Mode file. @xenodium whipped up a quick web prototype at emacs.tv. I added a bunch of...

2024-12-23 Emacs news
23 Dec 2024 | original ↗

Help wanted: Org Mode requests: [FR] Allow SPC to scroll todo/tag selection menu - for users with huge accessible fonts (was: Transient: accessibility problems for users who need to use large fonts) Emacs updates: Emacs 30.0.93 pretest is available (Reddit, Irreal) Emacs 31 News Stream VOD (01:26:53) Upcoming events (iCal file, Org): Emacs Berlin...

subed.el: Tweaking subtitle times
19 Dec 2024 | original ↗

When subtitle times are too far off from the video or audio, people start worrying if their video has frozen or jumped ahead. It's good to keep subtitles roughly in time with the audio. For EmacsConf, we can get timing information from two places. WhisperX produces a JSON file with word data in the process of doing the speech recognition, and the...

2024-12-16 Emacs news
16 Dec 2024 | original ↗

Help wanted: Org Mode requests: [RFC] The best way to choose an "action" at point: context-menu-mode, transient, which-key or embark? (was: Fwd: Org-cite: Replace basic follow-processor with transient menu?) also on emacs-devel Org Mode requests: [TASK] Documenting ob-fortran, ob-forth, ob-sed, ob-ocaml, ob-ruby, and ob-sass (was: [TASK] Move...

Weekly review: Two weeks ending December 11, 2024
12 Dec 2024 | original ↗

This post covers the week ending Dec 4 and the week ending Dec 11, since it was a bit of a rush leading up to EmacsConf. EmacsConf 2024 went well, hooray! Here are some of my journal entries over the past two weeks: I worked on the BigBlueButton server some more. I used Spookfox to automate Firefox from Emacs Lisp so that I could add moderator...

2024-12-09 Emacs news
9 Dec 2024 | original ↗

Upcoming events (iCal file, Org): OrgMeetup (virtual) https://orgmode.org/worg/orgmeetup.html Wed Dec 11 0800 America/Vancouver - 1000 America/Chicago - 1100 America/Toronto - 1600 Etc/GMT - 1700 Europe/Berlin - 2130 Asia/Kolkata – Thu Dec 12 0000 Asia/Singapore Atelier Emacs Montpellier (in person) https://lebib.org/date/atelier-emacs Fri Dec 13...

2024-12-02 Emacs news
2 Dec 2024 | original ↗

Emacs 30: New stuff in Emacs 30 (July 2024, @frodjo@mastodon.social) Upcoming events (iCal file, Org): Emacs Paris: S: Emacs workshop in Paris (online) https://emacs-doctor.com/ Thu Dec 5 0830 America/Vancouver - 1030 America/Chicago - 1130 America/Toronto - 1630 Etc/GMT - 1730 Europe/Berlin - 2200 Asia/Kolkata – Fri Dec 6 0030 Asia/Singapore...

2024-11-25 Emacs news
26 Nov 2024 | original ↗

Upcoming events: Emacs Berlin (hybrid, in English) https://emacs-berlin.org/ Wed Nov 27 0930 America/Vancouver - 1130 America/Chicago - 1230 America/Toronto - 1730 Etc/GMT - 1830 Europe/Berlin - 2300 Asia/Kolkata – Thu Nov 28 0130 Asia/Singapore Emacs Paris: S: Emacs workshop in Paris (online) https://emacs-doctor.com/ Thu Dec 5 0830...

Remove filler words at the start and upcase the next word
21 Nov 2024 | original ↗

Like many people, I tend to use "So", "And", "You know", and "Uh" to bridge between sentences when thinking. WhisperX does a reasonable job of detecting sentences and splitting them up anyway, but it leaves those filler words in at the start of the sentence. I usually like to remove these from transcripts so that they read more smoothly. Here's a...

Wednesday weblog: week ending November 20, 2024
20 Nov 2024 | original ↗

Reflection on writing style - 2024-11-18T00:44:18.080Z I notice that I have a lot more fun writing tiny workflow tweaks (mostly #Emacs ) and sharing them on my blog versus, say, insightful reflections developed over a longer period of time. I think it's the payoff of being able to enjoy those tweaks. Sometimes abstract thoughts help me come to...

Updating my audio braindump workflow to take advantage of WhisperX
19 Nov 2024 | original ↗

I get word timestamps for free when I transcribe with WhisperX, so I can skip the Aeneas alignment step. That means I can update my previous code for handling audio braindumps . Breaking the transcript up into sections Also, I recently updated subed-word-data to colour words based on their transcription score, which draws my attention to things...

Looking at my blog post stats by year
18 Nov 2024 | original ↗

Figure 1: Blog statistics I was curious about the shape of my blog over the years, excluding Emacs News and my link-heavy weekly/monthly reviews. It started off with lots of little posts like the way other weblogs were also quick links and notes. As weblogs morphed into blogs with more text, I also settled down into fewer, longer posts with lots...

2024-11-18 Emacs news
18 Nov 2024 | original ↗

Emacs 30: What are your favorite changes in emacs 30? Upcoming events: M-x Research: TBA https://m-x-research.github.io/ Wed Nov 20 0800 America/Vancouver - 1000 America/Chicago - 1100 America/Toronto - 1600 Etc/GMT - 1700 Europe/Berlin - 2130 Asia/Kolkata – Thu Nov 21 0000 Asia/Singapore Emacs APAC (virtual) https://emacs-apac.gitlab.io/ Sat Nov...

Changing Org Mode underlines to the HTML mark element
17 Nov 2024 | original ↗

Apparently, HTML has a mark element that is useful for highlighting. ox-html.el in Org Mode doesn't seem to export that yet. I don't use _ to underline things because I don't want that confused with links. Maybe I can override org-html-text-markup-alist to use it for my own purposes… (with-eval-after-load 'org (setf (alist-get 'underline...

Checking caption timing by skimming with Emacs Lisp or JS
17 Nov 2024 | original ↗

Sometimes automatic subtitle timing tools like Aeneas can get confused by silences, extraneous sounds, filler words, mis-starts, and text that I've edited out of the raw captions for easier readability. It's good to quickly check each caption. I used to listen to captions at 1.5x speed, watching carefully as each caption displayed. This took a...

Yay Emacs 7: Using word timing in caption editing with subed-word-data
16 Nov 2024 | original ↗

Video not supported. Thumbnail:Download the video When I work with video captions, I often want to split long captions using subed-split-subtitle. If my player is somewhere in the current subtitle, it'll use that timestamp. If not, it'll make a reasonable guess based on character position. I can use subed-word-data.el to load word-level times...

Wednesday weblog: Week ending 2024-11-06
13 Nov 2024 | original ↗

I used to write weekly reviews. Nudged by Doing weeknotes, I want to get back to doing them. I'm still figuring out how I'd like to put these notes together as part of a weekly review process picking up some stuff from my blog posts, toots, Org inbox, and journal entries. That way, I can revisit fleeting notes and flesh them out a little more,...

Tiny Habits: The Small Changes that Change Everything - BJ Fogg, PhD (2020)
12 Nov 2024 | original ↗

2024-11-11-07 Tiny Habits: The Small Changes that Change Everything - BJ Fogg, PhD - 2020 #visual-book-notes #book #habits #productivity Text from sketch Tiny Habits - BJ Fogg, PhD (2020) - Notes by Sacha Chua 2024-11-11-07 Help people do what they already want to do Help people feel successful. Motivation + Ability +...

2024-11-11 Emacs news
11 Nov 2024 | original ↗

Upcoming events: EmacsSF (in person): coffee.el in SF https://www.meetup.com/emacs-sf/events/304301988/ Sat Nov 16 1100 America/Los_Angeles M-x Research: TBA https://m-x-research.github.io/ Wed Nov 20 0800 America/Vancouver - 1000 America/Chicago - 1100 America/Toronto - 1600 Etc/GMT - 1700 Europe/Berlin - 2130 Asia/Kolkata – Thu Nov 21 0000...

EmacsConf backstage: Makefile targets
11 Nov 2024 | original ↗

We like to use pre-recorded videos at EmacsConf to minimize technical risks. This also means we can caption them beforehand, stream them with open captions, and publish them as soon as the talk goes live. Here's the process: Speakers upload their videos in whatever format they like. We use PsiTransfer to accept the uploaded files. We rename the...

Using a coloured template on my Supernote A5X
10 Nov 2024 | original ↗

The Supernote A5X is an e-ink notebook that lets me draw in black, white, and two shades of gray. It has a drawing app that supports other shades of gray, but the main notebook app and the PDF annotation is limited to those two shades of gray. I like to use a dotted grid in order to write in neat lines. I used to manually change this template to...

Thinking about webpage margins
8 Nov 2024 | original ↗

I want to write more, and I want to enjoy going through my archive. Some posts are long, especially those that come from transcripts. If I sat with the ideas for longer, I might be able to make them more concise or break them up into more atomic notes; but I also want to get things out faster in order to learn from potential conversations. So I'm...

Excerpts from a conversation with John Wiegley (johnw) and Adam Porter (alphapapa) about personal information management
6 Nov 2024 | original ↗

Adam Porter (alphapapa) reached out to John Wiegley (johnw) to ask about his current Org Mode workflow. John figured he'd experiment with a braindumping/brainstorming conversation about Org Mode in the hopes of getting more thoughts out of his head and into articles or blog posts. Instead of waiting until someone finally gets the time to polish...

How do I want to get better at learning out loud? Part 1 of 4: Starting
6 Nov 2024 | original ↗

Nudged by Thierry Stoehr's toot about my 23rd blogiversary, I've been thinking about how much I've learned thanks to blogging, and how I can get even better at learning out loud. I'm curious about what this could become over the next twenty years, when I'm in my sixties. 2024-11-04-04 How do I want to get better at learning out loud?...

Wednesday weblog: Toots ending 2024-11-06
6 Nov 2024 | original ↗

embark-org-insert-link-to - 2024-11-02T15:49:09.420Z Ooh, it looks like `consult-org-heading` already lets me use embark-act with the shortcut `j` to call `embark-org-insert-link-to`. It doesn't feel like a "j" shortcut, though, so I'll just bind it to `L` for "link" instead: `(keymap-set embark-org-heading-map "L" #'embark-org-insert-link-to)`...

Interactively recolor a sketch
5 Nov 2024 | original ↗

I wanted to be able to change the colours used in a sketch, all from Emacs. For this, I can reuse my Python script for analyzing colours and changing them and just add some Emacs Lisp to pick colours from Emacs. Figure 1: Selecting the colour to replace Figure 2: Selecting the new colour (defvar my-recolor-command "/home/sacha/bin/recolor.py")...

Emacs: Extract part of an image to another file
4 Nov 2024 | original ↗

It turns out that image-mode allows you to open an image and then crop it with i c (image-crop), all within Emacs. I want to select a region and then write it to a different file. I think the ability to select a portion of an image by drawing/moving a rectangle is generally useful, so let's start by defining a function for that. The heavy lifting...

A year with my cargo bike
4 Nov 2024 | original ↗

Summary: Life with a cargo bike has been working out really well for our family. I used to walk for an hour to get to some of A+'s playdates, pushing her in the Thule bike trailer / stroller that she still fit into. I liked bringing popsicles during the summer so that A+ could share them with her friends, so I often balanced a small cooler on top...

2024-11-04 Emacs news
4 Nov 2024 | original ↗

Emacs 30 and Emacs 31: Emacs 30.0 pretest packages for Fedora (Reddit) Build Emacs 31 for Windows · GitHub (@ldbeth@mastodon.sdf.org) Upcoming events: 200ok: EmacsConf 2024: Join Us in Lucerne for a Celebration of Free Software! Emacs Paris: S: Emacs workshop in Paris (online) https://emacs-doctor.com/ Tue Nov 5 0830 America/Vancouver - 1030...

Org Mode: Format Libby book highlights exported as JSON
2 Nov 2024 | original ↗

The Toronto Public Library (and many other libraries) offers e-book access through Overdrive, which I can read through the Libby app on my phone. It turns out that I can select passages to highlight. It also turns out that I can use the Reading Journey view to export the highlights as JSON, even for books I've returned. This is what the JSON...

Org Mode: Prompt for a heading and then refile it to point
31 Oct 2024 | original ↗

I sometimes want the inverse of org-refile when I create a subtree and think of things that should probably go into it. This function prompts for a heading that matches org-refile-targets and then moves it to the current location. (defun my-org-refile-to-point (refloc) "Prompt for a heading and refile it to point." (interactive (list...

↑ These items are from RSS. Visit the blog itself at https://sachachua.com/blog/ to find everything else and to appreciate author's digital home.