Monthly review for May 2024

This month I spent 32 hours on translation (22 of which are for KDE), and 30 hours on development.

Open source contributions

  • Shiki: add support for Vala, Genie, QML, QSS, qmldir, Haxe, HXML, Wikitext, Soy (shikijs/textmate-grammar-themes#54)
  • Shiki: add support for Emacs Lisp via Alhadis/language-emacs-lisp (shikijs/textmate-grammar-themes#56)
  • Fix code links being indistinguishable from non-link inline code in Remix docs (remix-run/remix-website#262). This was a case of CSS specificity being a little unintuitive. I plan to file a PR for which has a similar issue, though it's not as severe — I thought it didn't have the same problem at first.
  • emacs-typescript/typescript.el#189: Make typescript-mode recognize the satisfies keyword added in TypeScript 4.9. typescript-mode is more or less left behind in favor of the tree-sitter-based TypeScript mode that's now built into Emacs 29+, but I'm still using typescript-mode since I haven't yet bothered to set up tree-sitter.
  • highlightjs/highlight.js#4058: Same for highlight.js, adding support for satisfies in TS. highlight.js is used by, for instance, SolidJS's website (even though IMO Shiki is a much better choice since Shiki 1.0), so once this is released and trickles down into websites the days of seeing satisfies unrecognized in a popular component framework's announcement post should finally be over. highlight.js has already accumulated 7 months of unreleased changes, though.

In-progrss contributions


I started providing Taiwanese Mandarin translations to HandBrake. The next Linux HandBrake release should already be a lot less painful to use in zh_TW, with simple interface strings.

I also translated into Taiwanese Mandarin after seeing an invitation to translate in the l10n-tw community.

Kdenlive is now 112 strings away from being fully translated. I want to finish it in a final push or two, maybe today or tomorrow.

Other projects

  • Citation Needed sticker in Mandarin
  • Canrylog: I can now see how much time I've spent on a task or tag over some period.
  • I started adding a translation memory feature to k-po-mode, my po-mode fork that I wish to morph into a translation environment that can rival Lokalize.