Commit graph

4197 commits

Author SHA1 Message Date
Paul Beckingham
fcb039f801 Eval
- Labeled the (now differentiated) = and == operators.
2014-05-02 23:09:00 -04:00
Paul Beckingham
159f632eff Reports
- Removed redundant sorting for report defs.
2014-04-30 23:15:11 -04:00
Paul Beckingham
1e796bb276 A3t
- Implemented attmod expansion.
2014-04-27 13:15:29 -07:00
Paul Beckingham
9ee3e03922 Args
- Modified FILTER output to match debug output of tw.
2014-04-27 13:14:45 -07:00
Paul Beckingham
6f611d07f1 DOM
- Converted from A3::is_attribute to A3t::canonicalize.
2014-04-27 12:51:02 -07:00
Paul Beckingham
dea9d3f4ef Filter
- rc.debug=1 propagates to Eval::debug.
- Corrected comments.
2014-04-27 12:49:54 -07:00
Paul Beckingham
899e65714a Filter
- Added domSource, and a context Task so that Eval can access attributes.
  Doesn't work.
2014-04-27 11:06:02 -07:00
Paul Beckingham
e924468de6 CmdCount
- Converted from Command::filter to Filter::subset.
2014-04-27 10:17:34 -07:00
Paul Beckingham
e3a1789b3f Eval
- Added support for compiled expressions that are compiled once and
  evaluated multiple times in different contexts.
2014-04-27 10:07:11 -07:00
Paul Beckingham
fe2634b472 Filter
- New Filter object to control filtering, instead of commands/Command.cpp.
2014-04-27 10:05:05 -07:00
Paul Beckingham
3e7052b500 A3t
- Inserts implicit AND operators into filters that otherwise don't.
2014-04-26 17:10:01 -07:00
Paul Beckingham
3add6c3c7e A3t
- Stubbed attmod expansion, copied over from A3.
2014-04-26 15:24:18 -07:00
Paul Beckingham
4a392a53a2 A3t
- ::getFilterExpression expands +tag to tags _hastag_ tag,
  -tag to tags _notag_ tag.
2014-04-26 15:15:10 -07:00
Paul Beckingham
2770f0388c A3t
- Stubbed ::patchInfix to insert missing and implied logical operators.
2014-04-26 14:56:48 -07:00
Paul Beckingham
c1d02a7730 A3t
- ::getFilterExpression expands /pattern/ to description ~ pattern
2014-04-26 13:53:12 -07:00
Paul Beckingham
db0f147b72 A3t
- Reordered recognition of PSEUDO, UDA and ATTRIBUTE, which is a better
  precedence.
