Skip to main content

Command-line notebook for daily entries.

Project description

Hello and welcome to daily, a program for command-line journaling. Each journal entry is stored in a file named after the date in YYYY-mm-dd format in either MD or RST format.

Building and installation

Available via PyPi. pip3 install daily-cli --user

Alternatively, clone this repo and run these commands.

make
pip3 install --user .

The man pages will be installed at $HOME/.local/usr/share/man and the bash completion script will be installed at $HOME/.local/etc/bash_completion.d/daily_completion.sh. Update your bashrc.

Usage

Usage is detailed in the man pages under ./doc/man. Start with daily.1, but a general quick start cookbook…

daily  # Perform first-time setup
daily add  # Edit today's entry.
daily show  # Show previous 2 weeks of entries
daily add -d yesterday  # Add or edit an entry on a specific date.
daily add --before today  # Batch edit any entries before today
daily show workout todo  # Show only specific headings for entries
daily add workout  # Edit specific headings for an entry.

daily todo  # Print next 2 weeks of todos

Entries have a title named after the date, a desription, headings, and metadata all built in to the text. Here is a simple example in markdown.

# 2022-10-10, Mon
I went to my daughter's play.

## Workout
And did like a gazillion pushups.


<!--- attributes --->
    ---
    id: some-internal-id
    tags: []

And an example in RST.

=================
 2022-10-10, Mon
=================
This semester in college is really starting to grind.

Todo
====
- 8am Calculus class.
- 9am Workout


.. code-block:: yaml

    ---
    id: some-internal-id
    tags: []

Usage with Vimwiki

Modify daily.ini (installed in ~/.config/daily after a first run) to change the journal’s directory to your vimwiki diary, and be sure the format is “md”.

Also install the generate-vimwiki-diary-template file to your ~/.vim/bin directory. This will make it so vim auto-generates daily’s entry text for new markdown files in the vimwiki diary directory. This must be done manually.

Maintenance and versioning

Update the CHANGELOG when cutting a new release, then update the version in setup.py. Then commit and tag it named after the release. Then…

  • Run make to build the package.

  • make release to upload to PyPi.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

daily_cli-2.1.3.tar.gz (25.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

daily_cli-2.1.3-py3-none-any.whl (27.0 kB view details)

Uploaded Python 3

File details

Details for the file daily_cli-2.1.3.tar.gz.

File metadata

  • Download URL: daily_cli-2.1.3.tar.gz
  • Upload date:
  • Size: 25.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for daily_cli-2.1.3.tar.gz
Algorithm Hash digest
SHA256 18b1ddb7ba62b7ef45efbaa97066fdf30e878873d6c05cacd4312ccd58db8fc6
MD5 1c3621ce7a1ac645a72248e06227a1e0
BLAKE2b-256 95c55e11e765e8fbb35219511babb4ba4da67fd2a6b7a2f25db6a9a84913a597

See more details on using hashes here.

File details

Details for the file daily_cli-2.1.3-py3-none-any.whl.

File metadata

  • Download URL: daily_cli-2.1.3-py3-none-any.whl
  • Upload date:
  • Size: 27.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for daily_cli-2.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 08579b6474e99896fc00aee039a270acb2fc4313db6f29c23476ceeb101fb3aa
MD5 6dbc272649741743c794dacdb9914a87
BLAKE2b-256 7b19af7a5a197677ffb2fb71328ff942f93fbe75797f92f232406be6d52b1595

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page