ttdl 4.2.0

TTDL - Terminal ToDo List manager
# The configuration file follows TOML format rules: https://toml.io/
# Note on file paths:
#   On Windows a file path usually includes backslashes. When TOML parses a string
#   enclosed into double quotes, it treats backslashes as escape characters. This
#   results in errors when loading a configuration file. To avoid this trouble, use
#   one of the following ways to put a file path to the configuration:
#   1. Use single quotes instead of double ones:
#     filename = 'c:\Users\user\todo.txt'
#   2. Duplicate backslashes:
#     filename = "c:\\Users\\user\\todo.txt"
#   3. Replace backslashes with slashes:
#     filename = "c:/Users/user/todo.txt"
#
# A TTDL config can be in the current working directory - to support
#   ttdl settings on per project basis. Global user config must be in:
# * Linux: ~/.config/ttdl/ttdl.toml
# * Windows: c:\Users\<username>\AppData\Roaming\ttdl\ttdl.toml
# * MacOS: /Users/<username>/Library/Preferences/ttdl/ttdl.toml
#
# All section must exists in the custom configuration file, but all options
#   inside every section are optional.
#
# available colors (names are case-insensitive):
#   black, red, green, yellow, blue, magenta, cyan, white
# every color may have up to 3 modifiers:
#   bold, underline, bright(or intense)
# the first two modifiers works only in ANSI-compatible terminal.
# To make them work on Windows, use ConEmu or Cmder instead
#   of standard cmd or PowerShell.
# For Cmder/ConEmu and Linux terminals indexed 256-color terminal and
#   RGB colors are supported as well. Format for indexed colors is the index
#   of the color(enclosed in double quotes):
#   overdue="140"
#   Format for RGB is enclosed in double quotes a comma separated list of 3
#   numbers (order of colors is R,G,B) :
#   overdue="220,0,0"
#   For both indexed and RGB colors the number can be either decimal between
#   0 and 255 or hexadecimal in range 0x0 - 0xFF. In latter case, it must start
#   with  "0x".
# If a color value cannot be parsed it defaults to 'white'
[colors]
# color_term: terminal color support
#   auto: standard console API for Windows, ANSI for *nix OSes
#   ansi: use ANSI-compatible colors (to make it work on Windows you have to
#       use a third-party console emulator like ConEmu or Cmder
#   none: disable colors
color_term = "ansi"
# overdue incomplete todos
overdue = "bright red"
# todos with overdue threshold date
threshold = "red"
# todos with highest priority (A)
top = "bright red"
# important todos - with a priority equal to or higher than `ranges.important`
important = "white"
# done todos
done = "bright black"
# todos that are due today
today = "bright yellow"
# todos that are due in and less in `ranges.soon` days
soon = "white"
# todos that old (color for creation date)
old = "bright black"
# the default text color
# default_fg = "white"

[ranges]
# TTDL filter `soon` selects todos that are due in and less than in `soon` days
# 0 - disable `soon` feature
soon = 0
# todos that have priority equal or higher than `important` are displayed in
#   in `colors.important` font color.
# Priority is a character from 'a'(highest priority) through 'z'. Setting
#   `important` to any other value disables the feature
important = ""
# creation date of todos that are older than `old` is displayed in `old` color.
# Format: single digit and modifier 'd'(day), 'w'(week), 'm'(month), 'y'(year)
old = "1y"

[global]
# set global todo.txt filename. It works as environment variable TTDL_FILENAME,
#   but environment variable overrides config setting.
# See a note about file paths on Windows at the top of the file
# filename = "./"

# automatically set creation date to today if it is not set when adding a new todo
# creation_date_auto = true

# fields that are displayed by default. Available fields:
#   pri, done, due, created, finished, thr
# fields = "pri,due,done"

# default sorting
# sort = "pri"

# shell to execute plugins. If not set, it defaults to:
#   ["cmd", "/c"] on Windows
#   ["sh", "-cu"] on other OS
# shell = ["powershell", "-F"]

# add extension to plugin name when calling it.
# if extension does not start with '.', the dot is added automatically.
# Useful on Windows to choose between 'ps1', 'cmd', and 'bat'
# script_ext = ".ps1"

# add prefix to plugin name before calling it.
# E.g., for powershell simple "plugin" fails but "./plugin" works fine.
# See a note about file paths on Windows at the top of the file
# script_prefix = "./"

# determine first day of the week
#    true - first day of week is Sunday
#    false - first day of week is Monday
# Note: The option is unused yet
# first_sunday = true

# enables strict command-line mode: in this mode the first free command-line
# argument must be a TTDL command. It may be useful to avoid adding incorrect
# todos after making a type, e.g, `ttdl listt`
# strict_mode = false

# defines what items from a subject will be removed before printing:
#    none | nothing = subject is printed as-is (default)
#    tags = only tags can be removed, projects and contexts are not touched
#    all = remove tags, projects, and contexts
# NOTE: the option affects only things that are printed in separate columns.
#    I.e, with default "fields=pri,due,done" and "clean_subj=all", only
#    "due" tag and value are removed. But with "fields=due,prj", both "due"
#    tag and "project" are cleaned up.
# clean_subject = "none"

# Automatically hide columns if all values are empty
# auto_hide_columns = false

# Automatically show columns for all tags found in any of tasks.
# NOTE: custom formatting fields, which names start with '!' are ignored.
# auto_show_columns = false

# Comma-separated list of tags that are hidden always.
# Use it with auto_show_columns=true to hide non-empty columns that you
# do not want to see in a separate columns
# always_hide_columns =

# What to do with task priority when the task is completed:
#    keep  = only prepend 'x' (default)
#    move  = place the priority after completion date. In this case the task
#            subject still contains priority but it is not displayed in the
#            priority column
#    tag   = convert priority to a tag
#    erase = remove priority from the task
# NOTE: all modes above, except `erase`, are reversible, i.e., when the completed
#       task is undone, the task gets its priority back
# priority_on_done = keep

[syntax]
# Set enabled to 'true' to highlight projects, contexts, tags, and hashtags
#     inside the subject
# enabled = false
tag_color = "bright cyan"
hashtag_color = "cyan"
project_color = "bright green"
context_color = "green"

# Example of a custom field of `date` type with conditional highlight.
# [[fields]]
# name = "chk" # tag name
# title = "Check" # column title in the output
# width = 0 # auto-width
# kind = "date"
# ### the following subarray is optional and can be omitted
# [[fields.rules]]
# range = "..yesterday" # overdue todo, i.e, check date is before today
# color = "red"
# [[fields.rules]]
# range = "today..soon" # check must be done soon: between today and today+7 days, inclusive
# color = "bright yellow"