Commit graph

599 commits

Author SHA1 Message Date
Paul Beckingham
23786515f9 CLI2: Implemented simple argument capture, with no processing. 2015-06-13 14:13:19 -04:00
Paul Beckingham
ec5876d56b CLI2: Aliases captured.
- CLI2::alias now captures all alias definitions from Context::Config.
2015-06-13 14:02:18 -04:00
Paul Beckingham
22765a70cb CLI2: Entity capture.
- CLI2::entity now captures all the known entities, duplicating the processing
  in Context for now.
2015-06-13 13:57:53 -04:00
Paul Beckingham
5602413acd CLI2: Migrated static methods
- The old CLI object has three static methods that are used for extracting
  information from the command line before parsing takes place. These include
  rc.name:value and rc:value and code that applies those overrides to
  Context::Config. These methods are moved to CLI2 - being static it makes no
  difference where they reside.
- Context::initialize now calls the CLI2 versions only.
2015-06-13 13:44:54 -04:00
Paul Beckingham
ca90893216 CLI2: Static initialization of global settings. 2015-06-13 13:38:19 -04:00
Paul Beckingham
708ddd3804 CLI2: Refactoring CLI to rely completely on the Lexer 2015-06-13 13:35:34 -04:00
Paul Beckingham
490742284b Merge branch '2.4.5' of ssh://git.tasktools.org/tm/task into 2.4.5 2015-06-07 09:47:15 -04:00
Paul Beckingham
e1a03c4415 Context: Removed misleading comment. 2015-06-07 09:47:07 -04:00
Wilhelm Schuermann
ae692e07a6 Verbosity: Fix "project" info not showing
- Make "project" verbosity imply "footnote", since verbose project
  info is shown using footnotes.  Fixes failing test in verbose.t.
- Convert "verbosity" variable to std::set for increased readability.
2015-06-07 15:01:26 +02:00
Paul Beckingham
3e043291f0 Cleanup: Combined File, Path and Directory into FS
- The three objects are related and always travel together, so they are now
  combined.
2015-05-25 10:11:41 -04:00
Paul Beckingham
7bbc794d3a C++11: N2672 Initializer lists
- Modified code to use the more compact and readable initializer lists.
2015-05-24 13:03:02 -04:00
Wilhelm Schuermann
49f7612704 TW-1572: Implement better urgency inheritance
- Implement recursive urgency inheritance.  If this is to be made a
  default setting, some thought will have to be put into making it
  more efficient.
2015-05-22 23:01:21 +02:00
Paul Beckingham
e74c6963a9 C++11: Cleaned up program framework with range-based for 2015-05-11 17:50:53 -04:00
Wilhelm Schuermann
710372b8db TW-1610: Disabling GC can lead to editing the wrong task
- 9e6c6ecb93 introduced a change that
  can lead to the wrong task being edited when GC is manually turned
  off.  Fix this by taking the user's GC setting into account.
2015-05-04 09:01:01 +02:00
Paul Beckingham
5af4579741 Priority: Converted 'priority' attribute to a UDA
- 'priority.long' and 'priority.short' formats now map to 'priority', and
  generate a warning.
- Man page updated.
- Converted priority urgency coefficients to UDA equivalents.
- Converted priority color rules to UDA color rules.
- Removed 'default.priority' support.
- Removed special sort handling for 'priority' field in Variant, added special
  UDA sort handling.
- Removed ColPriority.{h,cpp} source files.
- Removed asorted newly-unused variables.
- The 'show' command now highlights unused priority settings.
- Removed unused localized priority-relateѕ strings.
- Added legacy mapping for columns and sort columns for 'priority.long' and
  'priority.short' columns in report definitions.
- Removed priority color rules implementation.
- Removed obsolete tests for #860, #990, custom.priority_long.t.
- Updated various tests that set priority default, colors.
2015-04-04 19:30:33 -04:00
Paul Beckingham
29a09707f3 Variant: Implemented custom UDA sorting 2015-04-04 15:47:41 -04:00
Paul Beckingham
743cb92958 Context: Static initialize UDA sort order values 2015-04-04 14:50:38 -04:00
Paul Beckingham
690d9493f0 Build: Resolve some more compiler warnings 2015-03-29 18:03:36 -04:00
Wilhelm Schuermann
9e6c6ecb93 TW-1583: Invalid ID displayed after done/delete
- Fix completed/deleted tasks getting an ID when GC is going to be run,
  previously resulting in invalid IDs being displayed in reports that
  show non-pending tasks.

A side effect of this fix is that it is sometimes not possible to
filter by ID when running a report right after calling done/delete.
This problem existed before; this change makes it happen on the first
report instead of the second, so it is more consistently broken.
Commands that modify tasks are not affected, making this an annoying
yet harmless defect.
2015-03-28 10:36:58 +01:00
Paul Beckingham
104aeb3905 TDB2
- Commented and reorganized for threading.
2015-03-02 09:33:57 -05:00
Paul Beckingham
6626207ad1 TW-1522
- TW-1522 Date format doesn't like hyphens (thanks to Scott Carter).
2015-01-25 14:49:02 -05:00
Paul Beckingham
99ebf82c3a Context
- Eliminated fileno() by using unistd.h STDOUT_FILENO. This is because fileno()
  is not visible with '--std=c++11'.
