https://sachachua.com
Home :: Sacha Chua
Home :: Sacha Chua Skip to content Resources Contact Search Random Footer Page navigation Page 1Page 2Page 3Page 4Page 5AllNext page » On this page: Wednesday weblog: Toots ending 2024-10-02 2024-09-30 Emacs news Tiny chunks Using Emacs Lisp to export TXT/EPUB/PDF from Org Mode to the Supernote via Browse and Access Include inline SVGs in Org Mode HTML and Markdown exports org-attaching the latest image from my Supernote via Browse and Access Wednesday weblog: Toots ending 2024-09-25: Emacs and tech Wednesday weblog: Toots ending 2024-10-02 Oct 2, 2024| review Tech Server upgrade 2024-10-01T19:34:35.535Z Okay, my VPS should now be on Ubuntu 24.04 LTS. Things I bumped into along the way:- Had to reinstall MySQL for some reason. Fortunately kept all the data, although I did need to recreate directories for logs and sockets.- Reinstalled my Docker images. Fortunately kept all the data on disk, so that was fine. Along the way, upgraded my mongo DB from 4.2 to 4.4 to 5 to 6 to 7.- Panicked when gotosocial was taking a while to start up, interrupted it and tried again, ended up with a partially-migrated database and worse problems. Fortunately had a backup of the db, so I restored and patiently waited. Eleventy upgrade 2024-09-30T17:35:26.858Z I managed to get my blog upgraded from Eleventy 2 to Eleventy 3.0.0-alpha.20. find-dired and wdired were useful for finding all the .js files and turning them into .cjs. Supernote colour template 2024-09-27T03:05:15.033Z I finally got around to checking if the #Supernote can handle colour templates despite only letting me draw in black, white, and two shades of gray. It keeps the colour in the export! That means I can make a template that uses a specific color to make a grid, which is then easy to strip out of it with Python. That saves me 3-6 taps and reduces friction even further. Looking forward to experimenting with that at the next opportunity. Blog tweaks and other code - 2024-09-26T17:02:17.804Z A couple of little tweaks:- I re-added a "Random" link to my blog header, nudged by https://news.ycombinator.com/item?id=41647654- I added a sitemap.xml , so let's see if search engines pick stuff up- I wrote some code to move Org properties from a subtree to a parent- I changed my code for inserting the latest file from my Supernote A5X e-ink device into Org Mode to also recolor, recognize text, rename, and archive the file Setting up hibernate 2024-09-26T00:08:50.365Z I followed the directions at https://ubuntuhandbook.org/index.php/2021/08/enable-hibernate-ubuntu-21-10/ to set up a swap partition and enable hibernate. Now I can pause whatever I'm doing in Linux in order to switch to Windows to play Minecraft Bedrock with the kiddo, and then switch back to Linux afterwards. Life Drawing inspiration from reference librarians 2024-09-26T23:55:01.196Z I'm imagining the kind of person I want to grow into over the next few decades. I think a fair part of it might be learning how to be more like a reference #librarian for the kinds of things I'm interested in, like #Emacs. Might not know the answer itself, might know the general direction one can find the answer in and what kinds of words to look for; might not focus on finding the answer myself, might take the time to help people learn how to figure things out; might not focus on the surface question, but dig deeper to find out what might be a good fit, might not just wait for questions, might also do outreach and readers' advisory. This is a handy way for me to think about it because it means I can tap into how people have been learning about this sort of stuff for hundreds or even thousands of years. :)Some links:- https://blogs.princeton.edu/librarian/2008/02/rethinking_my_own_reference/- https://medium.com/everylibrary/a-day-in-the-life-reference-librarian-at-a-public-library-70999119a909- http://www.5minlib.com/2016/01/so-you-want-to-be-reference-librarian.html?m=1- https://www.forbes.com/sites/kalevleetaru/2019/08/20/digital-assistants-could-learn-a-lot-from-reference-librarians/ Shallow work 2024-09-26T02:42:11.765Z Shallow work is often all that I have time or energy for, and that's okay. I don't want to wait until I've got three hours of straight focus time. If I can learn how to make good use of five minutes here, ten minutes there, maybe the occasional 30 or 40 minutes when I'm lucky--if I can build something from all these little crumbs--then I think that's something that might be useful even later on. I expect my life to become more fragmented, not less, but I want to make something with it anyway. :)Practically speaking, that means:- learning out loud- looking for little improvements, reducing friction- shifting modes: maybe audio and sketches can work around some limitations- building connections between smaller ideas, both manually and automatically- figuring out what I can do with what I've got at the time Emacs novelty and community 2024-09-25T17:46:25.723Z Looking at how the kiddo dives deeply into one interest and then moves on to another, and how she gets such satisfaction from sharing those interests with me, I think part of why #Emacs has been a long-lasting interest of mine is that it involves an endless space of novel possibilities that is entirely because of a wonderful community. View org source for this post View or add comments (Disqus), or e-mail me at sacha@sachachua.com 2024-09-30 Emacs news Sep 30, 2024| emacs, emacs-news Upcoming events: EmacsATX: Emacs Social https://www.meetup.com/emacsatx/events/303579672/ Wed Oct 2 1600 America/Vancouver - 1800 America/Chicago - 1900 America/Toronto - 2300 Etc/GMT – Thu Oct 3 0100 Europe/Berlin - 0430 Asia/Kolkata - 0700 Asia/Singapore Emacs Paris: S: Emacs workshop in Paris (online) https://emacs-doctor.com/ Thu Oct 3 0830 America/Vancouver - 1030 America/Chicago - 1130 America/Toronto - 1530 Etc/GMT - 1730 Europe/Berlin - 2100 Asia/Kolkata - 2330 Asia/Singapore Emacs.si (in person): Emacs.si meetup #13 2024 (v #živo) https://dogodki.kompot.si/events/cb5ed2be-9c40-49be-a241-64dc14892ef6 Thu Oct 3 1900 CET M-x Research: TBA https://m-x-research.github.io/ Fri Oct 4 0800 America/Vancouver - 1000 America/Chicago - 1100 America/Toronto - 1500 Etc/GMT - 1700 Europe/Berlin - 2030 Asia/Kolkata - 2300 Asia/Singapore EmacsSF (in person): coffee.el in SF https://www.meetup.com/emacs-sf/events/303396554/ Sat Oct 5 1100 America/Los_Angeles Atelier Emacs Montpellier (in person) https://lebib.org/date/atelier-emacs Fri Oct 11 1800 Europe/Paris Beginner: Irreal: Emacs Doc Bling Emacs configuration: welkomscherm.el - How do you like this simple dashboard? tips for improving the code and UI very welcome - begginner! (Reddit) Configuring Emacs on My New Laptop (02:00:09) Una configuracion minimalista para Emacs — algo para comenzar (0x0003) - FTV (@barocio@techhub.social) Emacs Lisp: Emacs Lisp: Inserting to a variable rather than the buffer (@robsws@hachyderm.io) Appearance: Closing Pitch | Emacs Appearance Panel | Video 15 (04:09) Navigation: Announcing Casual EditKit (Reddit, Irreal) Cycling through most recently windows with ace-window Tip for using Emacs to review logs Dired: James Dyer: Simple Directory and File Creation in Dired Org Mode: Tip about using org-tree-to-indirect-buffer Emacs Org Mode Instant Preview: A VSCode-inspired setup for Org files `hyperdrive-org-transclusion`: `org-transclusion` add-on (Demo, Reddit) Very happy to annoced: org-zettel-ref-mode 0.3.5 Stable release! Import, export, and integration: Emacs Org Ros Package Take Screenshot And Insert In Open Org Buffer 2024_09_30_08:26:58 (07:36, Reddit) Sacha Chua: org-attaching the latest image from my Supernote via Browse and Access Sacha Chua: Include inline SVGs in Org Mode HTML and Markdown exports Sacha Chua: Using Emacs Lisp to export TXT/EPUB/PDF from Org Mode to the Supernote via Browse and Access Publishing on the web with Jekyll, Emacs and Org-Mode by Christian Dewein (@fabrik42@mastodon.social) Completion: From Ivy To Vert&co – Tristan's Zettelkasten (@tristanC@functional.cafe) Coding: Augmented nano-modeline to display which-function in orange (@root42@chaos.social) Release CIDER 1.16 ("Kherson") · clojure-emacs/cider · GitHub (@bbatsov@hachyderm.io) meow_king/zig-ts-mode: Emacs Zig Tree Sitter Mode - Codeberg.org (@meowking@mastodon.social) masukomi/private-comments-mode (@masukomi@connectified.com) Mail, news, and chat: rcirc-sqlite 1.0.3 new command rcirc-sqlite-stats-per-month (@mattof@functional.cafe) AI: Adding Artificial Intelligence To Emacs (15:31) Dictation with small LLMs and linguistic pragmatics (@lepisma@mathstodon.xyz) Evedel: Instructed LLM Programmer/Assistant (HN) Integrando AI con mi herramienta de trabajo preferida: Google Gemini, Emacs Lisp y GNU/Linux!! (10:02) Community: Weekly Tips, Tricks, &c. Thread VIM vs NANO vs Emacs: Which Linux Text Editor is Best for You? (01:14:08) (Telugu) Part Five of My Battles with Emacs (@macosxguru@fosstodon.org) Buff stacking Emacs (30:23) Other: Tip about using save-interprogram-paste-before-kill (@srijan@indieweb.social) Emacs: commands in popup frames with emacsclient (14:41) enote: Simple note taking helper which works literally in-place (Reddit) Anand Tamariya: HTML Renderer (Reddit) - render table via SVG J.e.r.e.m.y B.r.y.a.n.t: Emacs display code on TTY Turbocharging Emacs | Building GCCEmacs from source For Beginners (30:19) Javascript and more to emacs emacs application framework (01:45) localauthor: Emacs Popup Frames Anywere — MacOS Edition (Reddit, Irreal) Emacs development: emacs-devel: Nudge to add mouse-8 and mouse-9 bindings wherever there's history navigation Delete some libraries obsolete since Emacs 24.4/24.5 Try "python" before "python3" in python-mode Cease accepting the :reverse-video face attribute (bug#73552) Warn about :reverse-video in defface Add buffer-local register commands to DocView Move to start of current header in diff-{file,hunk}-prev New command diff-revert-and-kill-hunk * etc/NEWS: Describe the change to enum handling in CC Mode Declare nested backquotes unsupported in Pcase patterns (bug#72328) New packages: consult-gh-embark: Embark Actions for consult-gh (MELPA) consult-gh-forge: Magit/Forge Integration for consult-gh (MELPA) jwt: Interact with JSON Web Tokens (MELPA) omtose-phellack-themes: Two dark themes, with cold blusish touch (MELPA) torrent-mode: Display torrent files in a tabulated view (MELPA) zig-ts-mode: Tree Sitter support for Zig (MELPA) Links from reddit.com/r/emacs, r/orgmode, r/spacemacs, r/planetemacs, Mastodon #emacs, Hacker News, lobste.rs, programming.dev, lemmy.world, lemmy.ml, communick.news, planet.emacslife.com, YouTube, the Emacs NEWS file, Emacs Calendar, and emacs-devel. Thanks to Andrés Ramírez for emacs-devel links. Do you have an Emacs-related link or announcement? Please e-mail me at sacha@sachachua.com. Thank you! View org source for this post View or add comments (Disqus), or e-mail me at sacha@sachachua.com Tiny chunks Sep 30, 2024| productivity, life 2024-09-26-05 Tiny chunks #kaizen #productivity I want to get better at working in tiny chunks. Some of the things I find hard are: getting incomplete thoughts out of my head when the kiddo interrupts so that I don't get grumpy (because of the Ovsiankina effect) managing the stack of interrupting tasks and yak-shaving temptations still making time for larger projects or things with less-immediate or more uncertain payoffs Some general ways to improve: Reduce friction so that more things can fit in less time. Take notes Improve workflows and tools Create templates Build momentum: focusing several chunks on one project to minimize context switches and make more progress Lower expectations and split things up. Start with a rough cut and then refine. Use different types of work: Organizing information can be easier than thinking up something new Recognizing things from a list can be easier than recalling them from scratch How can I get better at using tiny chunks in different aspects of my life? Code: Now that I'm on a more powerful computer, I'm looking forward to learning how to take advantage of LSP, completion, and other modern conveniences. I can replace social media doomscrolling with reading APIs, guides, and code samples. I can take more notes and review them. Writing: If I sketch my thoughts, that can help me think through things in a more nonlinear way at the beginning. Mindmaps and sketchnotes might actually be easier than using text outlines, since I can do them off my computer. Dictation might help me turn other pockets of time into writing time, and then turn computer time into editing time. Improving my workflows makes it easier for me to get the text out into a blog post that has a sketch or a video or a screenshot. Drawing: I can ask smaller questions so that I can get to an answer faster. I also don't have to flesh out the full thought in the drawing - I can use dictation or writing to add more details. I can crop the image to remove the pressure to use the full page. I used to draw my thoughts on index cards. That was a good size for a small thought, and they were easier to build up into larger chunks. I can use visual organizers, metaphors, and other structures to help me think through things. That might also give me additional insights. Bigger projects: One of the things that sometimes frustrates me is having bigger projects that I can't figure out how to fit into smaller segments, or that take a lot of setup time and therefore tend to get deprioritized in favor of things with more immediate payoffs. I have a few 1.5-hour chunks of focused time because of A+'s virtual school, and I might be able to reserve more time eventually. It might be good to have that time when I'm not prioritizing short tasks and quick wins. Aside from that, if I get focused time in the evening, the trade-off is usually that A+ binge-watches YouTube videos when I'm not focusing on her. Sometimes I'm okay with this because I really want some thinking time. It's better when I'm getting that focused time because she's off doing something with W-, though. I tend to work on whatever I've been thinking about lately (availability bias), but it might be good to review longer-term projects/interests to keep them on my radar or make peace with archiving them. Even the stuff that feels like very slow progress can be worthwhile. Life: Sometimes I feel a little distracted by things I want to do, but it's worth figuring out how to put stuff aside so that I can play. Bluey has plenty of examples of short games that could be fun to play with A+. There's always time to work on health. Sometimes doing a single pushup makes it easier to do another, especially when the kiddo jumps in and starts exercising too. Similarly, a small chunk of time is great for tidying. View org source for this post View or add comments (Disqus), or e-mail me at sacha@sachachua.com Using Emacs Lisp to export TXT/EPUB/PDF from Org Mode to the Supernote via Browse and Access Sep 29, 2024| supernote, org, emacs I've been experimenting with the Supernote's Browse and Access feature because I want to be able to upload files quickly instead of waiting for Dropbox to synchronize. First, I want to store the IP address in a variable: my-supernote-ip-address(defvar my-supernote-ip-address "192.168.1.221") Here's how to upload: (defun my-supernote-upload (filename &optional supernote-path) (interactive "FFile: ") (setq supernote-path (or supernote-path "/INBOX")) (let* ((boundary (mml-compute-boundary '())) (url-request-method "POST") (url-request-extra-headers `(("Content-Type" . ,(format "multipart/form-data; boundary=%s" boundary)))) (url-request-data (mm-url-encode-multipart-form-data `(("file" . (("name" . "file") ("filename" . ,(file-name-nondirectory filename)) ("content-type" . "application/octet-stream") ("filedata" . ,(with-temp-buffer (insert-file-contents-literally filename) (buffer-substring-no-properties (point-min) (point-max))))))) boundary))) (with-current-buffer (url-retrieve-synchronously (format "http://%s:8089%s" my-supernote-ip-address supernote-path)) (re-search-backward "^$") (prog1 (json-read) (kill-buffer))))) HTML isn't supported. Text works, but it doesn't support annotation. PDF or EPUB could work. It would make sense to register this as an export backend so that I can call it as part of the usual export process. (defun my-supernote-org-upload-as-text (&optional async subtree visible-only body-only ext-plist) "Export Org format, but save it with a .txt extension." (interactive (list nil current-prefix-arg)) (let ((filename (org-export-output-file-name ".txt" subtree)) (text (org-export-as 'org subtree visible-only body-only ext-plist))) ;; consider copying instead of exporting so that #+begin_export html etc. is preserved (with-temp-file filename (insert text)) (my-supernote-upload filename))) (defun my-supernote-org-upload-as-pdf (&optional async subtree visible-only body-only ext-plist) (interactive (list nil current-prefix-arg)) (my-supernote-upload (org-latex-export-to-pdf async subtree visible-only body-only ext-plist))) (defun my-supernote-org-upload-as-epub (&optional async subtree visible-only body-only ext-plist) (interactive (list nil current-prefix-arg)) (my-supernote-upload (org-epub-export-to-epub async subtree visible-only ext-plist))) (org-export-define-backend 'supernote nil :menu-entry '(?s "Supernote" ((?s "as PDF" my-supernote-org-upload-as-pdf) (?e "as EPUB" my-supernote-org-upload-as-epub) (?o "as Org" my-supernote-org-upload-as-text)))) Adding this line to my Org file allows me to use \spacing{1.5} for 1.5 line spacing, so I can write in more annotations.. #+LATEX_HEADER+: \usepackage{setspace} Sometimes I use custom blocks for HTML classes. When LaTeX complains about undefined environments, I can define them like this: #+LATEX_HEADER+: \newenvironment{whatever_my_custom_environment_is_called} Now I can export a subtree or file to my Supernote for easy review. I wonder if multimodal AI models can handle annotated images with editing marks… This is part of my Emacs configuration.View org source for this post View or add comments (Disqus), or e-mail me at sacha@sachachua.com Include inline SVGs in Org Mode HTML and Markdown exports Sep 26, 2024| emacs, org [2024-09-26 Thu]: Whoops, forgot to make sure ox-11ty is also covered. In my Org Mode HTML and Markdown exports, I usually want to include SVGs inline so that I can use links. Sometimes I also want to use Javascript and CSS to modify elements within the images. I used to use a my-include: link to do this, but I realized that I can also modify this behaviour by making my own functions that call org-html-link or org-md-link and then put those functions in org-export-backend-transcoders. Here is an example of an SVG: g Graphviz Graphviz Org Mode Org Mode Graphviz->Org Mode SVG HTML HTML Org Mode->HTML Markdown Markdown Org Mode->Markdown The following code overrides HTML and Markdown exports to include SVGs. (defun my-ox-link-path (link _ info) (let* ((raw-path (org-element-property :path link))) (setq raw-path (org-export-file-uri (org-publish-file-relative-name raw-path info))) ;; Possibly append `:html-link-home' to relative file ;; name. (let ((home (and (plist-get info :html-link-home) (org-trim (plist-get info :html-link-home))))) (when (and home (plist-get info :html-link-use-abs-url) (not (file-name-absolute-p raw-path))) (setq raw-path (concat (file-name-as-directory home) raw-path)))) raw-path)) (defun my-org-html-link (link desc info) (if (and (string= (org-element-property :type link) "file") (org-export-inline-image-p link (plist-get info :html-inline-image-rules))) (let ((path (my-ox-link-path link desc info))) (if (string= (file-name-extension path) "svg") (with-temp-buffer (insert-file-contents-literally path) (buffer-string)) (org-html-link link desc info))) (org-html-link link desc info))) (defun my-org-md-link (link desc info) (if (string= (org-element-property :type link) "file") (let ((path (my-ox-link-path link desc info))) (if (string= (file-name-extension path) "svg") (with-temp-buffer (insert-file-contents-literally path) (buffer-string)) (org-md-link link desc info))) (org-md-link link desc info))) (defun my-ox-11ty-link (link desc info) (if (string= (org-element-property :type link) "file") (let ((path (my-ox-link-path link desc info))) (if (string= (file-name-extension path) "svg") (with-temp-buffer (insert-file-contents-literally path) (buffer-string)) (org-11ty-link link desc info))) (org-11ty-link link desc info))) (with-eval-after-load 'ox-html (setf (alist-get 'link (org-export-backend-transcoders (org-export-get-backend 'html))) 'my-org-html-link)) (with-eval-after-load 'ox-md (setf (alist-get 'link (org-export-backend-transcoders (org-export-get-backend 'md))) 'my-org-md-link)) (with-eval-after-load 'ox-11ty (setf (alist-get 'link (org-export-backend-transcoders (org-export-get-backend '11ty))) 'my-org-11ty-link)) This is part of my Emacs configuration.View org source for this post View or add comments (Disqus), or e-mail me at sacha@sachachua.com org-attaching the latest image from my Supernote via Browse and Access Posted: Sep 26, 2024 - Modified: Sep 29, 2024| emacs, supernote, org [2024-09-29 Sun]: Use sketch links when possible. Recolor before cropping so that the grid is removed. Figure 1: Diagram of different ways to get drawings off my Supernote A5X Text from sketch Supernote A5X Screen mirroring (pixelated) -> Puppeteer screenshot (or maybe .mjpeg?) Browse & Access (HTTP) -> latest file: recognize text, recolor, crop, upload? Dropbox/Google Drive (slow) -> batch process: recognize text, recolor, upload Bonus: Autocropping encourages me to just get stuff out there even if I haven't filled a page ideas: remove template automatically? I wonder if I can use another color… 2024-09-26-01 I want to quickly get drawings from my Supernote A5X into Emacs so that I can include them in blog posts. Dropbox/Google Drive sync is slow because it synchronizes all the files. The Supernote can mirror its screen as an .mjpeg stream. I couldn't figure out how to grab a frame from that, but I did find out how to use Puppeteer to take an screenshot of the Supernote's screen mirror. Still, the resulting image is a little pixelated. If I turn on Browse and Access, the Supernote can serve directories and files as webpages. This lets me grab the latest file and process it. I don't often have time to fill a full A5 page with thoughts, so autocropping the image encourages me to get stuff out there instead of holding on to things. (defvar my-supernote-ip-address "192.168.1.221") (defun my-supernote-get-exported-files () (let ((data (plz 'get (format "http://%s:8089/EXPORT" my-supernote-ip-address))) (list)) (when (string-match "const json = '\\(.*\\)'" data) (sort (alist-get 'fileList (json-parse-string (match-string 1 data) :object-type 'alist :array-type 'list)) :key (lambda (o) (alist-get 'date o)) :lessp 'string< :reverse t)))) (defun my-supernote-org-attach-latest-exported-file () (interactive) ;; save the file to the screenshot directory (let ((info (car (my-supernote-get-exported-files))) new-file renamed) ;; delete matching files (setq new-file (expand-file-name (replace-regexp-in-string " " "%20" (alist-get 'name info) (org-attach-dir)))) (when (file-exists-p new-file) (delete-file new-file)) (org-attach-attach (format "http://%s:8089%s" my-supernote-ip-address (alist-get 'uri info)) nil 'url) (setq new-file (my-latest-file (org-attach-dir))) ;; recolor (my-sketch-recolor-png new-file) ;; autocrop that image (my-image-autocrop new-file) ;; possibly rename (setq renamed (my-image-recognize-get-new-filename new-file)) (when renamed (setq renamed (expand-file-name renamed (org-attach-dir))) (rename-file new-file renamed t) (my-image-store renamed) ; file it in my archive (setq new-file renamed)) ;; use a sketch link if it has an ID (if (string-match "^[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]-[0-9][0-9] " (file-name-base renamed)) (org-insert-link nil (concat "sketchFull:" (file-name-base renamed))) ;; insert the link (org-insert-link nil (concat "attachment:" (replace-regexp-in-string "#" "%23" (file-name-nondirectory new-file))))) (org-redisplay-inline-images))) This is part of my Emacs configuration.View org source for this post View or add comments (Disqus), or e-mail me at sacha@sachachua.com Wednesday weblog: Toots ending 2024-09-25: Emacs and tech Sep 25, 2024| review Emacs: Emacs community Looking at how the kiddo dives deeply into one interest and then moves on to another, and how she gets such satisfaction from sharing those interests with me, I think part of why #Emacs has been a long-lasting interest of mine is that it involves an endless space of novel possibilities that is entirely because of a wonderful community. keyboard shortcuts I wonder if someone's already written a newbie-friendly #Emacs Customize-based interface for defining and saving keyboard shortcuts, function aliases, and other little things that could make it easier for people to make Emacs more comfortable for themselves. org-src-lang-modes and web-mode I want my #Emacs #OrgMode `#+begin_export html ... #+end_export` blocks to open in web-mode, not html-mode. I customized `org-src-lang-modes` and now `org-edit-special` does the right thing. Yay Emacs! beginner map I pulled together a bunch of beginner-oriented links from past #Emacs News and started mapping out topics. https://sachachua.com/web/beginner-map.html consult-omni and Google searches I want to quickly look up and add links. [consult-omni](https://github.com/armindarvish/consult-omni) lets me search within #Emacs instead of switching to a web interface. After I set up consult-omni-google with a Google custom search engine and a JSON API key, I can call it with my shortcut: `M-g w`. Using `M-n` for future history pulls in the word at point. Then I can select a site and use Embark to insert with `C-. i` or copy with `C-. w`.My config: https://sachachua.com/dotemacs#consult-omni Tech: hibernate I followed the directions at https://ubuntuhandbook.org/index.php/2021/08/enable-hibernate-ubuntu-21-10/ to set up a swap partition and enable hibernate. Now I can pause whatever I'm doing in Linux in order to switch to Windows to play Minecraft Bedrock with the kiddo, and then switch back to Linux afterwards. ffmpeg and fps I noticed out-of-sync subtitles when I used #ffmpeg to combine an animated gif with audio and subtitles. Turns out all I needed to do was to bump up the fps with the fps filter in order to get the video to play smoothly. View org source for this post View or add comments (Disqus), or e-mail me at sacha@sachachua.com Page navigation Page 1Page 2Page 3Page 4Page 5AllNext page » Home About Outline Archives Privacy Contact Subscribe RSS feed Random Sketches Email - Mastodon - Github Copyright © 2001-2024 Sacha Chua (sacha@sachachua.com). Emacs code snippets are generally under GPLv3+; other snippets are dual-licensed under the MIT License or GPLv3+ unless otherwise indicated. Please feel free to reuse or share stuff under a Creative Commons Attribution license unless otherwise noted. Thanks for reading!
en
us
en-US
https://sachachua.com
Hlela isayithi yakho?
Wentani?