Skip to main content

Dain-Bread Simple TODO list

Project description

dbs == dain-bread simple
========================
TODO list for minimalists

# SPDX-License-Identifier: GPL-2.0-only
# Copyright (c) 2022, Al Stone <ahs3@ahs3.net>

A "task" consists of a file that looks something like this:

Task: get something done
State: open
Project: stuff
Priority: h
Note: this is a note
Note: this is another note

(sans indenting, of course). Each key:value is exactly one line (everything
up until the newline). There are a few limits:

-- State is one of 'open', 'active', 'done' or 'deleted' [0]
-- Priority is one of 'h', 'm', 'l'

It's all pretty self-explanatory. I've tried to keep this as simple as
possible, but Python wants things packaged properly, and I wanted to have
both a CLI version (dbs) and an ncurses version (dbsui) using the same code
for managing tasks. So, yeah, needed to create a module to package and
distribute with.

Installation is simple: clone the source tree, cd to the clone, then:

$ make install

Or:

$ pip install dbs-todo

That's it. Python3 is the only requirement. Most distros will have the
right Python modules by default. I use this on Fedora and Debian, so
your mileage may vary.

To add a task like the one above:

$ dbs add 0001 stuff h "get something done"

That's it. It's automatically created as an open task. You can find all
open tasks with:

$ dbs lo

('lo' == 'list open' -- extra credit if you can figure out the command for
'list active' and 'list done').

If you do this:

$ dbs

You'll get a list of all current commands and any parameters they might need.

There is a config file: it is always $HOME/.config/dbs/config. The only thing
you can specify is this:

repo: <some directory path>

If it does not exist, it will be created. If the repo path does not exist,
it will be created, also. In the repo, there is a directory for each task
state containing one file for each task in that state. Task names must be
unique across all states since we move the files around in the various repo
directories [1].

With 0.6.0, I've added an ncurses-based UI. It's crude, probably buggy
even. It can be invoked with:

$ dbsui

There is a 'help' command ('?'). The left panel lists the projects that
have open tasks, and the right panel lists the tasks for the current
project. This is still experimental code so caveat emptor.


Notes:
[0] Nothing ever gets actually deleted unless you remove the files.
[1] In order to sync across machines, I create ~/Dropbox/dbs and use
Dropbox to sync that directory across machines.

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

dbs-todo-0.6.1.tar.gz (27.3 kB view details)

Uploaded Source

Built Distribution

dbs_todo-0.6.1-py3-none-any.whl (27.9 kB view details)

Uploaded Python 3

File details

Details for the file dbs-todo-0.6.1.tar.gz.

File metadata

  • Download URL: dbs-todo-0.6.1.tar.gz
  • Upload date:
  • Size: 27.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for dbs-todo-0.6.1.tar.gz
Algorithm Hash digest
SHA256 e9eb2653a5fcbfea9696c6c7805f39289cdbd4db7ef558f6c12df30168cd9acd
MD5 6415ae67dd8368606ffb306cd8956554
BLAKE2b-256 4ee3a3d29090208ed91878e4fcd3bdd77f64734acc76e8bfcf26a8647265c8b3

See more details on using hashes here.

File details

Details for the file dbs_todo-0.6.1-py3-none-any.whl.

File metadata

  • Download URL: dbs_todo-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 27.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for dbs_todo-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 13c782e47d78fef9c2b552ba2b52a5d2ee91031ff9a5632f7d30b193116d2258
MD5 7e30ec671ab0a40dd4140dc06a975f53
BLAKE2b-256 985526c70550311fc771f272e752c1e1f8f2cfc2d2b775ecb13916c8a46dcf4d

See more details on using hashes here.

Supported by

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