By default deft will save a changed buffer that it opens after 1 second. This causes problematic interactions with the rest of doom - like with wsbutler (insert space, try to insert a link, and it will eat the space before the link is inserted). I think it's best for auto-save to be managed by a separate package, rather than this ad-hoc save that occurs only in buffers that deft opens.
46 lines
1.5 KiB
EmacsLisp
46 lines
1.5 KiB
EmacsLisp
;;; ui/deft/config.el -*- lexical-binding: t; -*-
|
|
|
|
(use-package! deft
|
|
:commands deft
|
|
:init
|
|
(setq deft-default-extension "org"
|
|
;; de-couples filename and note title:
|
|
deft-use-filename-as-title nil
|
|
deft-use-filter-string-for-filename t
|
|
;; disable auto-save
|
|
deft-auto-save-interval -1.0
|
|
;; converts the filter string into a readable file-name using kebab-case:
|
|
deft-file-naming-rules
|
|
'((noslash . "-")
|
|
(nospace . "-")
|
|
(case-fn . downcase)))
|
|
:config
|
|
(add-to-list 'deft-extensions "tex")
|
|
(add-hook 'deft-mode-hook #'doom-mark-buffer-as-real-h)
|
|
;; start filtering immediately
|
|
(set-evil-initial-state! 'deft-mode 'insert)
|
|
(map! :map deft-mode-map
|
|
:n "gr" #'deft-refresh
|
|
:n "C-s" #'deft-filter
|
|
:i "C-n" #'deft-new-file
|
|
:i "C-m" #'deft-new-file-named
|
|
:i "C-d" #'deft-delete-file
|
|
:i "C-r" #'deft-rename-file
|
|
:n "r" #'deft-rename-file
|
|
:n "a" #'deft-new-file
|
|
:n "A" #'deft-new-file-named
|
|
:n "d" #'deft-delete-file
|
|
:n "D" #'deft-archive-file
|
|
:n "q" #'kill-current-buffer
|
|
:localleader
|
|
"RET" #'deft-new-file-named
|
|
"a" #'deft-archive-file
|
|
"c" #'deft-filter-clear
|
|
"d" #'deft-delete-file
|
|
"f" #'deft-find-file
|
|
"g" #'deft-refresh
|
|
"l" #'deft-filter
|
|
"n" #'deft-new-file
|
|
"r" #'deft-rename-file
|
|
"s" #'deft-toggle-sort-method
|
|
"t" #'deft-toggle-incremental-search))
|