Tasks are stored in sled for persistence.
Files created:
- $HOME/.ya2d2 [a directory containing saved ToDo entries]
- $HOME/.ya2d2_hist [Command history to preserve commands across sessions]
The shell currently supports four commands:
- push [add entry into TODO list]
- pop [remove entry (using its id as the argument)]
- ls [list all entries]
change-prompt(change-prompt has not been incorporated into the nom parsing structure yet. )
There is basic support for tab completion of commands as well as the usual readline features. For example, press tab after "pop" to view the keys for entries which are present in the database.
These features are provided by hooking into the excellent Linefeed library.
- --no-color : disables colored output
The application is developed on Linux, but it should also work on OSX.
- Since moving the parsing infrastructure to nom, there is now support for tags, eg the following command will parse and recognize "grocery" and "budget" as tags.
push [[grocery]] [[budget]] buy cheese
But the backend does not actually save these tags right now. Need to store these along with entries so listing can work with tags.
- change-prompt was removed when moving to nom. Need to write supporting infrastructure to add this back.
- Support listing specific tags, eg
ls grocery
- add support to export the database to json