Commit graph

3707 commits

Author SHA1 Message Date
Paul Beckingham
bdf88d10a7 Tree::dump
- The dump method now composes a string, instead of writing to std::cout, which
  make integration easier.
2013-09-01 14:31:48 -04:00
Paul Beckingham
314d0e9d01 Parser Integration
- New parser integrated and functioning, but only shadows the A3 parser.  In
  debug mode, there is new output, but that's all that happenѕ.
2013-09-01 14:14:15 -04:00
Paul Beckingham
9ee17a5b51 Parser
- New parser lib is linked.
2013-09-01 14:13:10 -04:00
Paul Beckingham
c3bf3b79a4 A3t::initialize
- Migrated ctor functionality over to the new initialize method, for integration
  with Context.
2013-09-01 13:57:24 -04:00
Paul Beckingham
eb55c64f34 Symlink
- Added 'tw' as a symlink to the 'task' binary.  In the future, the binary will
  be named 'tw', and 'task' will be the symlink.  But not for a while.
- Install of 'tw' symlink still needed.
2013-09-01 13:53:24 -04:00
Paul Beckingham
560791be49 Parser
- New parser lib is linked in to the tw binary.
2013-09-01 13:45:55 -04:00
Paul Beckingham
eaeace7e98 Testing
- Added more attribute names for testing.
- Extended test script.
- Added list of remaining work.
2013-09-01 12:46:15 -04:00
Paul Beckingham
ee9552e23b Code Cleanup
- Renamed A3t::identity to A3t.entity.  Illiterate fool.
2013-09-01 12:26:23 -04:00
Paul Beckingham
b83e6d0dea A3t::findOperator
- Added support for operator identification.
- Extended test script.
2013-09-01 12:25:04 -04:00
Paul Beckingham
8fddf97c73 A3t::findUUIDList
- Added support for UUID lists.
- Extended test script.
2013-09-01 12:13:05 -04:00
Paul Beckingham
ed085bd09e A3t::findIdSequence
- Added support for ID ranges and lists.  Creates a min/max range instead of
  enumerating all IDs, which is an improvement.
- Extended test script.
2013-09-01 11:54:41 -04:00
Paul Beckingham
020a415e83 Enhancement
- Better support for quoted values in attributes.
2013-09-01 11:10:33 -04:00
Paul Beckingham
34db02515c A3t::findAttributeModifier
- Added support for attmods including :/= alternatives, which is an improvement.
2013-09-01 11:08:05 -04:00
Paul Beckingham
70d37ab7be Entities
- Added more entities for wider testing.
- Added attmod example to the test script.
2013-09-01 11:04:58 -04:00
Paul Beckingham
8f9a48c3ff Unit Tests
- Added Tree object unit tests.
2013-08-31 19:01:51 -04:00
Paul Beckingham
f293e74ae6 Tree Cleanup
- Switched from the addition of a LOCK tag to the removal of a ? tag.  The
  result is cleaner.
- Moved metadata into the ORIGINAL node.
2013-08-31 19:00:09 -04:00
Paul Beckingham
e4671dd518 Tree::unTag
- Added a method for removing a tag.
2013-08-31 18:44:36 -04:00
Paul Beckingham
04fb751678 A3t::findAttribute
- FindAttribute implemented, supporting pseudo- and uda- attribute recognition,
  which is an improvement.
- Fully parsed arguments are now locked against further parsing.
- Validation consists of looking for unlocked args.
- Added more entities for testing.
- Updated test script.
2013-08-31 18:04:02 -04:00
Paul Beckingham
5a29042d3b A3t::findTag
- Supports single-word tag add/remove, presence/absence, allowing any non-space
  character in the tag, which is an improvement.
2013-08-31 16:23:57 -04:00
Paul Beckingham
272450ff9b A3t::findSubstitution
- Added support for standard and escaped '/from/to/g' constructs, which is an
  additional feature.
2013-08-31 16:05:14 -04:00
Paul Beckingham
663c82837c Nibbler::backN
- Added a method to support multi-byte backstep through a string.
- Added unit tests.
2013-08-31 16:02:51 -04:00
Paul Beckingham
2281c5a6bf A3t::findPattern
- Now parses patterns and extracts the pattern, which may include escaped /
  characters, which is an improvement.
2013-08-31 12:24:30 -04:00
Paul Beckingham
96a06eafbf A3t::find*Override
- Locates and parses rc:<file>.
- Locates and parses rc.<name>=<value>.
- Adds a stubbed validate method to check for a sane tree.
2013-08-31 10:55:30 -04:00
Paul Beckingham
ac1497ff1a Code Cleanup
- Removed 9 useless methods by making members public.  Accessors are nice
  sometimes, but also an unnecessary layer.
