NotDeft is a spin-off of Deft, an “Emacs mode for quickly browsing, filtering, and editing directories of plain text notes.” NotDeft retains functionality similar to Deft’s, albeit with less configurability. In addition, NotDeft features efficient, local, Xapian-engine-based free-text search over potentially very large numbers of note files; in that respect it is like the Notmuch Emacs mode for managing email.
NotDeft is not as deft in note management as Deft. One reason for this is that NotDeft is designed to support managing of multiple directories of notes. Another complication is that locating the desired notes is a two-stage process, as it entails both searching for a set of notes by entering a query, and then further narrowing down the result set through interactive filtering.
NotDeft does not aim for the user interaction simplicity of applications like Deft and Notational Velocity—instead, it intends to provide global note search and manipulation functionality, accessible from various Emacs buffers and Emacs-based applications.
Open a terminal, and cd
into your home directory. Download the source code into some directory with
git clone https://github.com/hasu/notdeft.git
Then prepare NotDeft’s Emacs Lisp files for use with the commands
cd notdeft make
where make
is assumed to invoke GNU Make.
Then build the Xapian backend by doing
cd xapian make
If the make
command fails, then you will need to ensure that you have the required libraries installed, and find the right C++ compiler incantation for building the notdeft-xapian
program on your system. A notable library requirement for compiling the program is TCLAP.
To make NotDeft loadable in Emacs, add the following code to your Emacs startup file (e.g., “~/.emacs”):
(add-to-list 'load-path "~/notdeft")
(add-to-list 'load-path "~/notdeft/extras")
(load "notdeft-example")
The notdeft-example.el file is a sample configuration for NotDeft, which sets up NotDeft for use with Org mode based note files, also enabling some optional components of NotDeft, and setting up some keybindings. It may be a useful starting point for a personal configuration.
Create a “~/.deft” directory, and copy some “.org” files there.
Launch Emacs with
emacs -f notdeft
Press TAB
to enter a search query, and type characters to do further filtering of the results. Press RET
to select a file to open. Use C-c f1
to see other available commands.
To configure notdeft-note-mode
minor mode for use automatically in note buffers, add the required directory local variable to “~/.deft” by entering the command f6 a d l v
, and by saving the resulting file.
For other ways to install, configure, and use NotDeft, see the documentation.
- https://tero.hasu.is/notdeft/
- documentation
- https://tero.hasu.is/notdeft/download/
- installable Emacs packages
- https://tero.hasu.is/tags/notdeft/
- related blog posts
- https://github.com/hasu/notdeft
- source code repository
- “notdeft.el”
- some more documentation (in comments)
- Xapian and Deft
- related software