Package: sjournal
sjournalA simple and light-weight notepad for the command line:InstallationLatest release via pip>pipinstallsjournalUsageSjournal commands can be invoked using eithersjournalorsjCreating and Loading JournalsIf using Sjournal for the first time, a blank journal called "notes" will be automatically created:>sjournal

Noconfigfilefound.Creatingnewoneat<HOME_DIR>/sjournal/sjournal_config.jsonnotes
┌────┬───────────┬──────────┬─────────┐
│ID│Timestamp│Category│Content│
├────┼───────────┼──────────┼─────────┤
└────┴───────────┴──────────┴─────────┘To create a new Journal or load an Existing one, usesjournal load:>sjournalloadMyJournal
Setjournalto<HOME_DIR>/sjournal/journals/MyJournal.db

>sjournalMyJournal
┌────┬───────────┬──────────┬─────────┐
│ID│Timestamp│Category│Content│
├────┼───────────┼──────────┼─────────┤
└────┴───────────┴──────────┴─────────┘Adding NotesAdd notes withsjournal add:Set the category with-c/--category. Default category is "General"Set the Style (Rich Markup) with-s/--style>sjournaladd-cTODO-s"bold red""Update the README ASAP"~OR~
>sjournaladd--category="TODO"--style="bold red""Update the README ASAP">sjournalListing and Searching NotesShow notes withsjournalorsjournal list:Showmostrecent5notesbydefault:
>sjournallistMyJournal
┌────┬───────────────────┬──────────┬──────────────┐
│ID│Timestamp│Category│Content│
├────┼───────────────────┼──────────┼──────────────┤
│5│03-20-2215:55:40│General│Misc.Note5│
│4│03-20-2215:55:39│General│Misc.Note4│
│3│03-20-2215:55:38│General│Misc.Note3│
│2│03-20-2215:55:37│General│Misc.Note2│
│1│03-20-2215:55:35│General│Misc.Note1│
└────┴───────────────────┴──────────┴──────────────┘

Showallnotes:
>sjournallist-aMyJournal
┌────┬───────────────────┬──────────┬────────────────────────┐
│ID│Timestamp│Category│Content│
├────┼───────────────────┼──────────┼────────────────────────┤
│5│03-20-2215:55:40│General│Misc.Note5│
│4│03-20-2215:55:39│General│Misc.Note4│
│3│03-20-2215:55:38│General│Misc.Note3│
│2│03-20-2215:55:37│General│Misc.Note2│
│1│03-20-2215:55:35│General│Misc.Note1│
│0│03-20-2215:30:55│TODO│UpdatethereadmeASAP│
└────┴───────────────────┴──────────┴────────────────────────┘

ShowthelastNnotes:
>sjournallist2MyJournal
┌────┬───────────────────┬──────────┬──────────────┐
│ID│Timestamp│Category│Content│
├────┼───────────────────┼──────────┼──────────────┤
│5│03-20-2215:55:40│General│Misc.Note5│
│4│03-20-2215:55:39│General│Misc.Note4│
└────┴───────────────────┴──────────┴──────────────┘

Shownoteswithagivencategory:
>sjournallist-cTODOMyJournal
┌────┬───────────────────┬──────────┬────────────────────────┐
│ID│Timestamp│Category│Content│
├────┼───────────────────┼──────────┼────────────────────────┤
│0│03-20-2215:30:55│TODO│UpdatethereadmeASAP│
└────┴───────────────────┴──────────┴────────────────────────┘

Searchnotecontentwithaspecificwordorphrase(regexallowed)>sjournalsearchreadmeMyJournal
┌────┬───────────────────┬──────────┬────────────────────────┐
│ID│Timestamp│Category│Content│
├────┼───────────────────┼──────────┼────────────────────────┤
│0│03-20-2215:30:55│TODO│UpdatethereadmeASAP│
└────┴───────────────────┴──────────┴────────────────────────┘Editing and Deleting NotesEdit the most recent note, or edit by ID:>sjournaledit
EditingNote#0 (copied to clipboard): "Update the README ASAP"Enternewnotetext([boldred]UpdatetheREADMEASAP[/]):Updatethereadmeeventually

>sjournaledit0EditingNote#0 (copied to clipboard): "Update the readme eventually"Enternewnotetext(Updatethereadmeeventually):Updatethereadme[boldred]RIGHTNOW[/]Delete notes by a single ID, mutiple IDs, or a range of IDs:>sjournalMyJournal
┌────┬───────────────────┬──────────┬──────────────┐
│ID│Timestamp│Category│Content│
├────┼───────────────────┼──────────┼──────────────┤
│5│03-20-2215:48:38│General│Misc.Note5│
│4│03-20-2215:48:37│General│Misc.Note4│
│3│03-20-2215:48:34│General│Misc.Note3│
│2│03-20-2215:48:33│General│Misc.Note2│
│1│03-20-2215:48:30│General│Misc.Note1│
└────┴───────────────────┴──────────┴──────────────┘

>sjournaldelete4DELETEDNOTE#4>sjournaldelete123DELETEDNOTE#1DELETEDNOTE#2DELETEDNOTE#3>sjournaldelete2-5
DELETEDNOTE#2DELETEDNOTE#3DELETEDNOTE#4DELETEDNOTE#5Backup and Restore JournalsJournals can be backed up and restored withsjournal backupandsjournal restoreSpecific filenames can be given with-f <filename>. Othewise, the current time at backup will be used.>sjournalbackup
BACKINGUPC:/Users/samue/sjournal/journals/MyJournal.dbTOFILEC:/Users/samue/sjournal/journals/backups/MyJournal/backup_MyJournal_22_03_20_16_00_45.db

>sjournalrestore
RESTORINGBACKUPFROMC:\Users\samue\sjournal\journals\backups\MyJournal\backup_MyJournal_22_03_20_16_00_45.db
REPLACINGC:\Users\samue\sjournal\journals\MyJournal.dbCustom Aliases (Windows)If you want to run Sjournal with a different shorthand within Cmder or Windows Cmd (such asmyalias):Setting up an alias inCmder>aliasmyalias=sjournal$*Setting up an alias in Windows Cmd>cdc:/
>mkdiralias>cdalias>echo@echooff>>myalias.bat
>echoecho.>>myalias.bat
>echosjournal%*>>myalias.batFinally, addc:/aliasto PATH in your system environment variables.After restarting the terminal, sjournal can be used by calling the new alias in the command line:>myalias--versionFull List of CommandsTo see help for a specific command, usesjournal [COMMAND] --helpusage: sjournal [-h] [-d] [-v] {add,backup,categories,delete,edit,erase,help,list,load,restore,search} ...

options:
  -h, --help            show this help message and exit
  -d, --debug           Output to reports/debug.log instead of stdout
  -v, --version         Show sjournal information

Commands:
  {add,backup,categories,delete,edit,erase,help,list,load,restore,search}
                        Commands
    add                 Add a note to the database
    backup              Backup the current journal
    categories          List all categories in the current journal
    delete              Delete one or multiple notes from the database
    edit                Edit a note to the database
    erase               Delete all notes from the current journal
    help                Display help text
    list                List notes in the database
    load                Load a journal or create a new one if it doesn't exist
    restore             Restore the database from a file. If --filename is not given, restore the latest backup
    search              List notes matching search term

To see help for specific commands, use sjournal [COMMAND] --help