AI Usage Disclaimer

I want to start this post with an apology. I did not expect it would take this many days to write another devlog post. I've been postponing writing this, mainly because I was busy with things, but the main reason was the lack of motivation, which is the worst excuse one can ever use. I'll post more frequently, either weekly or biweekly, NOT or whatever like I said in the last devlog.

Anyway, let me start sharing what I've been up to.

Fonts

One thing I've been spending unnecessarily long time on is which fonts to use on this website. When I started this blog, I wanted to use less common fonts that looked nice. So, I started with Zalando Sans, which was short-lived because I came across Funnel Sans, it felt like a better Inter to me.

As I went on reading others' posts on their websites, I realized reading paragraphs with a sans font felt very distracting. So I decided to move to a serif font. Then spent some more days deciding whether to be a sans guy or a serif guy, and the result is what you see right now. I ended up defaulting to a serif font, but added extra options for sans and monospace. I'm now locking-in on these chosen fonts for 3 years, no matter what happens.

One little optimization I'm doing is limiting the charset of the said fonts to ASCII (plus some other characters), saving ~40% of network bandwidth per font. Of course, the underlying assumption is that I control all of the text content on the website, and it's mostly English.

That's about it. Now y'all can choose whichever one you like :)

Promptr

I've started working on a new idea I've had for a long time. I know C, but don't know GTK APIs that well, so this is a slop-first project. As of now, the latest release v0.2.3 works like OpenCode CLI wrapper. The high level architecture looks something like this:

promptr-current-arch
promptr-current-arch

I'm currently working on a new architecture that will allow switching the providers. I've picked OpenRouter as the next provider. The plan is to allow adding more providers as plugins. This is the high level overview of the WIP architecture:

promptr-next-arch
promptr-next-arch

Moving back to Neovim

I used to use Zed as my primary text editor (with vim keybindings), and for terminal's $EDITOR, with near-default config. My problem with Zed was simple, forcing AI features down my throat even though I don't like to use it.

So far I've used Sublime Text, VSCode, Neovim, Emacs+Evil and Zed as my primary editors. I wanted emacs to give one more chance, this time with native keybindings instead of the evil-mode, so I did, and it's not my cup of chai. Too much effort to do simple things. So, I'm back to neovim. My only small problem with neovim is that I'm restricted to what TUI can offer, which feels limiting but other than that it's all good.

I wanted to have two variants of neovim, one lightweight variant with near-default config and plugins - used when I want quick text editing, e.g. git commit messages, configs etc and the other more sophisticated variant with more plugins, LSPs, formatter etc. $NVIM_APPNAME environment variable lets me do exactly this. Now I have two aliases in my .bashrc:

alias v="nvim"
alias ve='NVIM_APPNAME="nvim-dev" nvim'

You can check out my dotfiles for reference. There's still more to learn, I have yet to come across a conflict-resolver that's as good as VSCode though.

That's about it for now.

Some of the things I've read or been reading over the past few weeks -

By the way, if you're interested, you can check out all devlogs here.