A simple TODO app for the GNOME desktop.

LICENSE Initial commit with README and license 4 years ago
README.md Added usage and todo to README 4 years ago
cl-todo.asd Wrote task list code 4 years ago
cl-todo.lisp Escape closes the window, decorations removed 4 years ago
gtk-example.lisp Added tutorial example file 4 years ago
gtk-ui.lisp Adding tasks in the GUI now works 4 years ago
package.lisp Added basic GUI code (not yet functioning) 4 years ago


A simple TODO app for the GNOME desktop.

Honestly, this was mostly written to give me a chance to try out Gtk+3 on Common Lisp (see this tutorial).


Requires a Common Lisp (tested on SBCL), Quicklisp, and the cl-cffi-gtk library.

To install, simply symlink this directory into your Quicklisp local-projects folder:

ln -s /path/to/cl-todo ~/.quicklisp/local-projects/cl-todo

Then, you can open up a REPL and use `(ql:quickload "cl-todo") to run.


cl-todo is designed to be used via keyboard shortcuts:

  • UP/DOWN: switch between active widgets

  • ENTER: Complete and remove the active task, or (if the input field is active) add a new task

  • ESCAPE: Close the window (every action is autosaved)


  • finish basic implementation

  • add task priorities

  • implement directory-specific todo files (with Nautilus plugin?)

© Daniel Vedder, 2020