Category: Code


  • lsgrep is just a simple tool I use to quickly find files matching a search pattern in the current directory. I just figured I’d share it because I end up using it a lot. My primary shell is Fish, so I’ll share that one first. This version uses silver searcher (ag) to search for matches.…

  • I made a thing I think is pretty cool. It’s an indeterminate progress indicator for use in your scripts, inspired by the way Cursor indicates it’s working. In Cursor, when it’s generating or thinking, it shows some text that looks like a spotlight is panning across it. I figured it would be easy enough to…

  • I’ve been waking up around 4 every morning, which I’m grateful for because 4–8am is the only time I really have for coding on my own projects. The lack of sleep is getting to me, but I’ve been productive. I’m currently working on a new Lorem Ipsum generator in Ruby that will function as a…

  • I’ve published an entirely reworked version of my Markdown Lorem Ipsum API. It’s a fix, but also a major improvement. The md-lipsum API gives you Lorem Ipsum in Markdown format, ready for use in testing and tools. The original version of it used an external API to generate the Lipsum, but that API has disappeared…

  • I’ve published a few updates to SearchLink since we last talked, some bigger than others. Here’s a rundown of what’s new. URL Shortening First, I added more built-in URL shortening. In addition to Bit.ly shortening, you can now use is.gd or TinyUrl. Bit.ly and TinyURL require an API key, so see the configuration for details…

  • I recently published a Karabiner trick that turned [kbd semicolon] plus [kbd j / i / k / l] into arrow keys. I’ve determined that my implementation could use some work. Here’s the redux. [series_list KeyBinding] The original tip used Karabiner to turn [kbd semicolon] into a [kbd Fn] key when pressed with other keys,…

  • I wrote a pretty basic script a long time ago that converts TaskPaper files to Markdown for nice previewing/publishing. I recently updated it with a bunch of modernizations. I originally wrote this script (*goes to check*) — jebus, fifteen years ago. I guess I’ve been doing this stuff for a while now. Anyway, the original…

  • I’ve been working away from my office a lot, so I’ve been using my MacBook Pro keyboard as often as my Ultimate Hacking Keyboard. I missed the Mod-J/K/I/L arrow key navigation, so I hacked a little modification in using Karabiner that fills the gap. I’ve determined that this implementation is faulty. See the update for…

  • I’ve been playing with some Karabiner Elements setups and thought I’d start sharing some that I find useful. I’m publishing these as part of the KeyBinding series, as I think they make sense there. [series_list KeyBinding] This first one is a way to make tab switching ([kbd cmd-[ / ]]) slightly more convenient. I say…

  • I’ve published a repo of my own Git commands and aliases. Most of these commands started as aliases and then got more complex. All of the commands are described in the README. They’re nothing terribly complex, but I find them all useful almost every time I use Git. I’ve also included my collection of aliases.…