Skip to content

Releases: VladimirMarkelov/ttdl

Small fixes

25 Aug 03:56
de9cd65
Compare
Choose a tag to compare
  • update rust and fix new clippy warnings
  • bump dependencies
  • when a recurrent task is completed, all time tracking tags are not copied to a new task (to the clone of the completed one)

Rules to setting completion date when completing a task

18 Jul 05:10
bece284
Compare
Choose a tag to compare

Before 4.4.0 TTDL sets completion date for a completed task only if the task had creation date before completion. Now this behavior is defined by TTDL configuration file - see global.add_completion_date_always option, and by a command-line option --add-completion-date-always. By default the option is disabled, and TTDL works in the same way as it did in older versions.

Edit a subject and keep the original tags

11 May 02:30
1dc6e74
Compare
Choose a tag to compare
  • Update packages and fix clippy warnings
  • New option --keep-tags or -k for edit mode. If the option is set, the command must contain a new subject text. A modified todo keeps all
    properties (project, context, tags, hashtags), but the regular text is replaced with the new subject (see README.md, section Edit in keep-tags mode for more details)

v4.2.1

01 Mar 03:42
7a36037
Compare
Choose a tag to compare

Forbid running rm, done, undone, edit, and postpone commands without specifying tasks to process

New recurrence interval `b`

15 Feb 06:25
8a60865
Compare
Choose a tag to compare
  • New recurrence interval: business days.
    It works as the day interval but all Sundays and Saturdays are skipped.
  • Now the character ~ can be used in configuration file to set todo and
    done files. ~ is a shortcut for user's home directory.
    Thanks to Enno Zickler for contribution.
  • Updated docs:
    • Added description of strict and non-strict recurrences
    • Added ArchLinux installation instructions. Thanks to Justin

Calendar and todotxt compatibilty

31 Aug 19:50
210833c
Compare
Choose a tag to compare

Changes since 4.0.0:

  • Fixed a few bugs related to calendar:

    • fixed panic when printing calendar for more than 1 year
    • when displaying more than 1 year, calendar does not abruptly stops printing after the first day of the last month in the range
    • calendar ranges like --calendar=-2y..-1y did not work - they displayed emptiness, now it is works as expected
  • Fixed bug with date ranges that has none on one of its ends. e.g. --due=today..none. It should print all tasks which due date is today or later and tasks without due date set, but the old version displayed all the tasks

  • New command-line flag priority-on-done (see documentation section Marking task completed and uncompleted) and configuration option global.priority_on_done. They define what to do with task priority when the task is completed. There are four modes: keep, erase, move, and tag - see details in the help.

Automatic column formatting

30 Jul 00:39
0337b68
Compare
Choose a tag to compare
  • New output is incompatible with the output of 3.x version (because of this the major version was increased):
    • column width is not constant(except for custom columns), its width fits the longest column value
    • columns are shown in the same order as they mentioned in the settings(or in --fields option)
  • Fixed incorrect syntax highlighting: project and tag colors were swapped
  • Threshold tag was duplicated in a task subject even if --clean-subject=all was passed to TTDL
  • New command-line option auto-hide-cols: automatically hide columns which have no values
  • New command-line option auto-show-cols: automatically show tags, context, and project in separate columns
  • New command-line option always-hide-cols: never show the mentioned tags in separate columns. The option is good when used together with the option auto-show-cols
  • Neither of new options are mutually exclusive. The order of applying rules to show columns: 1) --fields is the base field list; 2) if --auto-show-cols is defined, add non-empty tags as columns; 3) if --auto-hide-cols is defined, remove all columns that have no values; 4) if the list --always-hide-cols is not empty, hide those columns; 5) if --clean-subject is not none, remove all duplicated values from the subject of a task

Plugin fixes (Windows specific changes)

29 Jun 03:56
bd5b45c
Compare
Choose a tag to compare

It seems plugin feature is not used by anyone as nobody had opened an issue for the feature that did not work for a long time. Anyway, bugs must be fixed. Changes in this release:

  • If a user plugin changed a tag value, the tag was duplicated in the result subject: once with old value and once with a new value
  • If a plugin sets the value to empty string, instead of removing the tag from the subject, TTDL added a new tag with empty value to the subject
  • Example command line for Powershell in ttdl.toml was incorrect. It must be "powershell -F" instead of "powershell -c"

Hiding duplicated info and bug fixes

09 May 03:44
a661447
Compare
Choose a tag to compare

New features:

  • Projects and context can be printed in their own column. Both are hidden by default. To enable columns, pass field list in command-line option --fields=ctx,prj or modify configuration option global.fields
  • When Due, custom tags, Project and Context columns are displayed, their values are also printed in the column Subject. To hide duplicated information in Subject, you can pass either the new command-line option --clean-subject with a desired value (see README, section Hide duplicated info) or modify your configuration file to make it permanent

Bug fixes and improvements:

  • Flag --calendar supports years (in a range -2..2). Now you can print the entire current year with ttdl --calendar=1y
  • Flag --calendar accept ranges: ttdl --calendar=-2m..2m
  • BugFix: added missing color reset when printing calendar. In the previous version in calendar mode sometimes today's background was applied to an empty line after the month and sometimes month names were printed with week number color

Calendar revamp

24 Apr 01:01
622f551
Compare
Choose a tag to compare

Release highlights:

  • list --calendar=<range> now displays a calendar in a human-friendly way: prints every month in a separate columns, month and weekday names in a header
  • list --calendar displays week number (as it is defined by ISO week number)
  • increased the limits for calendar range in months, now a user can print out up to 24 months: list --calendar=24m. In the previous release, the limit was only 3 months
  • Fixed syntax highlighting: now tags are processed in the last place, so in this release projects and contexts which names contain a colon (:) are colored properly