Collect your thoughts and notes without leaving the command line.
Find a file
Jonathan Wren 3c923ae943
Allow combinations of --change-time, --delete, and --edit while correctly counting the number of entries affected (#1669)
* Remove search mode conditional that added explicit tag search behavior
* Fix failing change-time test by using same method signature as base journal class
* Fix user input mock - was not appropriately checking return value
* Clean up controller
  - streamline `run` function in `controller.py`
  - add debug logging
  - fix unnecessary import of Journal class (only needed for typing)
  - standardize summary display across different actions
* Add currently-failing test conditions for count messages when changing time and deleting
* Don't show summary if no entries found and prevent extra line break when no entries found by short-circuiting display method
* Track found entry count and remove incorrect modified stat logic
* Track journal entry deletion consistently
* Remove unneeded exception when editor is empty and fix test that was testing incorrect message
* Correct entry edit modified count test
* Track modification of entries with --change-time
* Preserve existing behavior when editor is empty but make the message more clear
* Reconcile tests with new error message when clearing editor in edit mode
* Add found/modified counts to edit tests
* Add tests for found count with -n equivalent argument
* Test combinations of found/deleted messages when using --delete
* Add tests for counting combinations of action arguments (change-time, edit, delete) and for change-time counts. Some are failing and should be investigated
* Remove extraneous comment in test
* Track added/deleted counts in a register in the Journal class instead of attempting to infer it via controller counting
* Add encrypted to more tests
* Fix merge conflict typo
* Change 'write mode' -> 'append mode' in more places

---------

Co-authored-by: Micah Jerome Ellison <micah.jerome.ellison@gmail.com>
2023-03-25 12:32:25 -07:00
.build Add changelog generation workflow to github actions (#1086) 2020-11-21 11:21:19 -08:00
.github Update copyright notices for 2023 (#1660) 2023-01-07 13:39:07 -08:00
docs Add ability to use template with --template (#1667) 2023-03-25 11:47:00 -07:00
docs_theme Update documentation front page text (#1698) 2023-03-04 12:20:20 -08:00
jrnl Allow combinations of --change-time, --delete, and --edit while correctly counting the number of entries affected (#1669) 2023-03-25 12:32:25 -07:00
tests Allow combinations of --change-time, --delete, and --edit while correctly counting the number of entries affected (#1669) 2023-03-25 12:32:25 -07:00
.gitattributes Fix annoying poetry-generated Windows line endings 2021-07-03 15:49:18 -07:00
.gitignore Update .gitignore (#1604) 2022-10-08 12:40:27 -07:00
CHANGELOG.md Update changelog [ci skip] 2023-03-25 18:49:16 +00:00
CODE_OF_CONDUCT.md Update maintainer email (#1515) 2022-06-25 11:51:19 -07:00
CONTRIBUTING.md Update copyright notices for 2023 (#1660) 2023-01-07 13:39:07 -08:00
issue_template.md Clean up templates and issues (#954) 2020-05-23 15:58:04 -07:00
LICENSE.md Upgrade license to GPLv3 (#918) 2020-04-18 13:31:25 -07:00
mkdocs.yml Support mkdocs 1.4.2 and fix its missing breadcrumb (#1691) 2023-02-25 12:16:33 -08:00
package-lock.json Pin dependencies (#1577) 2022-09-03 13:16:28 -07:00
package.json Pin dependencies (#1577) 2022-09-03 13:16:28 -07:00
poetry.lock Update dependency cryptography to v40 (#1710) 2023-03-25 11:15:48 -07:00
pyproject.toml Use pytest-bdd 6 (#1685) 2023-03-04 12:37:06 -08:00
README.md Update copyright notices for 2023 (#1660) 2023-01-07 13:39:07 -08:00
readthedocs.yml Pin jinja2 in docs requirements to keep readthedocs builds from failing (#1439) 2022-03-26 11:48:41 -07:00
SECURITY.md Update maintainer email (#1515) 2022-06-25 11:51:19 -07:00
tasks.py Update copyright notices for 2023 (#1660) 2023-01-07 13:39:07 -08:00

jrnl Testing Downloads Version Homebrew Gitter Changelog

To get help, submit an issue on Github.

jrnl is a simple journal application for the command line.

You can use it to easily create, search, and view journal entries. Journals are stored as human-readable plain text, and can also be encrypted using AES encryption.

In a Nutshell

To make a new entry, just enter

jrnl yesterday: Called in sick. Used the time to clean the house and write my
book.

yesterday: is interpreted by jrnl as a timestamp. Everything until the first sentence ending (either ., ?, or !) is interpreted as the title, and the rest as the body. In your journal file, the result will look like this:

[2012-03-29 09:00] Called in sick.
Used the time to clean the house and write my book.

If you just call jrnl, you will be prompted to compose your entry - but you can also configure jrnl to use your external editor.

For more information, please read the documentation.

Contributors

Maintainers

Our maintainers help keep the lights on for the project:

Please thank them if you like jrnl!

Code Contributors

This project is made with love by the many fabulous people who have contributed. jrnl couldn't exist without each and every one of you!

If you'd also like to help make jrnl better, please see our contributing documentation.

Financial Backers

Another way show support is through direct financial contributions. These funds go to covering our costs, and are a quick way to show your appreciation for jrnl.

Become a financial contributor and help us sustain our community.