Releases: VladimirMarkelov/ttdl
Edit a subject and keep the original tags
- 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, sectionEdit in keep-tags mode
for more details)
v4.2.1: #92 - forbid running rm,done,undone,edit,postpone without specifying …
Forbid running rm
, done
, undone
, edit
, and postpone
commands without specifying tasks to process
New recurrence interval `b`
- 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
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 sectionMarking task completed and uncompleted
) and configuration optionglobal.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
- 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 optionauto-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 notnone
, remove all duplicated values from the subject of a task
Plugin fixes (Windows specific changes)
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
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 optionglobal.fields
- When
Due
, custom tags,Project
andContext
columns are displayed, their values are also printed in the columnSubject
. To hide duplicated information inSubject
, you can pass either the new command-line option--clean-subject
with a desired value (see README, sectionHide 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 withttdl --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
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 headerlist --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
Bump dependencies
- bump dependencies
- fix a small display bug: when marking a recurrent task done, TTDL displayed only the closed task, Now TTDL shows both closed and added tasks
Use `None` as default foreground color
TTDL used White
always as the default color for output, but on light color schemes it looked bad (see #71).
- Use
None
as the default foreground color - Add an option to
ttdl.toml
(see the new optiondefault_fg
commented out in the archive by the end of the section[colors]
) for users who want to use an arbitrary color as a default foreground one - Fix new clippy warnings and bump dependencies