I would like to use emacs to enter data -- to start with, essentially a set of numeric responses to a list of questions. The questions will usually be the same every day, but will change slowly over time.

I want the data to be recorded as plain text, but to use a more constrained interface than just typing plain text, so that it's faster to enter the data and less error-prone. For example:

  • I would like j and k to move up and down between fields
  • I don't want to have to enter say evil's insert state in order to enter numeric values
  • I want the names of the questions to be automatically filled in and non-editable

The only code I've seen like this in emacs is org-agenda -- org-habit in particular is quite similar to what I have in mind. However, org is a rather big code base, and though great software, not always the most exemplary elisp code in my book. magit has a somewhat similar approach to interaction, though it happens not to have any UI you'd be likely to describe as "data entry".

Does anything like this already exist? How can I go about implementing something like this?


1 Answer 1


The Emacs Widget Library might just be what you are looking for. Emacs' Custom interface is built on top of widget and while that isn't exactly the same as "data entry" it comes much closer than say Magit (which I would say has nothing to do with data entry).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.