theca 1.0.0

a simple, fully featured, command line note taking tool
Documentation
# Design document

initial design document for *theca*, may not be completely up to date with the
current version.

## json note profile file

    as described in `schema.json` this is what the note profile looks like

    {
        "encrypted": false,
        "notes": [
            {
                "id": 2,
                "title": "\\(◕ ◡ ◕\\)",
                "status": "",
                "body": "",
                "last_touched": "2015-01-22 15:01:39 -0800"
            },
            {
                "id": 3,
                "title": "(THECA) add super secret stuff",
                "status": "",
                "body": "",
                "last_touched": "2015-01-22 15:21:01 -0800"
            },
            {
                "id": 5,
                "title": "(THECA) check about drop_to_editor adding newlines?",
                "status": "",
                "body": "",
                "last_touched": "2015-01-22 15:31:14 -0800"
            }
        ]
    }

## display note commands

    long note list:
    # theca
    id  title                          status      date
    -------------------------------------------------------
    1   short title                    Urgent      21-12-14
    2   long title with body      (+)  Started     21-12-14
    3   i dont have a status                       21-12-14

    condensed note list:

    # theca -c
    1   short title                     U       10-12-14
    2   long title with body       (+)  S       10-12-14
    3   i dont have a status                    21-12-14

    view single note:

    # theca 1
    2   long title with body            S       10-12-14
        This is the body!

## add note commands

    # theca add "this is the title guys whoa"
    # theca add "a item with started status" -s
    # theca add "a item with urgent status" -s
    # theca add "item with a body from string" -b "this is the body of the note, this is a pretty limited way of adding a body, but if you must"
    # theca add "item with a body from $EDITOR" --editor # drop to editor specified in $EDITOR to create body (similar to git commit)
    # cat file | theca add "item with a body from pipe" -
    # theca add "item with a body from pipe" - <file 

## edit note commands

    # theca edit 1 -s     # started
    # theca edit 1 -u     # urgent
    # theca edit 1 -n     # no status

    # theca edit 2 "this is the new title for this item"
    # theca edit 2 "a different title" --editor # drop to $EDITOR to edit body
    # theca edit 2 -b "just the body"
    # theca edit 2 "body from stdin" - <file

## delete note commands

    # theca del 2         # delete a single note

    # theca clear         # delete all notes

## search note commands

    # theca search keyword                        # search titles for keyword
    # theca search --regex /\d+\/                      # search titles using regex pattern
    # theca search --search-body keyword          # search bodies using keyword
    # theca search --regex --search-body /\d+\/        # search bodies using regex pattern

## encryption options
	
	# theca -p encrypted_profile -k THE_KEY
	# theca -p encrypted_profile -e               # get key from STDIN