2013-08-30 14:39:22 -07:00
Paul Beckingham
50d4b37519 A3t::findTerminator
- Locates and tags the terminator operator, suppressing all subsequent parsing.
  This is done early in the process, and every other step must observe the
  TERMINATOR tag.
2013-08-30 14:08:09 -07:00
Paul Beckingham
46cd57b4aa A3t::findBinary
- Locates it's own binary, and adds a 'basename' attribute.
2013-08-30 13:55:24 -07:00
Paul Beckingham
8429df3b5c Command Location
- Locateѕ, cnaonicalized and categorizes first command.
2013-08-30 13:42:43 -07:00
Paul Beckingham
1495710aca A3t::canonicalize
- Added entity canonicalization.
2013-08-30 13:12:24 -07:00
Paul Beckingham
f03d1af431 Tree::addBranch
- Now returns a pointer to the new node, for convenience.  Throws on error.
2013-08-30 12:35:22 -07:00
Paul Beckingham
e651f7f759 Arg Classifier
- Added test framework for the arg classifier (A3t).
2013-08-30 12:21:04 -07:00
Paul Beckingham
ef4d318276 Entities
- Added parser support for @entities, by merely allowing them to exist as
  terminals.
- Added sample entities.
- Extended grammar to test entities.
2013-08-30 12:15:30 -07:00
Paul Beckingham
60336d6f6a Documentation
- Added (preliminary) example of the resultant parse tree.
2013-08-30 11:57:13 -07:00
Paul Beckingham
66bcf26aa0 Entity Lists
- LRParser::addEntity accumulates categorized entities for the parser.
2013-08-30 11:41:20 -07:00
Paul Beckingham
888a77213a Testing
- Added test script and initial grammar file.
2013-08-30 11:25:04 -07:00
Paul Beckingham
6ebee13fa4 LRParser
- Added old (non-task) parsing code, as a basis for the new parser.
- Added Tree object for parse trees.
- Added top-level entry point for testing.
2013-08-30 11:24:15 -07:00
Paul Beckingham
7e5b43bb9d Function: visible
- Added helper function to render control characters visible.  This may be
  replaced by JSON::encode.
2013-08-30 10:51:43 -07:00
Ben Armstrong
ac811c6930 Initial support for context and focus (see Issue #218). 2013-08-21 17:34:19 -04:00
Paul Beckingham
235fb9f054 Command Line Grammar
- Updated documentation.
2013-07-22 20:31:09 -04:00
Paul Beckingham
2232ff7a21 Documentation
- Started the new parser documentation.
2013-04-16 01:23:32 -04:00
Paul Beckingham
1641bcf592 White Space
- White space cleanup, to avoid further git hook warnings.
2013-04-15 00:06:37 -04:00
Paul Beckingham
b6797b6242 Virtual Tags
- Started using virtual tags in the report definitions.
- Fixed compilation problem.
2013-04-14 23:52:13 -04:00
Paul Beckingham
09f577536a Feature #1250
- #1250 Support out-of-tree test runs (thanks to Jakub Wilk).
2013-04-13 15:02:50 -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
31b44de8b0 Bug #1247
- #1247 Tests now create a local dir, rather than use the insecure /tmp dir
  (thanks to Jakub Wilk).
2013-04-13 14:08:39 -04:00
Paul Beckingham
68a12908d2 Bug #1200
- #1200 Directory d_type==DT_UNKNOWN is now handled correctly (thanks to Jakub
  Wilk).
2013-04-13 13:37:16 -04:00
Paul Beckingham
0ea28ef8a3 Bug #1196
- #1196 Now builds on Hurd (thanks to Jakub Wilk).
2013-04-09 20:50:05 -04:00
Paul Beckingham
773b55d374 Code Cleanup
- Removed L10N define.  It served its purpose.
2013-04-07 23:50:51 -04:00
Paul Beckingham
af079bb5b0 Feature
- Began fr-FR localization.
2013-04-07 23:19:30 -04:00
Paul Beckingham
5862c7dc4f ChangeLog
- Combined the two change logs.
2013-04-07 18:14:31 -04:00
Paul Beckingham
8af0a7f3ba Merge branch 'master' into 2.3.0
Conflicts:
	AUTHORS
	CMakeLists.txt
	INSTALL
	NEWS
	cmake.h.in
	doc/man/task-faq.5.in
	package-config/osx/README
	scripts/utils/verify_l10n
	src/API.h
	src/Config.cpp
	src/Context.cpp
	src/DOM.cpp
	src/Hooks.cpp
	src/TransportShell.h
	src/commands/CmdDiagnostics.cpp
	src/commands/CmdShell.cpp
	src/commands/CmdVersion.cpp
	src/en-US.h
	src/shell/Readline.h
	src/wcwidth6.cpp
	test/CMakeLists.txt
	test/color.uda.t
	test/duration.t.cpp
	test/hook.on-launch.t
	test/template.t
	test/uuid.t
2013-04-07 17:56:59 -04:00