(use-package howm
:after org
:init
;; Org-compatible filenames and syntax.
(setq howm-file-name-format "%Y-%m-%d-%H%M%S.org")
(setq howm-view-title-header "*")
(setq howm-dtime-format (format "<%s>" (cdr org-timestamp-formats)))
;; Use ripgrep for fast searching.
(setq howm-view-use-grep t)
(setq howm-view-grep-command "rg")
(setq howm-view-grep-option "-nH --no-heading --color never")
(setq howm-view-grep-extended-option nil)
(setq howm-view-grep-fixed-option "-F")
(setq howm-view-grep-expr-option nil)
(setq howm-view-grep-file-stdin-option nil)
;; Make the "comefrom links" case-insensitive.
(setq howm-keyword-case-fold-search t)
;; Get rid of the old-fashioned separators.
(setq howm-view-summary-sep "\t")
:bind
;; Keybindings to list or create notes.
("<f12>" . howm-list-all)
("<C-f12>" . howm-create)
:config
;; Where to store data.
(setq howm-directory "~/Documents/wiki")
(setq howm-home-directory howm-directory)))
The way I use it is that Ctrl+F12 captures a new note. Once you have a few notes, press F12 to browse them – in that mode, you can press n/p/RET to preview and open notes, s to search through headings, g to (rip)grep through the full text of notes, S to sort the hits, or c to create another new note from that mode. (I largely ignore Howm's default "menu buffer" in favor of the "list all" buffer.)Note that you can make the titles and dates even more Org-compatible:
(setq howm-view-title-header "#+title: ")
(setq howm-dtime-format (format "#+date: <%s>" (cdr org-timestamp-formats)))
After trying both, I prefer the system above, since Howm supports multiple titles in a single file which maps better to Org headings. Plus, this makes the F12 menu quite a bit cleaner... (You can still manually add titles and dates in the Org format before exporting the note, Howm doesn't mind that.)