A to-do's CLI app written in Go
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
cmd/td
.gitignore
.travis.yml
CODE_OF_CONDUCT.md
CONTRIBUTING.md
Gopkg.lock
Gopkg.toml
LICENSE.md
Makefile
goreleaser.yml
readme.md
todofile.go
todos.go
todos_test.go

readme.md

td Godoc

A to-do's CLI app written in Go. Inspired on The Power of the TODO List by James Hood (🐦 @jlhcoder).

Installation

$ go get -u github.com/gillchristian/todos/cmd/td

Usage

# Initialization

$ td init ~/Desktop/todos # initialize to-do's directory and create today's to-do file
$ td init                 # use default directory ~/.todos

# List TODOs and Acommplished items 

$ td list      # defaults to today's file (*)
$ td           # just an alias for ^
$ to list last # lists the last found (not today's)

# Add a TODO

$ td add <TODO item> # adds the item to today's list (*)

# Set a TODO as completed
# If I is not provided TD will list today's TODOs and ask for I

$ td done [I] # sets TODO #I as accomplised, if it exists (*)

# Remove a TODO
# If I is not provided TD will list today's TODOs and ask for I

$ td rm [I] # removes TODO #I, if it exists (*)

# Generate a report
# 

$ td report <week|month|year>
$ td report <week|month|year> -o <FILE> # write the report to <FILE>

(*) creates today's file if not yet created.

NOTE: if you use a custom directory you will have to specify it on every command with the --dir flag. A solution fo that is to use an alias:

alias td="td --dir ~/Desktop/todos"

TO-DO

  • $ td
  • $ td init
  • $ td list
  • $ td list last
  • $ td list <date>
  • $ td add <todo item>
  • $ td done [I]
  • $ td rm
  • $ td report <week|month|year>
  • Create today's file when not found (using yesterday's TODOs).
  • Feed back messages:
    • $ td init was not run, i.e. --dir does not exists.
    • No TODOs (well done! & suggest to use $ td add <todo item>).
    • No Accomplished (mmm! & suggest to use $ td done).
    • No items (both TODOs & Accomplished suggestions).
  • Add tests.