- Introduces an 'indent' integer flag to the CLI for specifying the
number of spaces to indent lines in the remind output.
- Updates Task.ToRemind to accept an indent parameter and apply heading
spaces accordingly.
- Adjusts main.go to pass the indent value from the flag to ToRemind.
Previously, only "due" metadata was excluded when generating Remind
output. This change also skips "url" metadata, preventing it from
appearing in the Remind string.
Version 06.02.02 of remind supports "url" metadata.
BREAKING CHANGE: The Task struct's Metadata field now maps to slices of
strings (map[string][]string) instead of single strings. This allows
tasks to have multiple values for the same metadata key. All code
interacting with Metadata must be updated to handle slices. Version
bumped to v3.0.0.
Implements Task.ToRemind(), which generates a Remind-formatted string
including due date, metadata, projects, contexts, completion status, and
priority.
- Refactor ParseLine to use token-based parsing for completed status,
priority, and dates.
- Improve handling of priority and creation date for both completed and
incomplete tasks.
Previously, the priority calculation did not handle 'Z' correctly,
resulting in a non-zero value. Now, 'Z' returns 0 as intended, and the
step size is calculated for a linear scale.
- Add parser for todo.txt tasks supporting priority, dates, projects,
contexts, and key:value metadata
- Include full todo.txt format specification (SPECS.md) and visual
description (description.svg)
- Add sample test.todo.txt file with valid, borderline, and malformed
cases
- Initialize Go module and main entrypoint for parsing and JSON output
- Add .gitignore for binary artifacts