Personal Knowledge Management

Obsidian

Obsidian is "A second brain1, for you, forever. Obsidian is a powerful knowledge base on top of a local folder of plain text Markdown files."

I started using Obsidian in early 2021—my first daily note is 2021-02-16-Tue.

!Shortcuts

Syntax

  • <a href="Link.html">Link</a> to link to a note
  • !<a href="Link.html">Link</a> to fully transclude that note!
  • <a href="Link.html">Link</a> + # to reference a section
  • <a href="Link.html">Link</a> + ^ to reference a block
  • ##... to reference headers across the vault (regardless of note)
  • ^^... to reference blocks across the vault (regardless of note)

Embed Queries

"example query"

Plugins

These are some of the plugins I use, ordered approximately by frequency or importance of use.

obsidian-tasks

  • I use this paired with Espanso shortcuts for ;tod and ;tom to generate the completion time 📅 YYYY-MM-DD
  • priority
    • ⏫ for high priority
    • 🔼 for medium priority
    • 🔽 for low priority

Templater

obsidian-todoist-plugin

  • Paired with the Todoist browser plugin, this forms part of my capture from email to Obsidian: emails are batch processed and tasks and consume later are moved to Obsidian with the plugin

obsidian-book-search-plugin

  • Starting 2022-07-15-Fri this is how I populate metadata for my →About My Reading Notes|Reading Notes
  • Template File: Book Search Template

omnisearch

quick-switcher++

  • ⌘ + H - search by heading

note-refactor-obsidian

obsidian-excel-to-markdown-table

meld-calc

  • ⌘ + ⇧ + C - evaluate expression (ending in "="

obsidian-dataview

  • Dataview query on each person's page for next meeting (from here)

strange-new-worlds


dv.taskList(dv.pages().file.tasks.where(t => !t.completed && t.text.includes("Dana")))

Last updated:

table file.mday
where file.name = "Sacred Artwork"

Jupyter

allows you to run python in Obsidian

  • Set path in settings to: /opt/anaconda3/bin/python
x = 1+2
print('x = {}'.format(x))
import numpy as np
from matplotlib import pyplot as plt
x = np.linspace(0,1)
y = np.exp(x) * np.sin(40 * np.pi * x)
plt.plot(x, y)
pass
import pandas as pd
df=pd.read_html('https://en.wikipedia.org/wiki/List_of_Catholic_saints')
print(df[2].head())

obsidian-various-complements-plugin (auto-complete)

Plugins to try out?

Obsidian Publish

Obsidian Publish is a paid service to publish part of your vault online. I use my own pair of scripts for notes and reading notes to publish from my vault with limited functionality, and I am tracking Obsidian Publish Alternatives with an eye toward adding more functionality in the future.

Callouts

[!Info]
Here's a callout block.


additional callout examples

[!Warning]
Here's a callout block.

[!Note]
Here's a callout block.

[!Tip]
Here's a callout block.

[!Quote]
Here's a callout block.

[!Question]
Here's a callout block.

Custom CSS

  • ⌥⌘+I = Option+Command+I = Open inspector (for CSS, etc.)
  • How to find elements to adjust (link)

Graph View

  • filter path: path:"Reading Notes" or -path:"Daily Notes" -path:"NABRE"

Some Resources