Package: pen
🖋️ Pen - your command line diaryPen allows you to quickly jot down your thoughts right from the command line.
All your journals will be stored as text, which means you can simply put them into cloud storage
or on a USB flash drive and access them from anywhere, even without Pen itself.
It takes a lot of inspiration fromjrnland
tries to create a similar interface that is just as easy to use, but Pen is
rewritten from the ground up in modern Python, aiming for a more stable
and enhanced experience. Currently, Pen is still in an early stage, but some
nice additional features are planned. If you want to try Pen out now, don't be afraid!
If you run into any problems or bugs, please be sure tocreate an issuedescribing your problem.Windows is currently not supported. If you want to use Pen on Windows, you can leave a
request for Windows support on thethe issue trackeror upvote an existing thread. Pen does work and is being tested onthe WSL, though.JournalingWriting about your daily routine has been linked to therapeutic health benefits
like stress reduction[1][2].
For years, practitioners have used logs, questionnaires, journals and other
writing forms to help people heal from stresses and traumas.
It's not necessary to journal every single day, because it should not become a
burden.
However, when you feel like it would help get things off your mind,
when you feel stressed by something or when you just want to go through an
experience in your head again before forgetting too many details, writing it
down can be a very relieving and helpful experience.Pen is also great just as a simple note-keeping app. You could for example
create a journal called 'code' where you briefly describe the cool new library
you learnt about today so you can go back to it later, or to describe how you
solved a difficult programming problem.You can also use Pen to track progress in your work, in the gym or
on the race track. Having a place to note your achievements, personal records
or how much weight you lost over time is a great motivator, as you can
always look back and see how fast you progressed.Installing PenIt is recommend to install Pen usingpipx:pipx install penIf you don't want to use pipx, you can also use pip:pip install --user penTo upgrade, either usepipx upgrade penorpip install --user --upgrade pendepending on how you installed Pen.Using PenTo write your first entry, just typepeninto your command line and hit enter!
If you are transitioning fromjrnl, you can instead import your old jrnls usingpen import /path/to/journals/*.
If you haven't run Pen on this machine before, a short setup dialog will start,
asking about your preferences like which editor you want to use. Pen will
always try to infer these settings from your environment variables and only ask
when necessary. You can always change the way Pen behaves by changing its
configuration which is by default located at$HOME/.config/pen. You can also
change the config file's location by exporting thePEN_HOMEenvironment
variable before runningpen. This is especially useful if you want to sync
your config using Dropbox, Google Cloud or a different cloud storage service.(Planned) FeaturesTo see all currently supported commands, typepen --help. To see more information
about a specific command typepen <command> --help.The following list also gives a broad overview over the current features of Pen.
Implemented features are marked with a ✔. The list is ordered by their planned
implementation order, but the order may change at any time.Feature?NoteFully text based✔Uses your OS settings when possible(from environment variables)✔$EDITOR, $VISUAL, $LC_TIMEand more!Multiple Journals✔One can be set as defaultWriting/Deleting/Editing entries✔Journals as single file✔Plugin System✔*(*still being extended)based onpluggyExtendable Import System✔supports imports fromjrnlFiltering by date, tag, starredFast SearchTagsStar entries (favourite)git syncCan use cloudto sync (Dropbox, etc.)Journals as hierarchical directoryEncryptionCustom PromptsStore in custom file formats✔ (1)plugins can extend this!currently implemented:MarkdownImports from other sourcesNone plannedplugins possibleReferences[1]: Smyth, Joshua M. (1999). Written emotional expression: Effect sizes, outcome types, and moderating variables.