diff --git a/modules/tools/deft/README.org b/modules/tools/deft/README.org new file mode 100644 index 000000000..651aa1632 --- /dev/null +++ b/modules/tools/deft/README.org @@ -0,0 +1,4 @@ +#+TITLE: :tools deft + +* TODO write deft readme + diff --git a/modules/tools/deft/config.el b/modules/tools/deft/config.el new file mode 100644 index 000000000..030e337bb --- /dev/null +++ b/modules/tools/deft/config.el @@ -0,0 +1,32 @@ +;;; tools/deft/config.el -*- lexical-binding: t; -*- + +(def-package! deft + :commands deft + :init + (setq deft-extensions '("org" "md" "tex" "txt") + deft-default-extension "org" + ;; de-couples filename and note title: + deft-use-filename-as-title nil + deft-use-filter-string-for-filename t + deft-org-mode-title-prefix t + ;; converts the filter string into a readable file-name using kebab-case: + deft-file-naming-rules + '((noslash . "-") + (nospace . "-") + (case-fn . downcase))) + :config + ;; start filtering immediately + (add-hook! 'deft-mode-hook '((evil-insert-state nil))) + (map! :map deft-mode-map + :localleader + :n "RET" #'deft-new-file-named + :n "a" #'deft-archive-file + :n "c" #'deft-filter-clear + :n "d" #'deft-delete-file + :n "f" #'deft-find-file + :n "g" #'deft-refresh + :n "l" #'deft-filter + :n "n" #'deft-new-file + :n "r" #'deft-rename-file + :n "s" #'deft-toggle-sort-method + :n "t" #'deft-toggle-incremental-search)) diff --git a/modules/tools/deft/packages.el b/modules/tools/deft/packages.el new file mode 100644 index 000000000..4d760f260 --- /dev/null +++ b/modules/tools/deft/packages.el @@ -0,0 +1,4 @@ +;; -*- no-byte-compile: t; -*- +;;; tools/deft/packages.el + +(package! deft)