CANNABIS AND CANNABINOIDS
Using Kanata for Homerow Mods
I like my homerow mods. I really wanted a way to have that ergonomic advantage in the (admittedly rare) times that I'm at my laptop but don't have one of my external keyboards out1. For years Karabiner has been the tool I've used for remapping keys and modifying input on OSX. The past few months I've been playing with kanata. Karabiner is still the simplest and best way to handle simple modifications, but if you want to track the configuration in git or do something more complex like homerow mods,
kanata is better. My kanata config is a nix module. It mostly installs kanata and just the karabiner-driver so that it can do input monitoring on OSX. It also adds a convenience script for switching layouts (so I can disable homerow mods if I wanted to play Factorio, for instance.) I used AI quite a bit to build my layout. I pointed it at my zmk-config folder, and told it I wanted the homerow mods as a kanata layout, and after a little fixing, it was pretty much done. (I'm still flirting with an entire 5x3_2 layout on a macbook pro, using r and u has home keys. Wild!) All of this has been working very well for a while, and I'm very pleased. When there's an update to nix, it all breaks. The running kanata executable is no longer symlinked to the exact same location in the Nix store. I then just have to: 1. In the terminal: open /run/current-system/sw/bin/, select kanata and ⌘-C. 2. go to Settings → Input Monitoring and remove Kanata, click the plus for Add, and ⌘-V to paste the correct new link. Do the same for Settings → Accessibility. 3. In the terminal: sudo launchctl kickstart -k system/org.kanata You are fine till the next time it breaks. 🤷 1. Mostly this is while I'm using my portable standing desk while working out, or at a small table at a coffeeshop. ↩NUTRITION FOOD AND SUPPLEMENTS
Sunday Drop Biscuits
Sunday Drop Biscuits The past few months I've been trying to set apart the sabbath. It's hard for my little kids to look forward to the day of rest so I'm trying to hoard some special things for them: games we play on the afternoon, nerf battles that are reserved for Sunday afternoon… and every morning there are biscuits. This morning my 1YO clapped her hands with joy as soon as she saw them, so I'll probably keep this up as long as she approves. This recipe started with a bakerbettie recipe, but I have tweaked it for weekly efficiency. You should be able to wrap up the prep before your oven starts pre-heating and have plenty of time to make coffee or grits while they bake. (These days, I've been making a smoothie for the kids while it bakes.) ## Ingredients - 2 cups all-purpose flour - 1 tablespoon baking powder - ½ tablespoon of rough cut salt - 1 stick unsalted butter, very cold and cut into small pieces - 1 cup milk or buttermilk ## Instructions 1. Preheat the oven to 450°F/230°C. 2. In a large bowl, whisk together flour (2 cups), baking powder (1 tablespoon), and salt (½ tablespoon) together. 3. Add the pieces of cold butter and cut into the dry ingredients with a pastry cutter or fork until the consistency of coarse meal. 4. Add 1 cup of milk and stir just until combined. If the batter is very dry, add a tiny splash of milk until the clumps barely sticks together. Do not over-mix. 5. Drop large mounds into the buttered cast iron skillet. The mounds can be touching on the sides. 6. Bake for 16-20 minutes until golden brown. 7. Sprinkle with flaky salt. ## Every Part of the Biscuit Buffalo Minus a dough-cutter I forgot to knoll out here, this is all the "hardware" you need. Here's a few things I've learned to make this a little easier to repeat week upon week: As soon as you wake up, throw the stick of unsalted butter in the freezer since you don't remember to do that Saturday night. Use a coarse cheese grater to swiftly cut down the cold unsalted butter onto a plate or ingredient scraper. Get all the butter out with a butter knife. Save the butter paper to schmear the butter on your cast iron pan. I use a small wooden spoon that works perfectly with the TB spoon measure to dispense the lumpy dough. When you are done, put all the bits into the mixing bowl, squirt soap inside, and fill with water to make cleaning easy. It often works out that I'm done cleaning up and starting my coffee so that the last four minutes of the biscuit timer becomes the aeropress steep timer.
DEV OPS AND SITE RELIABILITY
MOBILE APP DEVELOPMENT
Quick Look: Obsidian Notebook Navigator
In my last post on Obsidian I talked about the problem of getting an inbox to obsidian on mobile. What I haven't covered is processing and writing those captures. While the reason to use Drafts.app is the quick capture, an underappreciated aspect is to have one location for all my "in progress" thoughts. So often in the years that Drafts was in my iOS dock a half-baked shower thought would progress into a blog post over the following weeks. As I shifted to using Obsidian for all my mobile writing/note-taking I used the folder of time-stamped drafts for holding the thoughts, but getting to them and processing them wasn't very easy. I had a simple dataviewjs thing for viewing the folder in a Inbox.md: const files = app.vault.getFiles() .filter(f => f.path.startsWith("inbox/")) .sort((a, b) => b.stat.ctime - a.stat.ctime); const items = await Promise.all(files.map(async f => &lbrace const content = await app.vault.read(f); const preview = content.replace(/^---[\s\S]*?---/, "").trim().slice(0, 120); return &lbrace file: f, preview } &rbrace)); const dl = dv.el("dl", ""); for (const &lbrace file, preview &rbrace of items) &lbrace const dt = dl.createEl("dt"); dt.createEl("a", &lbrace text: file.name, href: file.path, cls: "internal-link" &rbrace); dl.createEl("dd", &lbrace text: preview + "…" &rbrace); &rbrace I'd just open the links in new tabs, review them, and had some shortcuts for deleting/moving them. Not great. This past week, Notebook Navigator has replaced this dataview hack and made my Obsidian inbox a comfy place that is very Drafts.app-esque. Notebook Navigator is a rather extensive plugin and does way more than what I'm using it for… but for me just enabling it and disabling the built in Obsidian Files plugin has made a world of difference. Now on mobile when I swipe over to the left sidebar, I typically see a list of recent documents. That's 95% usually one touch to the thing I'm looking for, but if not I can view the inbox folder as a list with previews. Notebook Navigator (with some configuration) can support my journaling structure. The Notebook Navigator Calendar feature is a really nice interface on mobile with quick access to my incrementally abstract journaling notes. Each of those UI elements links to the right thing! The author of Notebook Navigator updates it frequently, with recent updates focusing on helping folks write long form work like Scrivener. If you've been wrestling with navigating your wiki, especially on mobile, give it a try.
NOTEBOOK NAVIGATOR
MOBILE APP DEVELOPMENT
My OBS Setup
Since I'm too cheap to pay for loom.com (which is a great product!) I have been using OBS to record videos to throw into Slack or YouTube for friends. I know that OBS saves it's settings to ~/Library/Application Support/obs-studio and I could backup my settings, but I have not yet done that, and so I have had to re-set up my settings lots of times. Here is how I typically set up my OBS for simple screen shares: Add sources: Video Capture Device for iPhone Continuity Camera Desktop Share (separate MacOS Screen Capture sources for laptop monitor than desk monitor!) Settings for Desktop Share: Hide OBS from Capture ☑️ Adjust gain to match either AirPods or my lavalier . Set canvas to size of biggest monitor: Settings → Video → Base (Canvas) Resolution → 3480x2160 Duplicate the default scene to create two scenes. Share: Full screen screen share with small camera in bottom right Talk: Full screen camera view Set Talk be full-screen camera by reordering sources and adjusting size. Set auto switch: Tools → Automatic Scene Switcher : When no window matches: Switch to Share When OBS: Talk Settings → Output → Recording → Recording Quality : Indistingushable, Large File Size I think that’s it! I'll adjust this as I find the other settings. 😂
LOOMCOM