Commit graph

63 commits

Author SHA1 Message Date
Paul Beckingham
cdde747733 TW-1498
- TW-1498 Filtering for presence of UDA matches all tasks (thanks to Ralph Bean).
2015-01-10 14:36:21 -05:00
Paul Beckingham
b7ad091d00 Updated copyright to 2015 2015-01-01 00:00:41 -05:00
Paul Beckingham
d5c937ba8c Filter
- Diagnostics for filter eval were not enabled properly. Now rc.debug.parser=2
  will show all filter eval diagnostics.
2014-11-22 13:48:28 -05:00
Paul Beckingham
083b0cb0de CLI
- Implemented ::getBinary.
- Removed Context::program, and converted DOM and dom.t to call ::getBinary.
2014-11-02 21:49:42 -05:00
Paul Beckingham
283a1aa8ef DOM
- Converted DOM and unit test from Parser to CLI.
2014-10-25 22:55:31 -04:00
Paul Beckingham
5987594596 RX
- Removed mystery define that has been commented out for three years.
- Added explanatory comments.
2014-09-14 22:15:36 -04:00
Paul Beckingham
db6cecd2f3 DOM
- When attributes are accessed via DOM references, the value extracted is now
  imbued with the attribute type.
2014-06-24 22:16:57 -04:00
Paul Beckingham
4bf3364bb7 DOM
- Preserves more original types.
2014-06-11 23:13:37 -04:00
Paul Beckingham
456b982ced DOM
- Updated DOM to use Variant ovjects, which carry a type which improves
  expression evaluation.
2014-06-11 21:53:00 -04:00
Paul Beckingham
f969bcbe59 DOM
- Extended DOM support:
    <id|uuid>.<date>.year
    <id|uuid>.<date>.month
    <id|uuid>.<date>.day
    <id|uuid>.<date>.week
    <id|uuid>.<date>.weekday
    <id|uuid>.<date>.julian
    <id|uuid>.<date>.hour
    <id|uuid>.<date>.minute
    <id|uuid>.<date>.second
    <id|uuid>.tags.<literal>
    <id|uuid>.annotations.<N>.entry
    <id|uuid>.annotations.<N>.entry.year
    <id|uuid>.annotations.<N>.entry.month
    <id|uuid>.annotations.<N>.entry.day
    <id|uuid>.annotations.<N>.entry.week
    <id|uuid>.annotations.<N>.entry.weekday
    <id|uuid>.annotations.<N>.entry.julian
    <id|uuid>.annotations.<N>.entry.hour
    <id|uuid>.annotations.<N>.entry.minute
    <id|uuid>.annotations.<N>.entry.second
    <id|uuid>.annotations.<N>.description
2014-06-06 19:43:20 -04:00
Paul Beckingham
61dab3eeb9 DOM
- Extended DOM.
2014-06-05 17:55:24 -04:00
Paul Beckingham
e6df1b38e2 DOM
- Standardized DOM interface to return success/failure, with the possibility
  of blank values. This matches the Eval::source callback interface‥
- Added more unit tests.
2014-06-04 18:57:36 -04:00
Paul Beckingham
f59109cfab DOM
- Converted A3::is_attribute to Parser::canonicalize.
2014-05-25 21:33:05 -04:00
Paul Beckingham
4661cdf0b2 Build
- When A3.h is removed from Command.h, other include files need to be
  added elsewhere.  That means the dependencies were wrong.  Hmm.
2014-05-25 21:25:49 -04:00
Paul Beckingham
79abddd03d Parser
- Renamed A3t to Parser.
2014-05-25 09:44:22 -04:00
Paul Beckingham
b7d7646c28 Performance
- Moved DOM stack variable instantiation to immediately before first use, which
  is after more common use cases.
2014-05-24 13:01:53 -04:00
Paul Beckingham
6f611d07f1 DOM
- Converted from A3::is_attribute to A3t::canonicalize.
2014-04-27 12:51:02 -07:00
Paul Beckingham
0dc73d759b DOM
- Migrated DOM off A3, onto A3t.  First live use of new parser.
2014-04-24 11:48:43 -04:00
Paul Beckingham
501194abfa TW-1300
- TW-1300 _get could use return codes (thanks to Scott Kostyshak).
2014-04-12 13:32:35 -04:00
Paul Beckingham
523dce8f32 Code Cleanup
- Standardized headers.
2014-02-01 14:33:37 -05:00
Paul Beckingham
8ed92ca498 Copyright
- Bumped copyright to 2014, ready for release.
2014-01-01 13:32:22 -05:00
Paul Beckingham
8baaa1031c Code Cleanup
- Removed obsolete comments and code.
2013-11-03 10:43:39 -05:00
Paul Beckingham
6555811ca5 Bug
- Fixed bug in DOM access where the attribute name was not being properly used
  for UUID-based lookup.
2013-08-26 08:43:02 -07:00
Paul Beckingham
166723e632 Feature
- New '_get' is a DOM accessor helper command.
2013-08-25 23:35:32 -07:00
Paul Beckingham
d03c4cda8a Build Error
- Many files were missing an explicit cmake.h include.  Some were not including
  it at all.  Now it's used almost everywhere.

