marktask 0.1.0

A CLI tool for parsing and manipulating Markdown tasks.
Documentation

Rust

marktask

marktask is a command-line interface (CLI) application designed for parsing and manipulating Markdown tasks. It allows users to filter, extract, and transform task information seamlessly within their shell environment.

Features

  • Parse Markdown-formatted tasks.
  • Extract tasks with due dates, scheduled dates, and start dates.
  • Filter tasks based on completion status.
  • Filter out or include overdue tasks with the --overdue option.
  • Output tasks in plain text or JSON format for easy consumption by other tools.

Installation

cargo build --release
mv target/release/marktask /usr/local/bin

Usage

marktask can be used with pipes and with other commands in a shell environment. Below are some examples to get you started:

Display Tasks from a File

marktask < tasks.md  # or
cat tasks.md | marktask

Filter Tasks Containing Specific Text

cat tasks.md | marktask | grep "Project A"

This command sequence reads tasks from tasks.md, parses them, and then uses grep to filter tasks related to "Project A".

Convert Tasks to JSON

For integration with other tools that consume JSON, marktask can output tasks in JSON format:

cat tasks.md | marktask --json

Filter Overdue Tasks

To exclude overdue tasks from the output, use the --overdue=false option. By default, all tasks, including overdue ones, are shown:

cat tasks.md | marktask --overdue=false

License

This project is licensed under the Apache License Version 2.0 - see the LICENSE file for details.