This action will delete this post on this instance and on all federated instances, and it cannot be undone. Are you certain you want to delete this post?
This action will delete this post on this instance and on all federated instances, and it cannot be undone. Are you certain you want to delete this post?
This action will block this actor and hide all of their past and future posts. Are you certain you want to block this actor?
This action will block this object. Are you certain you want to block this object?
Are you sure you want to delete the OAuth client [Client Name]? This action cannot be undone and will revoke all access tokens for this client.
Are you sure you want to revoke the OAuth token [Token ID]? This action cannot be undone and will immediately revoke access for this token.
| Words | https://f5n.org |
|---|---|
| Code | https://github.com/winks |
| Fediverse (DE) | https://chaos.social/@wink |

Rare self-promotion of a blog post because the topic has been haunting me for years: https://f5n.org/blog/2026/shell-scripts/

I find it pretty hilarious that Microsoft's RDP app for macOS (called "Windows App") is better than the native Windows 11 RDP client. Except for the name, of course.

What happens if you don't read the manual properly?
So I've been using TextAdept as sort of "not as an IDE/Code Editor per se, but a good Text Editor that can also do code" for years (because it's excellent) but I've always been missing VS Code's "Open folder".
So of course I started looking into implementing that but I really couldn't be bothered to dig into the C/C++ code and maybe keep my own fork.
But there's a `~/.textadept/init.lua` and I knew could do a few nice things with its Lua API.
So what I ended up having working:
Run `fd $(dirname current_buffer) | rofi -dmenu -sort -sorting-method fzf && open that file`, but partially in Lua.
But then I discovered "Projects" and also "Quick Open" which kinda does the same, so I now just have a couple lines of code for a function that does `dirname(current buffer's file), provide that editable in a popup dialog (so I can go up), and on submit opens the Quick Open (which has fuzzy search) with that dir as an argument.
And then a shell script to wrap my `fd $1 | rofi ... | xargs textadept` thing for out-of-editor use.
And 90% of it was in the manual. Doh.

I've not had problems with audio on Linux for 10 or 15 years but now I have some sort of Rube Goldberg setup (for stupid reasons?) and I just need to write it up as a blog post /facepalm

If you accept a knighthood, you should have to participate in at least one jousting tournament a year. The tournaments should be televised.

Updated IntelliJ and the IdeaVIM plugin didn't work. Noticed I am completely useless with normal editors until the shock recedes.

I wrote about using an old NUC with Linux as my personal dev environment in October and after doing #AdventOfCode I can't stress how happy this solution has made me.
An always-on scoped environment where I could even quickly remote into in a lunch break from a different machine. Second best thing to being on Linux full time, I guess.

Used a bit of #gleam for the first time for #adventofcode - and I have mixed feelings.
It's kinda neat, a few things are annoying, but I can't put my finger on it. It works very well, that's not it - people have apparently been arguing that it's not really like Elixir, but I see so many similarities which superfluously are not stemming from the BEAM. Maybe I just need to stick with it a little longer. Also maybe it's somehow just solid but not exciting? Guess I need to write a web app.

the g in gobject stands for glib, and the g in glib stands for gtk, and the g in gtk stands for gimp, however the g in gimp stands for gnu, so really the g in glib stands for gnu, but you shouldn't confuse it with gnulib, which is developed by the gnu project, who shouldn't be confused as the developers of glib, which is the gnome project, in which the g also stands for gnu

SPOTIFY WRAPPED
You listened to 0 songs. That's 0 seconds of music! You don't have a Spotify account.