2015-01-04 20:25:25 -05:00
Paul Beckingham
231e8ca913 Portability
- Missing include on Cygwin only.  Odd.
2015-01-04 20:17:56 -05:00
Paul Beckingham
b7ad091d00 Updated copyright to 2015 2015-01-01 00:00:41 -05:00
Paul Beckingham
dd7a9e32db Context
- Improved command line feedback.
2014-11-10 22:53:33 -05:00
Paul Beckingham
d5d60b672a Context
- Restored header if the 'information' command is assumed.
2014-11-10 22:15:53 -05:00
Paul Beckingham
97428397a5 CLI/Context
- Removed repeated header calls that display a reconstructed command line in
  the event that default.command is used.
2014-11-10 22:07:02 -05:00
Paul Beckingham
33bc4f13d0 Context
- Creates a set of entities for binary operators.
2014-11-09 15:19:57 -05:00
Paul Beckingham
3b1f244f42 CLI/Context
- Reordering init sequence.
- Removed ::assumeLocations.
2014-11-09 10:38:40 -05:00
Paul Beckingham
b9b998c769 CLI
- Added a strict analysis mode that throws errors. In non-strict mode no errors
  are thrown because parsing is incomplete most of the time, and only the final
  pass needs to be strict.
2014-11-08 14:00:39 -05:00
Paul Beckingham
11d210a7c7 CLI
- Hooked up the parser to rc.abbreviation.minimum.
2014-11-08 13:41:19 -05:00
Paul Beckingham
7ad99cb7fa Context
- Removed last calls to Parser::.
2014-11-02 22:19:20 -05:00
Paul Beckingham
9c245f838a CLI
- Implemented ::applyOverrides.
- Calls ::applyOverrides from Context.
2014-11-02 22:12:48 -05:00
Paul Beckingham
c8dfa8f7fd CLI
- Implemented ::getDataLocation.
- Called ::getDataLocation from Context.
2014-11-02 22:10:47 -05:00
Paul Beckingham
7845786398 Context
- Removed unused ::program member.
2014-11-02 21:52:41 -05:00
Paul Beckingham
9799fcefed CLI
- Updated ::getOverride to scan all args, display the debug feedback, and derive
  the home dir.
- Removed Parser::getOverrides calls from Context.
- Cleaned up dead code in Context::initialize.
2014-11-02 21:31:25 -05:00
Paul Beckingham
d49222e8c7 CLI
- Implemented ::getOverride, and updated Context to use it.
2014-11-02 21:14:08 -05:00
Paul Beckingham
9ea61e25e8 Context
- Removed Parser member, which is now local to ::initialize.
2014-11-01 00:04:02 -04:00
Paul Beckingham
45bcf113d9 Context
- Removed unnecessary Parser calls, leaving only minimal rc processing.
2014-10-31 23:55:03 -04:00
Paul Beckingham
9f8ab6e4e2 Context
- Switched from Parser::getLimit to CLI::getLimit.
2014-10-31 23:34:17 -04:00
Paul Beckingham
8863458879 Context
- Converted from Parser::getCommand to CLI::getCommand.
2014-10-31 23:12:41 -04:00
Paul Beckingham
f80d57ff48 Context
- Sets up fixed-name attributes first.  Extends that list with dynamic
  attributes (UDAs) later, when known.
2014-10-31 19:14:47 -04:00
Paul Beckingham
3700d2df9f Context
- Relocated some (more needed) entity declarations into ::setupEntities.
2014-10-31 08:53:25 -04:00
Paul Beckingham
67581187ae CLI
- Converted CmdCalc from Parser to CLI.
2014-10-25 22:20:32 -04:00
Paul Beckingham
07bb370637 Merge branch 'parser2' into 2.4.0 2014-10-25 19:43:13 -04:00
Paul Beckingham
cd8f7ddac4 CLI
- Can now safely re-analyze command line if something changes. This required a
  ::analzye method to be called late in Context::initialize.
2014-10-19 17:59:51 -04:00
Paul Beckingham
87538589a6 Context
- Setting rc.debug.hooks or rc.debug.parser to non-zero values also sets
  rc.debug=true, otherwise the output is not visible.
2014-10-19 17:34:35 -04:00
Paul Beckingham
d873a15aa7 Context
- Removed the restriction that debug messages must be unique. Because it's
  insane.
2014-10-19 01:30:24 -04:00
Paul Beckingham
6d64472826 Context
- Removed calls to now-private methods.
2014-10-14 23:23:09 -04:00
Paul Beckingham
632cb3e194 Context
- Now calls aliasExpansion and categorization.
2014-10-14 00:59:33 -04:00