(cherry picked from commit 82ae86979c497e6d1d0c6b2b5a55aa379ec82c98)
2013-06-02 13:57:36 -04:00
Paul Beckingham
5cfd7b0cc6 Portability
- Added support for GNU/Hurd and GNU/kFreeBSD systems (thanks to Jakub Wilk).
2013-04-13 14:49:59 -04:00
Paul Beckingham
773b55d374 Code Cleanup
- Removed L10N define.  It served its purpose.
2013-04-07 23:50:51 -04:00
Federico Hernandez
7db5377d3b Removed the incomplete support for the Lua extensions. 2013-04-02 21:52:13 +02:00
Paul Beckingham
1dccd29643 Copyright 2013
- Updated copyright notices.
2013-03-04 17:47:12 -05:00
Paul Beckingham
76468f3ddd Code Cleanup
- Removed unused, untested DOM cache.
2013-01-12 14:47:34 -05:00
Owen Clarke
16bef4a29e Bug
- Fixed platform detection of OpenBSD and NetBSD
2012-07-22 20:15:11 +10:00
Paul Beckingham
52dfa8da1e Documentation
- Updated more documentation regarding 'scheduled' dates.
- Added color.scheduled to the rule.precedence.color setting.
- Added 'ready' report to the main man page.
2012-05-13 18:04:48 -04:00
Paul Beckingham
6580095002 Copyright
- Year change.
2012-01-02 23:32:10 -05:00
Paul Beckingham
bc12ac1ee6 DOM
- Fixed DOM bug that was performing the lookup '1.due' by locating task
  1, then attempting a get of the '1.due' attribute, instead of just 'due'.
2011-10-16 23:33:06 -04:00
Federico Hernandez
8116c6a103 License
- moving task from GPL to MIT license
  top level src directory
2011-10-08 00:04:01 +02:00
Paul Beckingham
4f0276c062 DOM
- Implemented lookup for <id>.<attr> and <uuid>.<attr>.
2011-08-25 22:19:25 -04:00
Paul Beckingham
ffa5bc43fe E9
- Working towards arg date/duration eval.
2011-08-06 00:59:14 -04:00
Paul Beckingham
e61e08c2ca Annotation Bug
- Fixed DOM lookup of special-case attributes: id and urgency are
  not stored in the usual manner, and must be handled differently.
- Removed the responsibility of DOM to evaluate literals, because
  they are handled more effectively in A3::tokenize.
- Fixed old code that assumed ".id" instead of "id".
- Removed unnecessary diag call from annotate.t.
2011-07-31 12:11:36 -04:00
Paul Beckingham
0c08b29e48 Code Cleanup
- Eliminated obsolete Arguments.h, Arguments.cpp.
2011-07-26 00:25:57 -04:00
Paul Beckingham
f174caccbc DOM
- Implemented DOM::get_references to return a list of all the
  fixed-string DOM references supported.
2011-07-24 13:11:49 -04:00
Paul Beckingham
197524a5fc Expression
- Added configurable 'abbreviation.minimum' (default:2) setting to
  control how auto-completion works.
2011-07-20 10:51:13 -04:00
Paul Beckingham
a6fadaee67 Expressions
- DOM lookups now canonicalize attribute names, and no longer return
  the unmodified name if the lookup yields nothing.
2011-07-19 22:34:29 -04:00
Paul Beckingham
09d94a0712 Expressions
- Eliminated the . prefix for DOM references to the current task - it is
  unnatural to state ".due < today".
- Prioritized parsing dates ahead of integers, which were masking all
  dates.
2011-07-19 00:25:26 -04:00
Paul Beckingham
ab6e230f10 Expressions
- Implemented Nibbler::getWord.
- Re-implemented Nibbler::getDOM.
- Modified DOM addressed for context-based attributes from "due" to ".due",
  the help disambiguate DOM references in expressions.  There is now a
  consistency:

      <id>.due         Task-specific
          .due         Contextual
    <uuid>.due         General

- Implemented associated unit tests.
2011-07-18 23:08:05 -04:00
Paul Beckingham
137b00a14a Expressions
- Commented out troublesome "distance_from_command" code.
- Commented out DOM diagnostics, for now.
- Commented out TDB2 diagnostics, for now.
- Category "seq" arguments are now assigned type "exp".
- All type "exp" arguments are now tokenized.
2011-07-17 13:52:55 -04:00
Paul Beckingham
d66729adf3 Code Cleanup
- Assorted minor edits.
- Snapshot before E9 work.
2011-07-16 23:58:03 -04:00
Paul Beckingham
8827f9c978 TDB2
- Implemented CmdAdd.cpp and CmdLog.cpp using TDB2.
- Implemented simple append writes in TDB2.
- Modified CmdImport to accept and parse JSON.
- Added more const-ness in DOM, Expression and Task, to allow TDB2::get_tasks
  to return a const vector ref, which is a Very Good Thing.
- Corrected usage for the export command.
- Implemented Task::urgency as a call to Task::urgency_c, which is a const
  overload to allow urgency calculations (without caching) for const Task
  objects.
- Removed obolete code from TDB.
- Added lots of diagnostic output for TDB2 - it's annoying, but will be
  gone soon.
- Added mention in CmdHelp of the new <filter> and <modifications>
  syntax elements.  Needs more.
- Added Command::filter overload which uses TDB2.  Not in use yet.
2011-07-13 23:53:57 -04:00
Paul Beckingham
42becb9e41 Expressions/Arguments
- Converted the arguments parsed from a pair (token/modified-category)
  to a triple (token/type/category)
2011-07-02 11:47:39 -04:00
Owen Clarke
8fbce0288e Bug #794
- Corrected typo and missing ; for Solaris builds.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2011-06-27 22:40:45 -04:00
Paul Beckingham
58a04b9813 Bug - DOM lookup for 'id' was not supported
- Removed DOM caching, which appears to be a problem.
- Added 'id' and 'uuid' to DOM::get, which were missing, and therefore
  caused all filters with sequences to fail.
- Modified CmdInfo to load all tasks, until TDB2 is here.
2011-06-26 12:45:48 -04:00