This month I think I did quite a few things, which I'm now more able to quantify thanks to my progress on Canrylog.
I logged about 45 hours developing stuff, and 17 hours translating KDE.
AUR packages
I adopted the AUR packages rime-pinyin-zhwiktionary
and fcitx5-pinyin-zhwiktionary
(they share a PKGBUILD) in order to fix 404 during build. They were relying on a specific Wiktionary dump from 2022 being provided, instead of using the latest versions.
I also created the AUR package rime-pinyin-zhwiktionary-hant
, trying to provide a Wiktionary corpus for Traditional Chinese RIME users.
There was a particularly nasty issue with the package python-pdm-pep517
, which is a makedependency of cmake-language-server
, where it would modify the global Git config and change the user name and email, as the PKGBUILD seemed to have been written assuming that it'd run on some temporary environment. I got bit by this and had a few commits under “Your Name”. I committed a fix then disowned the package again.
Making my RIME dictionary a standalone repository: kisaragi-rime-tw
Since I have the need to type a lot while translating, I started to find the default candidates and behavior that RIME provided to be a little annoying sometimes. For instance, keeping the word frequency learning on means I can't rely on particular words being in particular places, like for 時間 and 事件: with my current setup after turning off frequency learning I can now rely on ㄕ ㄐㄧㄢ RET
always giving me 時間, whereas before I'd have to type out the full tones and/or slow down to check the candidate list before I commit the text.
(The frequency learning can be turned off by setting enable_user_dict to false for the translator.)
But with freqeuncy learning turned off, the default dictionaries would sometimes provide suggestions that for Taiwanese Mandarin would be wrong or questionable. To fix that I effectively forked rime-essay as well as the .dict.yaml
of rime-terra-pinyin in order to modify them to provide more suitable suggestions for Taiwanese Mandarin.
Existing projects
- I made my Quick redirector for KDE Projects show a suggestion if the user had a typo, so that even if I misremember kcmutils as “kcm-utils” I'd still be able to quickly get to where I want.
canrylog-cli: released 0.1.6 ~ 0.2.2, which includes
- an
about
command that acknowledges dependencies - a rudimentary auto sync feature based on Git, for feature parity with canrylog.el
- rudimentary reporting: report which task was active for any given moment
- an
Work in progress
- I spent some time (about 8 hours) trying to make a searchable list of all disaster shelters in Taiwan based on data provided by local governments, starting from the early hours of April 23. This was prompted by the sudden uptick in aftershocks from the April 3 earthquakes, and has a commit that was made during a minute-long earthquake. It's… usable enough that I would use it if I needed to go find a shelter in Kaohsiung, but far from complete right now.
- I started to try to use Tauri to make a cross platform scratchpad note app. This is currently just a prototype.
- I spent some effort trying to make an offline Wiktionary, but I'm considering giving up after realizing that it's absolutely not as simple as grabbing the dump, sticking it into an SQLite database, making an alright interface and being able to enjoy an offline copy of Wiktionary that loads quickly. Wiktionary, even smaller ones like Japanese Wiktionary or Chinese (actually just Mandarin) Wiktionary, is just too big for that to necessarily be faster than simply using the online version.
Open source contributions
- I made two PRs to Bluesky's official client, one to fix the navigation bar on Android always being bright on dark mode (it's quite gnarly) (bluesky-social/social-app#3464), and another to fix the Android app still using the default Material Teal as the accent color (which looks out of place) (bluesky-social/social-app#3555).
- I tried out Wakatime again for automatic time tracking (but just for development). While configuring it, I found that a configuration key was being interpreted differently in its VSCode plugin versus in its CLI app, so I filed a PR to fix the VSCode plugin. The key in question was also documented in a way that was a little misleading; I filed wakatime/wakatime-cli#1043 to fix that too.
- cxa/lsp-biome#1: make the lsp-mode client for Biome also activate in cjs and cts files
I hooked up Shiki to support a few more languages, as well as use a much better grammar for Common Lisp. The languages are:
- .desktop, log files, systemd units, Gettext (via shikijs/textmate-grammars-themes#49)
- Racket, Fennel, Hy, and Common Lisp (via shikijs/textmate-grammars-themes#50)
- Shiki really made this easy. If there is a TextMate or VSCode grammar for a language, then the language could be easily added to Shiki.
However there doesn't appear to be an Emacs Lisp grammar. Fair enough, who edits Emacs Lisp outside of Emacs? But that does mean if I want syntax highlighting tailored to Emacs Lisp I may just have to fork qingpeng9802/vscode-common-lisp and morph it into being for Emacs Lisp instead…
- Edit 2024-05-09: there is, Alhadis/language-emacs-lisp (Atom plugin for Emacs Lisp), which is also used by GitHub Linguist to provide syntax highlighting for Emacs Lisp on GitHub. I filed a PR a few days ago and it's been merged.
etc.
I logged 17 hours in KDE translation.