コード例 #1
0
def print_recent_week(opts, categories):
    """Show a list of all entries from the recent week."""
    width, _ = get_terminal_size()
    week_ago = (datetime.utcnow() - timedelta(weeks=1)).isoformat()
    for entry in _generate_merged_entries_from_s3(opts):
        if entry['timestamp'] > week_ago:
            if not opts.category or entry.get('category') == opts.category:
                print_entry(entry, categories, width=width)
コード例 #2
0
def _do_todo_list(opts, categories):
    """Show a menu for completing todo items"""
    width, _ = get_terminal_size()
    menu_items = list(enumerate(
        _generate_incomplete_entries(opts, categories),
        start=1))

    for index, entry in menu_items:
        print_entry(entry, categories, width=width, prefix=str(index) + ') ')

    try:
        completed_index = int(get_console_input(
            "Which entry did you complete [Enter to quit]? "))
    except ValueError:
        print "No entries changed."
        return

    entry = dict(menu_items).get(completed_index)

    logit(opts, {
        'category': entry['category'],
        'ref_id': unique_id_from_entry(entry),
        'complete': True
    })
コード例 #3
0
def _do_merge(categories, opts):
    """Show the contents when merged from all installations."""
    width, _ = get_terminal_size()
    for entry in _generate_merged_entries_from_s3(opts):
        print_entry(entry, categories, width=width)
コード例 #4
0
def _do_list(opts, categories, category=None):
    width, _ = get_terminal_size()
    for entry in _generate_entries_from_local_file(opts, sort=True):
        if not category or entry.get('category') == category:
            print_entry(entry, categories, width=width)