2014-04-26 13:48:16 -07:00
Paul Beckingham
17c7c9646a A3t
- Attributes in filter now properly expanded.
2014-04-26 13:34:05 -07:00
Paul Beckingham
942e2ddbc1 Code Cleanup
- Removed diagnostics from default command handling.
2014-04-26 13:32:32 -07:00
Paul Beckingham
49aadb7636 Command
- Added filter expression debug diagnostics.
2014-04-26 13:31:59 -07:00
Paul Beckingham
2e0b7c8052 CmdCustom
- After injecting custom filter, re-parse.
2014-04-26 13:26:54 -07:00
Paul Beckingham
d70df55c2d CmdBurndown
- Converted from A3 to A3t.
2014-04-26 12:03:28 -07:00
Paul Beckingham
1f8763829d CmdUndo
- Converted from A3 to A3t.
2014-04-26 11:58:35 -07:00
Paul Beckingham
f89f5469a4 Shell
- Converted from A3 to A3t.  Still doesn't work though.
2014-04-26 11:53:05 -07:00
Paul Beckingham
22c5bc28e1 CmdCalendar
- Converted from A3 to A3t.
2014-04-25 22:32:49 -07:00
Paul Beckingham
b5bd3e44c8 A3t
- Added ::clear method.
- Handles ::captureFirst with an empty tree.
2014-04-25 22:31:52 -07:00
Paul Beckingham
74cfc972fc Code Cleanup
- Converted use of isspace (which doesn't know Unicode) to Lexer::is_ws.
2014-04-24 17:06:05 -04:00
Paul Beckingham
763ded488c CmdExec
- Converted from A3 to A3t.
- Standardized on A3t::getWords, and unquoted args to run. This ought to
  fix a bug, but I'm on a plane and cannot look at the bug right now.
2014-04-24 13:21:22 -04:00
Paul Beckingham
c5fd2700ef A3t
- Modified ::findCommand to scan for already-found commands, so as not
  to find a second, if the method is called again.
- Fixed a bug where all likely commands were tagged, not just the first.
2014-04-24 13:05:39 -04:00
Paul Beckingham
6cd6910968 Unit Test
- Modified rc.t to use the lightweight _version command, instead of invoking
  all the default command machinery, for a simple rc creation.
2014-04-24 13:04:28 -04:00
Paul Beckingham
3e7c323086 A3
- Removed obsolete A3::extract_words method.
2014-04-24 12:33:09 -04:00
Paul Beckingham
42c078d0b7 CmdTimesheet
- Converted from A3 to A3t.
2014-04-24 12:30:56 -04:00
Paul Beckingham
91485d444e CmdSync
- Converted from A3 to A3t.
2014-04-24 12:30:08 -04:00
Paul Beckingham
51a735cfba CmdImport
- Converted from A3 to A3t.
2014-04-24 12:29:28 -04:00
Paul Beckingham
bd69f8ad6c CmdGet
- Converted from A3 to A3t.
2014-04-24 12:28:37 -04:00
Paul Beckingham
fd0eb4a683 CmdConfig
- Converted from A3 to A3t.
2014-04-24 12:27:03 -04:00
Paul Beckingham
7da9b6b2ed CmdColumns
- Converted from A3 to A3t.
2014-04-24 12:25:45 -04:00
Paul Beckingham
e0254b1b71 CmdCalendar
- Converted from A3::extract_words to A3t::getWords.
2014-04-24 12:24:28 -04:00
Paul Beckingham
7fdd014c2f CmdColor
- Converted from A3 to A3t.
2014-04-24 12:22:46 -04:00
Paul Beckingham
464626bcb4 CmdCalc
- Converted from A3 to A3t.
2014-04-24 12:21:27 -04:00
Paul Beckingham
9a9e07c3fc CmdShow
- Converted from A3 to A3t.
2014-04-24 12:20:20 -04:00
Paul Beckingham
1d298c9068 A3t
- Implemented A3t::getWords, to replace A3::extract_words.
2014-04-24 12:17:28 -04:00
Paul Beckingham
b01906cd62 Unit tests
- New command line parser is live for DOM access and DOM testing.
2014-04-24 12:00:50 -04: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
d99f40eaad Code Cleanup
- Removed obsolete text.cpp splitq funciton, which is superceded by
  Lexer::split.
2014-04-24 09:35:02 -04:00
Paul Beckingham
b0b176827e A3
- Switched from splitq to Lexer::split for improved arg separation.
2014-04-24 09:32:26 -04:00
Paul Beckingham
8a5d7bb569 Unit Tests
- Added more Lexer::split tests.
2014-04-24 09:08:19 -04:00
Paul Beckingham
26d9be8164 Lexer
- Reduced Lexer::word to simply distinguish quoted and unquoted strings, that
  may contain escaped characters.
2014-04-24 09:06:04 -04:00
Paul Beckingham
386bcea60e Text
- Removed splitq function and tests, migrated code over to the new
  Lexer::split.
2014-04-23 23:20:56 -04:00
Paul Beckingham
611812007a Lexer
- Implemented Lexer::word, which is just like ::token, but does not
  understand dates, durations or operators.
- Implemented Lexer::split, which uses Lexer::word.
- Added unit tests.
2014-04-23 23:19:41 -04:00
Paul Beckingham
d099a4edfd Text Handling
- Migrated the splitq implementation over to the Lexer. Now it handles all
  Unicode spaces.  Jsut need to obsolete the old version.
2014-04-23 17:34:07 -04:00