Skip to content

Archiving and Maintenance

Brett Terpstra edited this page Nov 25, 2021 · 2 revisions

Sections

sections    - List sections
choose      - Select a section to display from a menu
add_section - Add a new section to the "doing" file

Utilities

archive  - Move entries between sections
open     - Open the "doing" file in an editor (OS X)
config   - Edit the default configuration
rotate   - Move entries to archive file

Archiving

COMMAND OPTIONS
    -k, --keep=arg - Count to keep (ignored if archiving by tag) (default: 5)
    -t, --to=arg   - Move entries to (default: Archive)
    -b, --bool=arg - Tag boolean (default: AND)

The archive command will move entries from one section (default: Currently) to another section (default: Archive).

doing archive on its own will move all but the most recent 5 entries from currently into the archive.

doing archive other_section will archive from other_section to Archive.

doing archive other_section -t alternate will move from other_section to alternate. You can use the -k flag on any of these to change the number of items to leave behind. To move everything, use -k 0.

You can also use tags to archive. You define the section first, and anything following it is treated as tags. If your first argument starts with @, it will assume all sections and assume any following arguments are tags.

By default, tag archiving uses an AND boolean, meaning all the tags listed must exist on the entry for it to be moved. You can change this behavior with -b OR or -b NONE (ALL and ANY also work).

Example: Archive all Currently items for @client that are marked @done

doing archive @client @done

rotate

The rotate command will move entries from the doing file into a dated archive file. It's a destructive operation, and running it on its own will clear out your doing file. All of the entries will be in a new file, so you can use doing import --type doing FILENAME to get them back, or use doing undo immediately after the operation to restore them. doing undo will not remove the newly-created archive file.

Use filtering options to only rotate matching entries, and --keep to keep a certain number of entries in each section.

COMMAND OPTIONS
    --before=DATE_STRING       - Rotate entries older than date (Flexible date format, e.g. 1/27/2021, 2020-07-19, or Monday 3pm) (default: none)
    --bool=BOOLEAN             - Tag boolean (AND|OR|NOT) (default: AND)
    -k, --keep=X               - How many items to keep in each section (most recent) (default: none)
    -s, --section=SECTION_NAME - Section to rotate (default: All)
    --search=QUERY             - Search filter (default: none)
    --tag=TAG                  - Tag filter, combine multiple tags with a comma. Added for compatibility with other commands. (default: none)

config

doing config edit will open your .doingrc file in an editor.

doing config get lets you output configuration options to the terminal. It requires a key, which is a dot-separated path to a specific key. If you wanted to see the value for the html template in the export_templates section, you would use doing config get export_templates.html. Use get . to output the whole config. --output FMT can change the output format (json, yaml, or raw).

On macOS, you can specify an app to be used to open the config with the config_editor_app configuration key, and then use it with doing config -x. This can be any app. You can also use -a APP_NAME or -b BUNDLE_ID to use a specific app at runtime (macOS only).

On other systems you can use -e EDITOR to specify an editor with a command line utility (e.g. vim, subl, mate, etc.).

Other tools

colors   - List available color variables for templates and views
template - Output HTML, CSS, and Markdown, etc. templates for customization
plugins  - List installed plugins