obsidianrc - a programmer's approach to obsidian

July 23, 2023

my biggest hangup with obsidian has always been that it isn’t vim. as a longtime vim user i’m used to being able to fully customize and extend my editing experience.

there are many existing community plugins that make it easy to customize some parts of obsidian but whenever i would have an idea or a desired workflow that didn’t fit into one of those existing boxes i was stuck.

i had three options, roughly in order of immediate work required:

  1. adapt my own workflows to fit the existing options
  2. contribute to an existing community plugin and hope that the original author has time to review, merge in, and publish my change
  3. build my own plugin to do exactly what i want

so today i had an idea for another, hopefully easier option: obsidianrc

an obsidianrc is a personal, custom plugin that resembles an “rc“ file like a .vimrc. it has no one purpose but instead is a grab-bag of whatever the author needed at the time. an obsidian user’s obsidianrc evolves with her as she comes up with new workflows or changes her existing workflows.

the freedom of the obsidianrc is that it never needs to be used by anyone but its author. it’s a workbench covered in jigs. if any bit of functionality ever sticks out as generally useful the code is easily (famous last words perhaps…) extracted into its own plugin and published in the community plugin repo.

create your own obsidianrc

  1. use the obsidian-sample-plugin template
  2. name your repo obsidianrc
  3. install your obsidianrc in your vault
  4. fill your obsidianrc with whatever need whenever you need it
  5. (optional) use BRAT to install your obsidianrc and keep it up-to-date

what’s in my obsidianrc?

well at time of writing, not much. but you can take a look for yourself: sloanelybutsurely/obsidianrc