KenjiTakahashi / td

Licence: GPL-3.0 license
a non-offensive, per project ToDo manager.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to td

Tasky
Tasky is a task management app made with SwiftUI.
Stars: ✭ 22 (-54.17%)
Mutual labels:  todo, todolist
Todo-List
✔️ Create to-do lists to easily manage your ideas and work.
Stars: ✭ 30 (-37.5%)
Mutual labels:  todo, todolist
Collabtive
Collabtive is web based project management software
Stars: ✭ 192 (+300%)
Mutual labels:  todo, todolist
Qtodotxt2
Rewrite of GUI code of QTodoTxt using qml.
Stars: ✭ 136 (+183.33%)
Mutual labels:  todo, todolist
Nickel
Micro tasks manager written in pure Python
Stars: ✭ 18 (-62.5%)
Mutual labels:  todo, todolist
Atom Todo Show
Atom package that shows a list of todos from your project.
Stars: ✭ 186 (+287.5%)
Mutual labels:  todo, todolist
tdls
command-line Todo-list & Tech-blogging Service
Stars: ✭ 19 (-60.42%)
Mutual labels:  todo, todolist
Todoit
The JavaScript framework for hassle-free TODO application development.
Stars: ✭ 102 (+112.5%)
Mutual labels:  todo, todolist
Streak-Tasks
Streak Tasks Habit Tracker
Stars: ✭ 27 (-43.75%)
Mutual labels:  todo, todolist
ugly-todo
Just an Ugly To-Do app that I wanted to develop.
Stars: ✭ 35 (-27.08%)
Mutual labels:  todo, todolist
Coddx Alpha
Coddx - a collection of tools that help developers program efficiently. One of the features is generating multiple files from templates quickly.
Stars: ✭ 132 (+175%)
Mutual labels:  todo, todolist
ttdl
TTDL - Terminal Todo List Manager
Stars: ✭ 91 (+89.58%)
Mutual labels:  todo, todolist
Td Cli
A todo command line todo manager ✔️
Stars: ✭ 119 (+147.92%)
Mutual labels:  todo, todolist
outspline
Extensible outliner and personal time organizer to manage todo lists, schedule tasks, remind events.
Stars: ✭ 41 (-14.58%)
Mutual labels:  todo, todolist
Markor
Text editor - Notes & ToDo (for Android) - Markdown, todo.txt, plaintext, math, ..
Stars: ✭ 1,394 (+2804.17%)
Mutual labels:  todo, todolist
To Do
一个无后端待办事项应用,数据用 LeanCloud 进行同步。
Stars: ✭ 238 (+395.83%)
Mutual labels:  todo, todolist
Flutter todo
Yet another Todo app, now using Flutter (with ScopedModel)
Stars: ✭ 94 (+95.83%)
Mutual labels:  todo, todolist
Py Todo
📋 Lightweight reminder / todo-list in cli
Stars: ✭ 102 (+112.5%)
Mutual labels:  todo, todolist
To-Do App
A Simple To-Do App With Js
Stars: ✭ 21 (-56.25%)
Mutual labels:  todo, todolist
api
Mirror of vikunja from https://code.vikunja.io/api
Stars: ✭ 119 (+147.92%)
Mutual labels:  todo, todolist

Build Status Coverage

td is a non-offensive, per project ToDo manager.

Heavily inspired by devtodo, but with some nasty features, like:

  • Shorter commands for most used actions.
  • Sorting/Filtering specific levels only.
  • Persistent sort/filter/view options.
  • Written in pure Python (it even has docstrings).
  • Tests.

Oh, and it will automagically pick up your existing devtodo lists!

screenshot

screenshot

requirements

  • python3
  • distribute (for setup)
  • nosetests (for test-suite)

installation

Through PyPI

$ pip install td

or from sources

$ python setup.py install

usage

show

To show your complete ToDo list, just run td without any parameters.

$ td

add

