44 lines
1.6 KiB
EmacsLisp
44 lines
1.6 KiB
EmacsLisp
;;; obsidian-config.el -*- lexical-binding: t; -*-
|
|
|
|
;; configure obsidian integration for note taking fun times
|
|
(use-package! obsidian
|
|
:config
|
|
(obsidian-specify-path "~/Library/Mobile Documents/iCloud~md~obsidian/Documents/Primary/")
|
|
(setq obsidian-inbox-directory "_Inbox")
|
|
(global-obsidian-mode t)
|
|
(map! :map obsidian-mode-map
|
|
"C-c C-o" #'obsidian-follow-link-at-point
|
|
"C-c C-b" #'obsidian-backlink-jump
|
|
"C-c C-l" #'obsidian-insert-wikilink)
|
|
;; custom quick capture template for obsidian daily note
|
|
(defun mnl/obsidian-capture ()
|
|
"Create new obsidian note. In the `obsidian-inbox-directory' if set otherwise in `obsidian-directory' root."
|
|
(interactive)
|
|
(let* ((title (read-from-minibuffer "Title: " (format-time-string "%Y-%m-%d")))
|
|
(filename (s-concat obsidian-directory "/" obsidian-inbox-directory "/" title ".md"))
|
|
(clean-filename (s-replace "//" "/" filename)))
|
|
(find-file (expand-file-name clean-filename) t)))
|
|
|
|
(map! :leader
|
|
:desc "Obsidian Quick Capture"
|
|
"X" #'mnl/obsidian-capture)
|
|
|
|
(map! :leader
|
|
:prefix "n"
|
|
:desc "Obsidian Jump"
|
|
"f" #'obsidian-jump
|
|
:desc "Obsidian Search"
|
|
"s" #'obsidian-search
|
|
"*" #'obsidian-search
|
|
:desc "Obsidian Tag Search"
|
|
"m" #'obsidian-tag-find
|
|
:desc "Obsidian Capture"
|
|
"n" #'mnl/obsidian-capture
|
|
:desc "Obsidian Insert Wikilink"
|
|
"w" #'obsidian-insert-wikilink
|
|
:desc "Obsidian Backlink Jump"
|
|
"j" #'obsidian-backlink-jump
|
|
:desc "Obsidian Follow Link"
|
|
"l" #'obsidian-follow-link-at-point
|
|
"a" nil
|
|
"d" nil))
|