- Add the configuration variable 'print.empty.columns'.
- If this variable is set to 'no', columns with all empty values are not
printed. This variable defaults to 'yes' (thus nothing is changed
by default).
- Updated taskrc.5.in to mention the new variable.
- Added unit tests.
- Removed deprecated 'fg:' and 'bg:' attributes, which involves code,
documentation and tests.
- Cleaned out NEWS file.
- Cleaned out config import synonyms, which should have been deleted a while
ago.
- Removed unused localized strings, but left the 'deprecated' one behind,
because it will be needed.
- Added an A3::is_attr type override for 'recur', which needs to be
treated as an un-expanded 'string' type, most, but not all of the
time.
- Documented the above in ColRecur.cpp.
- Modified Command.cpp to recognize both type 'duration' and name 'recur'.
- Removed Command::next_mod_group argument coalescing for date types,
which was not used anyway.
- Improved the error message for unrecognized durations, which previously
included the word 'date'.
- Modified unit tests to accomodate the above error message change.
- Added bug.972.t unit tests, which fail, because it isn't fixed yet.
- Made A3::dump const so it can be used anywhere.
- Supports 'scheduled' date for tasks, which represent the earliest opportunity
to work on a task.
- Added unit tests for urgency.
- Implemented color rule.
- Added scheduled to 'info' report.
- Updated assorted documentation.
- Removed comments in default rc because they are never seen.
- Added (broken) 'ready' report, which is like 'next' but only for ready tasks.
- Added support for more type-specific checks of attribute values.
- Added support for more type-specific attribute rendering.
- Improved generalized methods for checking columns in a report.
- Added unit tests.
- Minor code cleanup.
- Added secret hidden feature for internal testing.
- Possible fix for bug #892, which I cannot replicate anyway. This fix
involves testing my suspicion that std::map autovivifies via
std::map::operator[], which is not nice. Will ask Dmitriy to confirm.
- Removed unnecessary definitions of max() and min(), replaced existent calls
with std::max(). Precursor to Bugfix #887.
Signed-off-by: Paul Beckingham <paul@beckingham.net>
- Addressed bug #804 by allowing rc.hyphenate to control whether hyphens are
inserted when long lines are broken. This may help prevent xterm from
mis-parsing URLs in task annotations, when wrapped (thanks to Yann Davin).
- Added unit tests.
- Task is no longer a map of string to Att. Att is itself a name/
value pair, so the name was redundant. Task is now a map of string
to string. This brings the obsoletion of Att much closer.
- Added Context::getColumns to return a vector of column names.
This is to help a shift toward using the Column objects to assist
in the parsing/validation of data entry/modifications.
- Added Column::modifiable to delegate an attributes readable/writeable
state. This means the columns will be in charge of their own
mutability, which will simplify and generalize Command::modify_task.
- Added feature #800, adding a new command 'columns' that lists all the columns
available for custom reports, and includes their formatting options (thanks
to T. Charles Yun).
- Refactored column objects to contain a ::validate method, for the
validation of incoming data.
- Context.columns is now a vector of one of each column object,
indexed by attribute name, for validation purposes.
- Fixed bug so that columns of type "string*" calculate ideal size
by taking into account \n characters in the data, rather than simply
the string length.
- Fixed problem with incorrect Color vector addressing.
- Modified ViewText to not underline empty column headers.
- Implemented ViewText::set method to set only color.
- Corrected use of rc.fontunderline with the new Views.
- Added new sample todo.sh import data, thanks to Daniel Wilcox.
- Added rc.defaultwidth to various tests.
- Modified tests to accomodate new next report.
- Corrected regex in rc.override.t.
- The ColumnDepends object was failing to map uuid --> id and so
rendered no data for the blocked report.
- Code used the term 'blocked' when it should have used the term
'blocking'.
- Broke out View into ViewTask and ViewText, where the former uses an
external std::vector <Task> as storage, thus eliminating the additional
copy, and the latter that duplicates data and color into 2D vectors
for rendering non-task data.
- Changed the ::measure and ::render methods from pure virtual to
virtual.
- Fixed bug where recur.indicator used the length of the indicator
instead of the indicator.
- Implemented ColString.{h,cpp} to support generic Views based on
strings, not tasks.
- Implemented newly virtual Column:: methods.