Typing

$ td a(dd) [<parent index>]

will start an interactive item adding session.

Optional parent_index parameter specifies item, under which the new one will be nested.

Instead of using interactive session, one can also specify them in command line, like below.

$ td a(dd) [<parent index>] --<field name> <field value>
$ td a(dd) [<parent index>] -<first letter of the field name> <field value>

edit

Typing

$ td e(dit) <index>

where index is an item's index, will start an interactive item editing session.

Similarly to a(dd), one can also specify new values in command line.

$ td e(dit) <index> --<field name> <field value>
$ td e(dit) <index> -<first letter of the field name> <field value>

One special cause here is reparenting, done like below.

$ td e(dit) <index> --parent <parent index>

remove

Typing

$ td r(emove) <index>

will remove item under index.

done/undone

Typing

$ td d(one) <index>

will mark item under index as done, while typing

$ td D <index>
$ td undone <index>

will mark it as not done.

modify

Performs a one time modification of the list and saves it to disk.

sort

Used to sort items on the list.

General syntax is

$ td (v|m|o) -s [+|-]{,}[[<level>]{:}[<field_name>](+|-)]
$ td (v|m|o) --sort [+|-]{,}[[<level>]{:}[<field_name>](+|-)]

but it looks cryptic, so lets split it into some more specific use cases.

To sort everything ascending by name, type

$ td (v|m|o) -s
$ td (v|m|o) -s +

To sort everything descending by name, type

$ td (v|m|o) -s -

To sort specific level by name, type (as before, + goes for ascending and - for descending)

$ td (v|m|o) -s <level>(+|-)

To sort everything by a field other than name, type

$ td (v|m|o) -s <field name>(+|-)

To sort specific level by a field other than name, type

$ td (v|m|o) -s <level>:<field name>(+|-)

And to specify muliple rules, use a comma (,). For example this

$ td (v|m|o) -s +,1-,2:priority+

will sort items at the second level ascending by priority, item at the first level descending by name, and all other levels ascending by name.

Note that to sort by multiple conditions, just supply them one by one and they'll be applied in order of appearance.

purge

Typing

$ td (v|m|o) -p
$ td (v|m|o) --purge

will remove all completed items.

done/undone

Used to batch mark items as done or not.

General syntax is

$ td (v|m|o) -d [[<level>]{:}[[<field name>=]<regexp>]]
$ td (v|m|o) --done [[<level>]{:}[[<field name>=]<regexp>]]
$ td (v|m|o) -D [[<level>]{:}[[<field name>=]<regexp>]]
$ td (v|m|o) --undone [[<level>]{:}[[<field name>=]<regexp>]]

As with sort, we'll split it into use cases.

To mark all items, type

$ td (v|m|o) -(d|D)

To mark all items at specific level, type

$ td (v|m|o) -(d|D) <level>

To mark items matching regexp at any field and level, type

$ td (v|m|o) -(d|D) <regexp>

To mark items matching regexp at specific field and any level, type

$ td (v|m|o) -(d|D) <field name>=<regexp>

To mark items matching regexp at any field and specific level, type

$ td (v|m|o) -(d|D) <level>:<regexp>

To mark items matching regexp at specific field and level, type

$ td (v|m|o) -(d|D) <level>:<field name>=<regexp>

Of course, these rules can also be chained using comma (,).

view

Affects how the list is displayed on the screen. It does not modify the list physically and only takes effect for one run, all settings are then gone.

Shares the interface of modify command, with following additions.

nocolor

Disables any possible color codes, i.e. prints pure textual data. Might be useful for storing and/or reusing the output.

$ td v --no-color

options

Describes persistent options, which will be applied every next time td is run.

Shares the interface of modify command, with following additions.

global Stores options globally (in ~/.tdrc), which means that they will be applied to all lists.

Note: Local options take precedence over global ones.

$ td o -g <other options>
$ td o --global <other options>
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].