Post - My Practice of Zettelkasten
Previously, I talked about my method1 of writing notes. Here’s where I’ll talk more about what steps I take to practice and implement this method.
I’m a huge fan of neovim. I sponsor the project and am super pleased with how using neovim has changed my workflow. I actually found this method of note taking on the awesome-neovim repository. It mentions a plugin neuron.nvim, which led me finally to neuron and the zettelkasten approach for note-taking.2
That being said, these are the tools I use to write my zettels. Neuron, Neovim and some fancy git hooks magic. The neuron neovim plugin3 provides excellent keybindings and telescope integration for fuzzy finding zettels.
I test the zettel locally on the local server and then deploy using this post-receive git hook
#!/bin/sh # The production directory TARGET="/var/www/devonmorris.dev" # A temporary directory for deployment TEMP="/tmp/devonmorris.dev" # The Git repo REPO="/srv/git/zettelkasten.git" # Deploy the content to the temporary directory mkdir -p $TEMP git --work-tree=$TEMP --git-dir=$REPO checkout -f # Deploy to github as well git push github -f --all # Generate site with neuron if [ -e /home/git/.nix-profile/etc/profile.d/nix.sh ]; then . /home/git/.nix-profile/etc/profile.d/nix.sh; fi cd $TEMP neuron gen -o $TARGET
With that I can create a new note, link to existing notes, commit, push and deploy in minutes. This makes writing notes, making connections and updating the website a breeze!