diary [1] is a simple tool to help you keep diary in plain text with your choice of $EDITOR.
Basically, it shows you a calendar and you can navigate through dates with keybindings for [hl] day, [jk] week, or [JK] month. You can also [s]earch (jump) a date. If there is an entry for the cursor-highlighted date, the entry content is displayed on the right. You can pick [t]oday and press [enter], then the $EDITOR will be fired up for you to write everything funny or silly that happened today.
I like very simple design and work-flow, clean interface, plain text files with the dates as the filenames. I also like how diary doesn't have search function, why? Because you don't need it, you can just grep.
Since the diary directory is the first argument, you can easily separate dates, somehow it's like having a new diary when there is no more pages in the previous one. Or you can keep more than one diary in different directories.
$$$#
Off-topic: Frankly, I think "CLI" is quite misused or even misunderstood nowadays. In this case, it's TUI. diary has no CLI. Just the first argument for diary directory doesn't really count. It doesn't support any operations via command-line.
Perhaps, using diary with other CLI tools such as grep is where CLI comes in, well, quite far fetched.
$$$#
* Writing diary since 2016-11-16
* git-ce2bf9b8d1724b032c7c3acb3f68ba3cc5e90159 (2016-12-15, post v0.2 (2016-11-27))
* In C with ncurses
* By Andreas Gruhler (in0rdr), et al.
* MIT License
[1] https://github.com/in0rdr/diary
Watch video CLI Diary online without registration, duration hours minute second in high quality. This video was added by user Archived Yu-Jie Lin 15 December 2016, don't forget to share it with your friends and acquaintances, it has been viewed on our site 477 once and liked it 20 people.