Giter Site home page Giter Site logo

notdeft's Introduction

NotDeft

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.

images/notdeft-screenshot-query-and-filter.png

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.

Quick Start

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.

See Also

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

notdeft's People

Contributors

hasu avatar jrblevin avatar brabalan avatar cmarcelo avatar maxst avatar vivekhaldar avatar warrenwilkinson avatar icaruszhu avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.