Compare commits

..

2646 Commits

Author SHA1 Message Date
Federico Hernandez
b9dc0813d9 Version number and release date for 2.4.2 2015-03-16 00:01:52 +01:00
Paul Beckingham
25c687e1ec Themes
- Updated default theme to match dark-16 or dark-256.
2015-03-15 12:16:40 -04:00
Paul Beckingham
6e98bbbd85 Themes
- Consistency tweaks across all themes.
2015-03-15 12:06:02 -04:00
Paul Beckingham
06c8976be5 Themes
- Changed color.error to white on red.
- Changed color.debug to blue.
- Made color.active more yellow.
- Added color.scheduled.
- Changed due, due.today and overdue to be more yellow.
- Changed color.summary.background to match theme.
- Changed color.undo to match theme.
2015-03-15 11:55:32 -04:00
Paul Beckingham
d13a5a3f47 Themes
- Changed color.error to white on red.
- Changed color.debug to blue.
- Added color.scheduled.
- Changed color.due, color.overdue to match theme.
- Added color.summary.background.
2015-03-15 11:46:00 -04:00
Paul Beckingham
b662afa1ff Themes
- Removed color.completed, color.deleted.
- Darkened color.alternate.
- Changed color.debug to blue.
- Changed color.error to white on red.
- Added fg to color.scheduled.
- Changed color.tag.next to match theme.
- Changed color.undo to match theme.
2015-03-15 11:37:57 -04:00
Paul Beckingham
bde83d3195 Themes
- Darkened color.alternate.
- Changed color.debug to blue.
- Changed color.error to white on red.
- Changed color.warning to match theme.
- Removed color.completed, color.deleted.
- Added fg to color.scheduled.
- Added color.summary.background.
- Darkened color.undo.before.
2015-03-15 11:32:51 -04:00
Paul Beckingham
0edb7e57f6 Themes
- Changed color.debug to blue.
- Change color.error to white on red.
- Added fg to burndown and history.
- Added color.summary.bckground.
- Changed undo colors to match theme.
2015-03-15 11:27:55 -04:00
Paul Beckingham
4569d2da24 Themes
- Changed color.debug to a common blue.
- Changed color.error to white on red.
- Added fg to color.calendar.due.
- Fixed typo for color.synd.added.
2015-03-15 11:21:13 -04:00
Paul Beckingham
6b00f08794 Themes
- Removed color.completed, color.deleted.
- Made color.scheduled more blue than green.
- Made summary light on dark blue.
2015-03-15 11:16:14 -04:00
Paul Beckingham
e83809c6aa Themes
- Lightened color.alternate.
- Changed color.debug to a common blue.
2015-03-15 11:12:26 -04:00
Paul Beckingham
39b736d23e Themes
- Changed color.debug to a readable color.
- Added fg to color.scheduled.
- Removed color.completed, color.deleted.
2015-03-15 11:08:34 -04:00
Paul Beckingham
3e90554f40 Themes
- Removed background color from debug.
- Removed color.completed, color.deleted.
- Darkened color.active, for contrast.
- Removed color.pri.none, which was the same as color.pri.M.
- Inverted color.calendar.holiday.
- Changed burndown and history to use red, yellow, green.

+color.history.delete=color0 on rgb550

 # Report: summary
 color.summary.bar=on rgb141
@@ -82,7 +82,7 @@ color.summary.background=on gray20
 # Command: calendar
 color.calendar.due=on rgb343
 color.calendar.due.today=on rgb353
-color.calendar.holiday=rgb420
+color.calendar.holiday=color0 on rgb530
 color.calendar.overdue=on rgb533
 color.calendar.today=rgb005
 color.calendar.weekend=on gray21
2015-03-15 11:02:27 -04:00
Paul Beckingham
4690b1a6cb Themes
- Removed background color from debug messages.
- Removed color.completed and color.deleted.
- Swapped the overdue magenta for red.
- Changed burndown and history to use red, yellow, green.
- Inverted the calendar holiday colors.
- Removed background from color.calendar.weeknumber.
2015-03-15 10:52:28 -04:00
Paul Beckingham
ce1a7b921c Themes
- Removed all the 16-color names, which do not apply to the solarized palette.
- Modified color.blocking and color.blocked so that both fg and bg are specified.
- Modified color.burndown.* and color.history.* to use red, yellow, green.
2015-03-15 10:40:11 -04:00
Paul Beckingham
7a1645bba3 Themes
- Fixed color.burndown.done and color.burndown.started, which were two different
  shades of red.
- Fixed color.history.done, which was dark gray and should be closer to green.
2015-03-15 10:13:08 -04:00
Paul Beckingham
9f1b3e0d56 Themes
- Added run.default to test the default theme.
2015-03-15 10:08:47 -04:00
Paul Beckingham
0af8b1dbab Themes
- Added 'task color legend' to the scripts to make it easier to spot broken
  themes.
- Removed the 'run' script, which is no longer used.
2015-03-15 09:09:54 -04:00
Tomas Babej
1465bcb918 Context: Do not apply context for the export command 2015-03-14 17:28:20 -04:00
Paul Beckingham
4eb70e68b7 TW-63
- TW-63 indicators for UDAs (thanks to Datvid Patrick).
- Note that this was implemented in 2.4.0 and tracked via the duplicate
  issue TW-161.
2015-03-14 11:57:22 -04:00
Renato Alves
cd216bd4fd simpletap - Add color to test state when running on tty 2015-03-12 20:49:50 +00:00
Renato Alves
ac4a5c6d62 simpletap - Include scenario for expected failures
* Expected failures are treated as "ok" followed by a report of what went wrong
2015-03-12 20:00:02 +00:00
Renato Alves
a67593decf Tests - merge bug.1110.t with filter.t and convert to python 2015-03-12 19:34:58 +00:00
Renato Alves
7be294267b Tests - rename bug.1065.t to custom.config.t and convert to python 2015-03-11 15:32:54 +00:00
Renato Alves
920cdcca10 Tests - convert bug.1063.t to python 2015-03-11 15:32:54 +00:00
Paul Beckingham
7cc410f58e Documentation
- Fixed obsolete wiki reference in the main man page (thanks to David Patrick).
2015-03-11 08:46:05 -04:00
Paul Beckingham
5d42c0f6b6 Themes
- Updated the README for this version, not the previous one.
2015-03-10 19:17:17 -04:00
Renato Alves
cff680d074 Tests - merge bug.1056.t with project.t and convert to python 2015-03-10 19:18:55 +00:00
Renato Alves
dda190703e Tests - merge basic.t with version.t and convert to python
* _version now outputs "2.4.2 (git-ref)" instead of only "git-ref" when building from git.
* Changelog updated accordingly.
2015-03-09 16:02:26 +00:00
Wilhelm Schuermann
281edcc38f Unit Tests
- The Sith must never be allowed to regain their power over us.
2015-03-08 09:04:39 -04:00
Paul Beckingham
87d00698db Unit Tests
- Successful hook tests now query the task to make sure processing continued.
  Could be better.
2015-03-07 16:18:44 -05:00
Paul Beckingham
19674ee339 Unit Tests
- Specifically set certain color rules to '' to override default theme.
2015-03-07 16:11:38 -05:00
Paul Beckingham
9f654a5c95 Unit Tests
- Test was wrong.
2015-03-07 16:06:18 -05:00
Paul Beckingham
87e9578666 Unit Tests
- Combined all the separate color rule tests into one script, and converted
  it to Python.
2015-03-07 13:29:59 -05:00
Paul Beckingham
e3ec52f6ca Unit Tests
- Cleaned up color.t.cpp.
2015-03-07 12:14:39 -05:00
Paul Beckingham
70c3d9845c Unіt Tests
- Merged width.t.cpp into utf8.t.cpp.
2015-03-07 11:59:37 -05:00
Paul Beckingham
9d1c4101c2 Unit Tests
- Renamed feature.exit.t to shell.t so that this test script is known to
  contain shell-interaction tests.
- Converted to Python.
2015-03-07 11:48:42 -05:00
Paul Beckingham
44ed974fa2 Unit Tests
- Fixed all the test descriptions.
2015-03-07 11:44:44 -05:00
Paul Beckingham
3cf7a701c8 Conversion
- Updated script for BSD.
2015-03-07 11:38:52 -05:00
Paul Beckingham
d390f99fc5 Unit Tests
- Simplified the msg.t.cpp tests.
2015-03-07 11:35:48 -05:00
Paul Beckingham
a2cae67644 Unit Tests
- Converted filter-prefix.t to Python.  Still needs a rename and possible merge
  with other tests.
2015-03-07 11:11:18 -05:00
Renato Alves
ebd6977480 Tests - merge bug.1044 into project.t and convert to python 2015-03-06 16:44:28 +00:00
Renato Alves
276050ce0b Tests - rename bug.1043.t to completion.t and convert to python 2015-03-06 15:19:04 +00:00
Renato Alves
197815a3a7 Tests - convert bug.1036.t to python 2015-03-06 15:10:07 +00:00
Paul Beckingham
5e8426f0cc Config
- The 'next' report was not sㄡrted by urgency, which is wrong (thanks
  to Adam Coddington).
2015-03-05 18:26:43 -05:00
Wilhelm Schuermann
138360b7bc Hooks
- Fixed on-modify hook regression which stopped hooks from modifying
  tasks.  On a related note, more hooks tests are definitely needed.
2015-03-05 07:21:30 -05:00
Renato Alves
7fa3c5ac84 Tests - convert bug.1031.t to python 2015-03-04 00:54:40 +00:00
Renato Alves
b5da4acab9 Tests - run_all script now exports TASKD_USE_PATH=1 2015-03-03 01:50:57 +00:00
Renato Alves
180c382de2 Tests - Finer control on which binaries to look for on PATH
* It is now possible to control whether taskw and/or taskd are looked up
on the PATH by setting TASK_USE_PATH/TASKD_USE_PATH to "1"
2015-03-03 01:46:53 +00:00
Renato Alves
23d4e2b3c9 Tests - rename bug.1023.t to feature.default.project.t and convert to python
Also add testcase from TW-1287 and TW-1279 which are part of the same feature
2015-03-03 01:25:45 +00:00
Paul Beckingham
96185cbd61 Merge branch '2.4.2' of ssh://git.tasktools.org/tm/task into 2.4.2 2015-03-02 16:17:09 -05:00
Paul Beckingham
7665d13d42 Duration
- Removed legacy duration value mapping, which causes much performance
  degradation.
2015-03-02 16:16:39 -05:00
Paul Beckingham
a40967a324 Unit Tests
- Fixed project.t errors.
2015-03-02 11:35:19 -05:00
Paul Beckingham
01feec568b Merge branch '2.4.2' of ssh://git.tasktools.org/tm/task into 2.4.2 2015-03-02 09:35:45 -05:00
Paul Beckingham
104aeb3905 TDB2
- Commented and reorganized for threading.
2015-03-02 09:33:57 -05:00
Tomas Babej
f0cc0151b7 TDB2: Explicitly mark updates done as addition to optimize performance
We are able to avoid loading the completed.data in certain scenarios.
2015-02-28 16:54:09 -05:00
Tomas Babej
48be6986c2 Make tasks affect statistics of super-projects 2015-02-28 09:34:10 -05:00
Tomas Babej
ffd6465661 CmdProjects: Enforce garbage collector 2015-02-28 09:33:36 -05:00
Paul Beckingham
58e62711f3 Virtual Tags
- The 'info' command now shows virtual tags.
2015-02-26 21:09:50 -05:00
Tomas Babej
3b9d88a87b completion: Add bash completion for contexts 2015-02-26 20:51:39 -05:00
Paul Beckingham
aa8cd54142 TW-1535
- TW-1535 move default listing-break from list to ls (thanks to David Patrick).
2015-02-24 22:57:56 -05:00
Paul Beckingham
651ac3f174 Tw-1551
- TW-1551 Unable to get a UDA value from DOM (thanks to Tomas Babej).
2015-02-24 22:35:18 -05:00
Paul Beckingham
ea78200ae3 TW-1549
- TW-1549 task annotate hangs with specific text pattern (thanks to Alexandre
          de Verteuil).
2015-02-24 22:04:05 -05:00
Paul Beckingham
ad89a90d12 TW-1550
- TW-1550 _contexts helper-command (thanks to David Patrick).
2015-02-24 20:43:28 -05:00
Tomas Babej
85d0e1789a CmdContext: Validate context's filter upon definition 2015-02-24 16:55:28 -05:00
Tomas Babej
e19c99ce1e CmdContext: Fix incorrect exception handling 2015-02-24 16:53:23 -05:00
Tomas Babej
0868ba757c CmdConfig: Do not leave empty line upon variable removal 2015-02-24 16:52:55 -05:00
Tomas Babej
bf5f246168 man: Fix copy-paste error in task.1 2015-02-24 16:51:28 -05:00
Tomas Babej
9748fa2ab1 tests: Fix asserted strings in context tests 2015-02-24 16:51:20 -05:00
Tomas Babej
1a0f479394 CmdContext: Add helpful hint to output when setting context 2015-02-24 16:51:05 -05:00
Wilhelm Schuermann
e2f35a1a06 Hooks
- onAdd, onExit, onLaunch and onModify hooks now output feedback messages
  as footnotes when hooks exit with status 0, as per hooks documentation.
2015-02-24 16:45:23 -05:00
Paul Beckingham
394acae790 CmdContext
- Trivіal code edits.
2015-02-23 20:07:53 -05:00
Tomas Babej
e8d385119a Update NEWS and ChangeLog files with the info about the context 2015-02-23 19:25:40 -05:00
Tomas Babej
070fdf60fa localization: Update other locale files 2015-02-23 19:22:06 -05:00
Tomas Babej
1278226c16 CmdContext: Localize the hardcoded strings 2015-02-23 19:22:01 -05:00
Tomas Babej
98410cff42 CmdShow: Add context related variables 2015-02-23 19:21:57 -05:00
Tomas Babej
ee23a099f2 CmdContext: Minor style and message changes 2015-02-23 19:21:50 -05:00
Tomas Babej
0ab1dc0c9c man: Update task and taskrc manpages with the information about context 2015-02-23 19:21:46 -05:00
Tomas Babej
c2a9bb65e6 tests: Add tests for the context feature 2015-02-23 19:20:00 -05:00
Tomas Babej
75cf742a55 tests: Add taskrc_content property 2015-02-23 19:19:55 -05:00
Tomas Babej
dc0502dd9f CLI: Apply context filter directly in getFilter method 2015-02-23 19:19:51 -05:00
Tomas Babej
3a77a5f291 CLI: Add addContextFilter method 2015-02-23 19:19:47 -05:00
Tomas Babej
1abda3900b CLI: Abstract adding new raw filter to a new helper method 2015-02-23 19:19:44 -05:00
Tomas Babej
09fe5be086 CmdContext: Add show subcommand 2015-02-23 19:19:41 -05:00
Tomas Babej
1a3550541b CmdContext: Add support for unsetting context 2015-02-23 19:19:38 -05:00
Tomas Babej
371ca27da0 CmdContext: Add support for setting context 2015-02-23 19:19:35 -05:00
Tomas Babej
5f3dd43893 CmdCompletionContext: Implement the context completion list 2015-02-23 19:19:32 -05:00
Tomas Babej
edb54a51b3 CmdContext: Add list subcommand 2015-02-23 19:19:29 -05:00
Tomas Babej
636f6bfd96 CmdContext: Add initial implementation of the delete subcommand 2015-02-23 19:19:24 -05:00
Tomas Babej
e91063426a CmdContext: Add initial implementation of the context define subcommand 2015-02-23 19:19:18 -05:00
Tomas Babej
a4d5ab07e9 CmdConfig: Abstract saving and removal of the configuration values into separate methods 2015-02-23 19:19:15 -05:00
Tomas Babej
49a7e46eaf CmdContext: Add initial plumbing 2015-02-23 19:19:08 -05:00
Wilhelm Schuermann
0891ed4b57 Util
- Closed dangling pipes in execute (), resolving problems when a hook script
  forks (thanks to Jens Erat).
2015-02-22 14:43:16 -05:00
Wilhelm Schuermann
af772f4c49 Util
- Closed dangling pipes in execute (), resolving problems when a hook script
  forks.
2015-02-22 14:03:30 -05:00
Wilhelm Schuermann
3484e44c7d CMake
- Added workaround for Cygwin build errors.
2015-02-22 13:53:53 -05:00
Wilhelm Schuermann
be855af8c4 CMake
- Custom compile flags and flags for c++11 ignored even less on OSX now...
2015-02-19 19:17:14 -08:00
Paul Beckingham
1ae4ea2ea3 I18N
- Removed unnecessary string termination and exceptions.
- Removed associated localized errors.
2015-02-19 08:51:36 -08:00
Renato Alves
d37937d970 Tests - add total number of tests to conversion script 2015-02-19 14:11:19 +00:00
Renato Alves
51e947064f Tests - merge args.[2-5].t with enpassant.t and convert to python 2015-02-19 13:38:27 +00:00
Renato Alves
606a7505d3 Tests - convert args.5.t to python 2015-02-19 13:02:46 +00:00
Renato Alves
846dd14a9f Tests - convert args.4.t to python 2015-02-19 12:56:19 +00:00
Renato Alves
d8f436cca9 Tests - convert args.3.t to python 2015-02-19 12:54:45 +00:00
Renato Alves
ac9c726782 Tests - convert args.2.t to python 2015-02-19 12:50:40 +00:00
Paul Beckingham
88d65b23c1 CMake Feedback Messages
- Reworded the '-std=c++11' feedback messages to user fewer '!' characters,
  and be more emphatic about upgrading the compiler.
2015-02-18 21:15:58 -08:00
Paul Beckingham
f2998aba74 TW-1547
- TW-1547 Recur column is always shown even if no recurring task is displayed
          (thanks to Renato Alves).
2015-02-18 20:53:56 -08:00
Paul Beckingham
d2b2631db7 TW-1546
- TW-1546 column type due.remaining breaks colors on due tasks (thanks to Renato
          Alves).
2015-02-18 20:18:31 -08:00
Renato Alves
4c491d8a0d Tests - convert args.1.t to python 2015-02-18 19:54:45 +00:00
Renato Alves
917a152a1e Tests - convert args.t to python 2015-02-18 19:32:58 +00:00
Renato Alves
289e45499a Tests - convert append.t to python 2015-02-18 16:26:59 +00:00
Renato Alves
2efb9594d9 Tests - convert annotate.t to python 2015-02-18 14:05:53 +00:00
Wilhelm Schuermann
0d096a5a42 CMake
- Fixed the C++11 config to actually check for availability of C++11 before trying to use it.
- Custom CXX flags no longer ignored on some platforms.
2015-02-17 16:16:02 -08:00
Paul Beckingham
cc1c063925 Merge branch '2.4.2' of ssh://git.tasktools.org/tm/task into 2.4.2 2015-02-17 18:46:41 -05:00
Paul Beckingham
dd31a15001 Portability
- Removed pthreads linkage.
2015-02-17 12:49:58 -05:00
Paul Beckingham
c11601e30e Cleanup
- Removed unused Nibbler::getHex.
2015-02-17 10:58:45 -05:00
Paul Beckingham
520067f522 Cleanup
- Eliminated text.cpp upperCase(), as it was not UTF8-safe, and is no longer
  used.
2015-02-17 10:44:31 -05:00
Paul Beckingham
693fe9b8fd ColPriority
- Made the acceptance of lower-case priorities explicitly either lower or upper
  case, but converted to upper case. This eliminates the dependency on text.cpp
  upperCase(), which is not UTF8-safe.
2015-02-17 10:40:51 -05:00
Renato Alves
fa249bfedd Tests - Convert alias.t to python 2015-02-17 13:46:00 +00:00
Paul Beckingham
952d743218 Cleanup
- Removed duplicate legacy value map entry.
- Added version number to legacy mapping.
- Added TODO for later clarification.
2015-02-17 08:39:53 -05:00
Paul Beckingham
91f6980d2f Documents
- Updated INSTALL instructions with dependencies.
2015-02-17 08:39:17 -05:00
Renato Alves
d211969236 Tests - clarify that USE_PATH alone is not enough. 2015-02-17 13:37:39 +00:00
Renato Alves
bd320b6729 Tests - Remove commented code 2015-02-17 12:24:13 +00:00
Renato Alves
3f004f547e Tests - Don't hang if spawning taskw fails 2015-02-17 12:24:13 +00:00
Paul Beckingham
3b192cddcf Merge branch '2.4.2' of ssh://git.tasktools.org/tm/task into 2.4.2 2015-02-16 19:33:14 -05:00
Paul Beckingham
ca6061a987 Documentation
- Updated for 2.4.2.
2015-02-16 19:32:02 -05:00
Federico Hernandez
2787ee960b Cleanup NEWS file 2015-02-17 00:22:07 +01:00
Federico Hernandez
c27ad4dc27 Bumped version number in ref page 2015-02-17 00:18:45 +01:00
Federico Hernandez
a36eb974ee Bumped version number to 2.4.2 2015-02-17 00:04:04 +01:00
Federico Hernandez
a55a7bf1a2 Added SHA1 of tagged release commit 2015-02-17 00:00:20 +01:00
Federico Hernandez
82e019a4a8 Version number and release date for 2.4.1 2015-02-16 23:38:16 +01:00
Renato Alves
9180aa6e33 Tests - minor formatting changes 2015-02-16 15:37:31 +00:00
Renato Alves
32d837fb25 Tests - Convert add.t to python
* Also added UUID_regex to basetest.utils, likely to be reused
2015-02-16 15:36:38 +00:00
Renato Alves
395b08385b Tests - Rename testname of abbreviation.t 2015-02-16 15:36:09 +00:00
Renato Alves
9cc9e19757 Tests - conversion script was failing due to binaries matching 2015-02-16 14:50:35 +00:00
Renato Alves
c07d74574d Tests - Silence "vramsteg not found" message 2015-02-16 14:36:47 +00:00
Renato Alves
73401664b6 Tests - Convert abbreviation.t to Python and add one more testcase 2015-02-16 14:30:11 +00:00
Renato Alves
d052b8752d Tests - remove unused imports 2015-02-16 14:09:04 +00:00
Renato Alves
68d9e3bb5e Tests - List perl tests to migrate with ./conversion -v 2015-02-16 03:58:49 +00:00
Renato Alves
86837022d3 Tests - conversion script was giving false positives for python 2015-02-16 03:47:12 +00:00
Renato Alves
e831f85823 Tests - Migrate bug.1006.t to python 2015-02-16 03:47:12 +00:00
Renato Alves
4b839f2c83 Tests - Significant speed improvement at cost of CPU cycles 2015-02-16 01:59:47 +00:00
Renato Alves
1e1bd32c42 Tests - Rework how taskw is launched from python
* Should avoid some odd race conditions
2015-02-16 01:59:32 +00:00
Renato Alves
880ab5d665 Tests - Correct use of non-existent exception 2015-02-15 19:43:09 +00:00
Renato Alves
ef583dedea Tests - Update template.t to include assertValidJSONOutput 2015-02-15 18:13:49 +00:00
Renato Alves
1bd26fe9ab Tests - Default to having Python objects as "hook log" 2015-02-15 18:10:36 +00:00
Renato Alves
80c01f3ffb Tests - Remove assertTriggered, redundant with assertTriggeredCount 2015-02-15 18:10:36 +00:00
Renato Alves
7cd42b5d2f Tests - Less verbose hooks.on-*.t tests 2015-02-15 18:10:36 +00:00
Renato Alves
1b218d68f5 Tests - Invalid JSON replies in hooks no longer fail the test framework 2015-02-15 18:10:36 +00:00
Paul Beckingham
e6031183dd Documentation
- Added 'taskd.trust' setting warning in the NEWS file.
2015-02-15 12:10:08 -05:00
Paul Beckingham
f9bcb8cfc8 Unit Tests
- Added unit tests for TW-1542.
2015-02-15 11:45:31 -05:00
Paul Beckingham
2ef0214248 TW-1542
- TW-1542 Large numeric UDA values get rendered in scientific notation on export
          (thanks to Ralph Bean).
2015-02-15 11:24:24 -05:00
Paul Beckingham
0a62061ca8 L10N
- Localized the new strings in Hooks.cpp.
2015-02-15 02:03:24 -05:00
Paul Beckingham
5d96547c07 Documentation
- Prepared more docs for the 2.4.1 release.
2015-02-14 21:12:16 -05:00
Paul Beckingham
eb3afa1fdc Documentation
- Updated ChangeLog.
2015-02-14 20:44:56 -05:00
Paul Beckingham
885ff46066 Unit Tests
- Renamed tw-1452.t to take it out of play, because the bug is not going to be
  fixed for 2.4.1.
2015-02-14 19:10:57 -05:00
Paul Beckingham
5a060802e7 Hooks
- It is now an error for a failing hook script to fail to also generate some
  feedback.
- Updated NEWS file to mention stricter hook script controls.
2015-02-14 18:16:32 -05:00
Paul Beckingham
acce2d5a68 Unit Tests
- Corrected expected output from on-modify-misbehave6 test hook script.
2015-02-14 17:55:02 -05:00
Paul Beckingham
adac566665 Unit Tests
- Corrected expected output from the on-modify-misbehave4 test hook script.
- Moved JSON syntax error details to debug output.
2015-02-14 17:50:28 -05:00
Paul Beckingham
f454eecafb Unit Tests
- Corrected expected output.
- Added 'complete' task to the on-modify-misbehave4 test hook script.
2015-02-14 17:46:24 -05:00
Paul Beckingham
f83702076b Unit Tests
- Updated expected error for on-modify-misbehave3 test hook script.
2015-02-14 17:44:21 -05:00
Paul Beckingham
83519a44c6 Unit Tests
- Added feedback to the on-modify-misbehave2 test hook script.
2015-02-14 17:42:03 -05:00
Paul Beckingham
a2e980c6b8 Hooks
- Deferred JSON checking until after we know whether the hooks voluntarily
  failed the event.
2015-02-14 17:33:48 -05:00
Paul Beckingham
e00704a375 Hooks
- Cleaned up logic for crude JSON detection.
2015-02-14 17:31:37 -05:00
Paul Beckingham
8fb3161a02 Hooks
- Modified expected output from an on-modify hooks script, because it's 1 line
  of JSON, not 2.
2015-02-14 17:19:44 -05:00
Tomas Babej
fa528beb58 Tests: Add test for TW-1510 2015-02-14 17:10:22 -05:00
Paul Beckingham
c5a2b7f759 Unit Tests
- Fixed exected error for on-add-misbehave5. This highlights a potential
  error in the test suite with the one failing test.
2015-02-14 17:03:43 -05:00
Paul Beckingham
4213afd408 Unit Tests
- Fixed on-add-misbehave6 error.
2015-02-14 16:52:47 -05:00
Paul Beckingham
8ad0c1172e Unit Tests
- on-add now detects JSON emitted by hooks for different tasks.
2015-02-14 16:46:52 -05:00
Paul Beckingham
f887173bf7 TW-1510
- TW-1510 Task can save empty value in the data backlog (thanks to Tomas Babej).
2015-02-14 16:33:45 -05:00
Tomas Babej
328b7ec260 Task: Do not export empty attributes in composeJSON 2015-02-14 16:32:41 -05:00
Paul Beckingham
ab41e005c9 Unit Tests
- Added on-exit test for unexpected JSON output.
2015-02-14 16:19:36 -05:00
Paul Beckingham
bd785ffad5 Hooks
- Added a new on-launch-misbehave2 script that emits unexpected JSON.
2015-02-14 16:14:20 -05:00
Paul Beckingham
3cce6c23f5 Hooks
- Hooks now verify the expected number of JSON lines emitted by hook scripts.
2015-02-14 15:50:51 -05:00
Paul Beckingham
ec919a8677 TW-1534
- TW-1534 Urgency coefficient for user project disables 'info' output(thanks to
          Martin).
- Reimplemented 'information' command urgency details as a ViewText.
- Fixed math bug in rightJustify.
2015-02-14 12:50:10 -05:00
Paul Beckingham
5911286218 Documentation
- Relocated Tomas to a better seat.
2015-02-14 11:52:07 -05:00
Paul Beckingham
9e49325d6e TW-1531
- TW-1531 'task export' should handle recurrence (thanks to Tomas Babej).
2015-02-13 20:35:04 -05:00
Tomas Babej
c483c8dda9 CmdExport: Generate recurrent tasks 2015-02-13 20:31:46 -05:00
Paul Beckingham
2d2579d801 Unit Tests
- Fixed bug in test where the rc path name contains a number, which is found by
  the test in place of an unexpected week number.
2015-02-08 14:04:22 -05:00
Paul Beckingham
4f6c51e7ae Unit Tests
- Updated README with suggested work.
- Removed obsolete TAP.py.
- Added 'conversion' script to check on the Perl -> Python progress.
2015-02-08 13:51:27 -05:00
Paul Beckingham
cd6808ab15 Unit Tests
- Removed color.duetoday.t, because of two reasons. First, the test is flawed,
  and second the test is duplicated in tw-285.t.
2015-02-08 13:22:05 -05:00
Paul Beckingham
8b648bc690 Unit Tests
- Reduced hh from 99:00:00 to 95:00:00, because with the +01:00 it becomes
  100:00:00, and '100' exceeds Nibbler::getDigit2.
2015-02-08 13:18:23 -05:00
Paul Beckingham
9a0a6188b1 Documentation
- Added email address to which patches should be sent (thanks to mathstuf).
2015-02-07 18:50:03 -05:00
Paul Beckingham
b79453afa7 TW-1532
- TW-1532 Hooks does not execute any script on Cygwin (thanks to Taisuke
          Hachimura).
2015-02-07 14:45:06 -05:00
Paul Beckingham
60dddffda3 TW-1524
- TW-1524 Build Broken (thanks to Jack).
2015-02-07 14:39:25 -05:00
Paul Beckingham
e8dc5a16a1 Portability
- Clarified the requirements regarding C++11 support, libuuid and gnutls.
2015-02-07 14:37:51 -05:00
Paul Beckingham
528e72062b Hooks
- Fixed the ::execute function used by Hooks and CmdCalendar to run commands,
  by following the convention:

    "The first argument, by convention, should point to the file name associated
     with the file being executed."
     (man execvp)
2015-02-07 14:08:58 -05:00
Paul Beckingham
876820ee1a Unit Tests
- Restored bash as the interpreter for wrapper.sh.
2015-02-07 10:39:16 -05:00
Paul Beckingham
8e730f2da3 Hooks
- Updated examples to not rely on bash being in /bin.
2015-02-07 10:25:50 -05:00
Paul Beckingham
8b28c36485 Unit Tests
- Modified the test_hooks/* scripts to use /bin/sh, which is portable. When
  using /bin/bash, Cygwin and FreeBSD silently fail.
2015-02-07 10:22:07 -05:00
Paul Beckingham
04be198281 Unit Tests
- Added on-modify hook tests.
2015-02-07 08:58:47 -05:00
Paul Beckingham
1b69ac6ad2 Unit Tests
- The on-modify-misbehave1 test is not useful.
2015-02-07 08:57:27 -05:00
Paul Beckingham
b1081bd510 Unit Tests
- Added hook tests for on-add.
2015-02-07 08:41:02 -05:00
Paul Beckingham
a72322b9db Unit Test
- Added tests for on-exit hooks.
2015-02-02 12:37:39 -05:00
Paul Beckingham
82e6574d30 Unit Tests
- Added tests for on-launch hooks.
2015-02-01 18:37:18 -05:00
Paul Beckingham
1f14454be7 Merge branch '2.4.1' of ssh://git.tasktools.org/tm/task into 2.4.1
Conflicts:
	test/template.t
2015-02-01 17:01:58 -05:00
Paul Beckingham
384ca82292 Unit Tests
- Hooks snapshot prior to pull.
2015-02-01 17:00:39 -05:00
Renato Alves
066143d939 Unittest - template.t use docstring for proper test description on execution 2015-02-01 20:39:38 +00:00
Renato Alves
e845a25ea6 Unittest - Replace the timestamp function on wrapper.sh
* %N is not supported by /bin/date on BSD systems
2015-02-01 20:35:11 +00:00
Renato Alves
75a2b11638 Unittest - Update template.t to use Hook.assert* functions 2015-02-01 19:33:08 +00:00
Renato Alves
6a3edc88a1 Unittest - properly implement Hook.assert* functions 2015-02-01 19:33:08 +00:00
Renato Alves
bb3555f217 Unittest - Bad exception formatting 2015-02-01 19:33:08 +00:00
Paul Beckingham
5de80eedeb Unit Tests
- Typos in template.t.
2015-02-01 12:36:54 -05:00
Paul Beckingham
10c1b5f902 Merge branch '2.4.1' of ssh://git.tasktools.org/tm/task into 2.4.1 2015-02-01 11:53:11 -05:00
Renato Alves
049ed04471 Unittest - Document the magic line in wrapper.sh 2015-02-01 06:23:34 +00:00
Paul Beckingham
3ff42af9c7 Unit Tests
- Added sample hooks that behave/misbehave in various ways.
2015-01-31 18:34:25 -05:00
Paul Beckingham
1cfdfbae52 Hooks
- Removed the ability for hooks to add tasks, or modify tasks that are outside
  the context of the current event. This makes hooks a local mechanism that
  operates only on local changes. Modifications/additions coming in via sync
  command are not processed by hooks.
2015-01-31 17:47:58 -05:00
Paul Beckingham
61291e4d1e C++
- ColumnDate::~ColumnDate should be virtual.
2015-01-31 13:23:45 -05:00
Tomas Babej
77ec56dcd0 Tests: Add test case for disabled recurrence mechanism 2015-01-25 16:06:26 -05:00
Paul Beckingham
d0f74c4a80 Unit Tests
- Fixed a broken test that returns different values are different times of the
  year/month.
- Removed silly tests that were looking at color values, which is a bad idea.
2015-01-25 16:00:43 -05:00
Paul Beckingham
4bdee56fa7 Configuration
- New 'recurrence' configuration setting can disable recurring task generation.
2015-01-25 15:41:31 -05:00
Paul Beckingham
8323407242 TW-1504
- TW-1504 On-modify hook does not accept correct JSON format (thanks to Tomas
          Babej).
2015-01-25 14:51:07 -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
4865269630 Hooks
- Modified loop so it no longer walks the whole list unnecessarily.
- Minor style tweaks.
2015-01-25 10:33:03 -05:00
Tomas Babej
8683574b18 Hooks: Make sure that original task is properly detected
On modify event uses UUID of the original task being modified
to determine which line should be interpreted as modification
of the task.

This was achieved by searching by a substring in a specific JSON
format, which, consenquently, failed on JSON strings of other (valid)
formats.
2015-01-25 10:28:04 -05:00
Paul Beckingham
5e90510530 Merge branch '2.4.1' of ssh://git.tasktools.org/tm/task into 2.4.1 2015-01-24 10:12:43 -05:00
Tomas Babej
a8bab90c34 Documentation
- Update the man page with the correct description of behaviour of
  rc.confirmation and rc.bulk variables
2015-01-24 10:12:32 -05:00
Renato Alves
87c2a9b5a5 Unittest - README clarifications
* Add one line command to run all tests
* Clarify that only tests ending with .t and execute bit set are run
2015-01-21 12:13:19 +00:00
Paul Beckingham
cba5948a1d Unit Tests
- Took the tw-1481.t test offline, because the bug will not be fixed in the
  next release.
2015-01-20 22:06:46 -05:00
Paul Beckingham
f4a6ec6f97 Documentation
- Updated README.
2015-01-20 22:05:11 -05:00
Paul Beckingham
a3490966c0 Documentation
- Added README to explain the test suite.
2015-01-20 21:52:17 -05:00
Paul Beckingham
855537b975 TW-1517
- TW-1517 Hook performance should be measured individually for each hook (thanks
          to Tomas Babej).
2015-01-20 20:33:31 -05:00
Paul Beckingham
473019c1f0 TW-1519
- TW-1519 Testing suite forces taskd.trust="ignore hostname" (thanks to Renato
          Alves).
2015-01-20 20:18:13 -05:00
Renato Alves
d1698eab2d Fix usage of taskd.trust=strict on the test suite
* This reverts commit 67cb30fdce.
* Code also now tests if taskd is listening on IPv4 or IPv6 interfaces.
2015-01-20 11:56:53 +00:00
Paul Beckingham
73b7b21b81 Certs
- Replaced all the certs for testing.  This may not help, but it does mean
  there were recreated using the current PKI scripts, and are all consistent.
2015-01-19 18:25:21 -05:00
Paul Beckingham
44f2c0c98c Unit Tests
- Added JSON test which includes spaces.
2015-01-19 18:09:54 -05:00
Tomas Babej
654159b2fd Hooks: Add per-hook time measurement 2015-01-19 16:07:34 -05:00
Renato Alves
67cb30fdce Unittest - default to taskd.trust="ignore hostname"
* The currently available taskd testing certificates fail if
taskd.trust is set to strict. See also: TW-1519
2015-01-19 15:07:06 +00:00
Renato Alves
7d75547f44 Ignore taskd in src folder (for running taskd tests) 2015-01-19 15:00:02 +00:00
Renato Alves
d68fa7ea8a Unittest - Template updated to include hook test examples 2015-01-19 14:58:06 +00:00
Renato Alves
db78851b40 Unittest - Hook testing, fixed a few mistakes 2015-01-19 14:54:11 +00:00
Tomas Babej
6fdf0738a7 Hooks: Improve debugging messages for on-exit hooks 2015-01-18 13:27:32 -05:00
Paul Beckingham
41003fc78b Code Cleanup
- Removed whitespace at EOL.
2015-01-17 19:05:09 -05:00
Wilhelm Schuermann
d2928dc4e4 TW-1516 Hook input not ended with EOF
- Made execute() send EOF when all input is written.
- Minor code cleanup.
2015-01-17 19:04:31 -05:00
Wilhelm Schuermann
61deb7ce7e CMake
- Fix CMAKE_CXX_FLAGS change to preserve previous flags.
2015-01-17 18:58:38 -05:00
Renato Alves
0311ea6689 GnuTLS optionally compiled - defaults to yes
* Allow optionally disabling GnuTLS via config var (USE_GNUTLS)
2015-01-14 13:17:25 +00:00
Paul Beckingham
0b0ddbfbc4 TW-1491
- TW-1491 Regression in deleting due dates (thanks to Jens Erat).
2015-01-12 15:52:15 -05:00
Jens Erat
cd31335742 TW-1491 - TW-1491 Regression in deleting due dates 2015-01-12 15:42:58 -05:00
Tomas Babej
5a3037f257 Tests: Fix error in export.t and add test for urgency 2015-01-12 15:38:44 -05:00
Paul Beckingham
a22d173b9b TW-1487
- TW-1487 Task export exports some numeric attributes as strings (thanks to
          Tomas Babej).
2015-01-11 09:07:04 -05:00
Paul Beckingham
134d201cb0 TW-1457
- TW-1457 Non-existant attributes are not properly handled (thanks to Tomas
          Babej).
2015-01-10 15:53:55 -05:00
Paul Beckingham
547d9edb55 TW-1484
- TW-1484 The 'history' and 'ghistory' reports do not obey rc.color.label.
2015-01-10 15:49:42 -05:00
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
588009d679 TW-1501
- TW-1501 Calc can't handle multi-digit numbers in some expressions (thanks to
          Jeremy John Reeder).
2015-01-08 20:40:29 -05:00
Paul Beckingham
adf9f25289 Unit Tests
- Removed failing tests, as there is no plan to address all these now.
2015-01-07 23:43:11 -05:00
Paul Beckingham
ea0397f542 TW-1495
- TW-1495 German translation for taskwarrior (thanks to Jens Erat).
2015-01-07 23:23:25 -05:00
Paul Beckingham
411fab3a27 Hooks
- Added debug output on startup, if a hook script is found and does not have
  a valid name.
2015-01-07 22:54:55 -05:00
Paul Beckingham
da6a57b203 Hooks
- The 'diag' command should indicate misnamed hook scripts (thanks to Tomas
  Babej).
2015-01-07 18:43:14 -05:00
Tomas Babej
235e4ef047 Tests: Add negative tests for parsing time 2015-01-07 17:14:49 -05:00
Tomas Babej
1dbb0a57a8 Tests: Add negative tests for parsing dates 2015-01-06 19:14:04 -05:00
Paul Beckingham
5a7117630e Unit Tests
- Typo.
2015-01-05 20:04:26 -05:00
Paul Beckingham
e9f9f6a86e Unit Tests
- Added copyright and removed whitespace at EOL.
2015-01-05 19:52:17 -05:00
Tomas Babej
8ea1563944 Tests: Add basic coverage for the types of attributes in the export command 2015-01-05 19:48:52 -05:00
Wilhelm Schuermann
e522c1980a TW-1424
- Fixed tw-1424.t (mostly).
2015-01-05 06:53:51 -05:00
Paul Beckingham
845fe047cc C++11
- Converted one source file to use an actual C++11 feature. If no one notices
  we can move forward and start using supported featues. If it's a problem,
  this commit gets rolled back.

  GCC 4.6 (released March 2011), and Clang 3.0 (releasd November 2011) both
  support N2930 (range-based for) which is the feature being tried here.
2015-01-04 22:01:22 -05:00
Paul Beckingham
5932d9f90b Portability
- More STDOUT_FILENO conversions.
2015-01-04 22:00:08 -05:00
Paul Beckingham
a8ff7655ef Portability
- Properly detects Cygwin.  version 2.
2015-01-04 21:37:47 -05:00
Paul Beckingham
79cc9d8ed9 Portability
- Properly detects Cygwin.
2015-01-04 21:29:46 -05:00
Paul Beckingham
b83dc8a29e Portability
- Added '-std=gnu++0x' for Cygwin.
2015-01-04 20:39:42 -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
9bd9a3b285 C++
- Enabling C++11, as a test.  Let's see if anything blows up.
2015-01-04 20:11:32 -05:00
Paul Beckingham
b882cd151e Build
- Added code to set poicy CMP0037 to "OLD", which eliminates the warnings about
  the 'test' target.
2015-01-04 18:59:09 -05:00
Paul Beckingham
a3b0d5c6a6 Unit Tests
- Added copyright to tests that were missing it.
2015-01-04 10:55:01 -05:00
Paul Beckingham
d1664b3f55 Unit Tests
- Re-enabled bug.982.t and fixed the regex so it is right. This test was created
  for a parsing bug which is now fixed.
2015-01-04 10:40:21 -05:00
Paul Beckingham
1cac14f3f8 Unit Tests
- This disabled test is verifying 'Total Active Time' functionality that has
  itself been removed.
2015-01-04 10:35:57 -05:00
Paul Beckingham
507e2d5807 Unit Tests
- Added copyright, fixed test name.
2015-01-04 10:30:10 -05:00
Tomas Babej
c664d62c2f Tests: Add coverage for TW-1452 2015-01-04 10:23:38 -05:00
Paul Beckingham
f32c4d1f73 TW-1492
- TW-1492 compiling v2.4.0 using musl(libc) (thanks to V.Krishn).
2015-01-04 10:14:15 -05:00
Paul Beckingham
9bf7dfda4f AUTHORS
- Upgrade Tomas to the dev section.
2015-01-03 20:25:30 -05:00
Tomas Babej
2a782b8f01 Tests: Add coverage for TW-1481 2015-01-03 20:21:46 -05:00
Paul Beckingham
3c07510a43 Unit Tests
- Added copyright to template.
2015-01-03 20:20:30 -05:00
Paul Beckingham
07eff0f3c1 Bug
- Changed assorted reports so they do not use '.age' format for dates that are
  in the future, because those are never shown with this format.
2015-01-03 17:56:20 -05:00
Paul Beckingham
dad0ac0c27 TW-1486
- TW-1486 task wait shows completed tasks which has a wait attribute (thanks to
          Sujeevan Vijayakumaran).
2015-01-03 09:31:54 -05:00
Paul Beckingham
2c986d6e6b Unit Tests
- Fixed typo in comment.
2015-01-03 09:24:07 -05:00
Paul Beckingham
1e8f83cab9 Themes
- Removed 'bold' from a 256-color definition.
2015-01-02 08:55:18 -05:00
Paul Beckingham
15f00452c2 Themes
- Increased contrast for 'color.blocking'.
2015-01-02 08:54:50 -05:00
Paul Beckingham
6a3b13dbfc Documentation
- Initial project version doc updates.
2015-01-02 00:01:32 -05:00
Federico Hernandez
8180b94b1b Bumped version number in task reference pdf 2015-01-02 01:05:03 +01:00
Federico Hernandez
6aafa9f04e Bumped version number to 2.4.1 2015-01-02 00:44:49 +01:00
Federico Hernandez
fe07f62214 Added SHA1 of tagged release commit 2015-01-02 00:39:40 +01:00
Federico Hernandez
670102842c Version number and release date for 2.4.0 2015-01-02 00:11:32 +01:00
Federico Hernandez
c9e09aa4b5 Bumped version and date in task reference page 2015-01-01 23:53:08 +01:00
Paul Beckingham
09252c617f Unit Tests
- Commented naive tests that fail on 2015-01-01.
2015-01-01 17:35:05 -05:00
Paul Beckingham
52479f560f Unit tests
- Commented tests that are performing naive date math, which breaks on
  2015-01-01, among other dates.
2015-01-01 17:32:31 -05:00
Paul Beckingham
d6bd5630fa Config
- Updated the default, built-in themes.
2015-01-01 17:27:05 -05:00
Paul Beckingham
7111e9d5f5 Config
- The list of themes in the default .taskrc file is now complete and correct.
2015-01-01 17:22:26 -05:00
Paul Beckingham
5425ac66cb Themes
- Added more blue to dark-gray-blue-256.
2015-01-01 17:16:39 -05:00
Paul Beckingham
718204af0d Themes
- Restored some blue to the dark-gray-blue theme.
2015-01-01 17:09:24 -05:00
Paul Beckingham
c5fffe2fe6 Themes
- Removed green/yellow from the dark-gray theme.
2015-01-01 17:03:56 -05:00
Paul Beckingham
95866b7e87 Themes
- Removed the partially complete experimental themes.
2015-01-01 16:36:17 -05:00
Paul Beckingham
c8e013ca31 Theme Samples
- Updated scripts for generating theme swatches.
2015-01-01 14:45:08 -05:00
Paul Beckingham
34c4b61e3d Themes
- Removed 'inverse' from rc.color.label, for readability.
2015-01-01 14:31:15 -05:00
Paul Beckingham
7bcec61c53 Merge branch '2.4.0' of ssh://git.tasktools.org/tm/task into 2.4.0
Conflicts:
	doc/rc/dark-16.theme
	doc/rc/dark-256.theme
	doc/rc/dark-blue-256.theme
	doc/rc/dark-gray-256.theme
	doc/rc/dark-gray-blue-256.theme
	doc/rc/dark-green-256.theme
	doc/rc/dark-red-256.theme
	doc/rc/light-16.theme
	doc/rc/light-256.theme
	doc/rc/solarized-dark-256.theme
	doc/rc/solarized-light-256.theme
2015-01-01 13:27:10 -05:00
Paul Beckingham
288291af72 Themes
- All themes have the same settings, in the same order.
- Reduced noise in the file header.
2015-01-01 13:22:46 -05:00
Paul Beckingham
b7ad091d00 Updated copyright to 2015 2015-01-01 00:00:41 -05:00
Paul Beckingham
38daf415ff TW-1482
- TW-1482 Priority values may be 'H', 'M' or 'L', not ''.
2014-12-30 23:24:54 -05:00
Paul Beckingham
8afdb3d8d5 TW-1477
- TW-1477 Incompatibility with recurring tasks created with 2.3.0 (thanks to
          David Costa).
2014-12-28 19:23:08 -05:00
Paul Beckingham
d8691bc993 Text
- More polymorphic formatting.
2014-12-28 13:05:32 -05:00
Paul Beckingham
8de2a1030e Eval
- Reduced the verbosity of Eval under rc.debug.parser=3, improving readability.
- Updated unit tests regarding modified debug output.
2014-12-28 12:48:16 -05:00
Paul Beckingham
fe2f5de230 Unit Tests
- Added _neg_ unit tests for integer, real and duration.
2014-12-28 10:04:20 -05:00
Paul Beckingham
0f780bcfae Unit Tests
- Removed Variant definitions of unused EPSILON values.
2014-12-28 09:27:31 -05:00
Paul Beckingham
c0424cedeb Eval
- The _neg_ operator was a copy/paste of the ! operator, and needed to be
  numeric, not boolean.
2014-12-28 09:18:59 -05:00
Paul Beckingham
78f1f29db1 TW-292
- TW-292 Override to suppress "this is reccurring task" message (thanks to Max
         Muller).
2014-12-27 20:13:55 -05:00
Paul Beckingham
5c0ee12c60 Tw-210
- TW-210 project search options.
2014-12-27 18:05:42 -05:00
Paul Beckingham
52958ad2cd Tw-174
- TW-174 Provide an easy way to match non-leaf-node projects only (thanks to Ben
         Armstrong).
2014-12-27 15:37:33 -05:00
Paul Beckingham
3f8095166e TW-161
- TW-161 UDA indicator (thanks to Jim B).
2014-12-27 15:30:41 -05:00
Paul Beckingham
4622af1c35 TW-159
- TW-159 show sort field(s) as bold in listing headers.
2014-12-27 14:56:09 -05:00
Paul Beckingham
bbc40c051d Tw-145
- TW-145 default.due should accept a Duration (thanks to Ozgur Akgun).
2014-12-27 14:44:31 -05:00
Paul Beckingham
8590af8cf2 TW-139
- TW-139 Possibility to execute shadow file generation (thanks to Arnoud K).
2014-12-27 14:15:25 -05:00
Paul Beckingham
e10cb48118 TW-105
- TW-105 Doc needed - a comprehensive 'setup' walkthrough.
2014-12-27 12:43:12 -05:00
Paul Beckingham
fb885b69d7 TW-100
- TW-100 lazy dates (thanks to John Florian).
2014-12-27 11:45:31 -05:00
Paul Beckingham
6ce2b0c920 Tw-90
- TW-90 configurable wait until day/week/month/year (thanks to Aikido Guy).
2014-12-27 11:38:35 -05:00
Paul Beckingham
0e147d6251 TW-71
- TW-71 task ls/list/long/etc. should match contents of projects too (thanks to
        Cory Donnelly).
2014-12-27 10:21:36 -05:00
Paul Beckingham
d967871831 TW-55
- TW-55 Bulk edit recurring tasks without answering yes/no for each? (thanks to
        Max Muller).
2014-12-27 10:04:19 -05:00
Paul Beckingham
47def92c82 TW-52
- TW-52 "task add ... recur:2 months" interpreted as "2s" (thanks to jwhisnant).
2014-12-27 10:00:52 -05:00
Paul Beckingham
e8602306ed TW-47
- TW-47 odd ball usage (thanks to Aikido Guy).
2014-12-27 09:53:23 -05:00
Paul Beckingham
b3af2af6ff TW-45
- TW-45 task recur:daily doesn't behave as expected (thanks to Nick Person).
2014-12-27 09:33:18 -05:00
Paul Beckingham
b18b7cc588 TW-42
- TW-42 "add" reports wrong task number when executed after "done" (thanks to
        Steve Rader).
2014-12-27 09:30:45 -05:00
Paul Beckingham
2d63ba63e0 TW-37
- TW-37 Problem with fractions? (thanks to Aikido Guy).
2014-12-27 09:09:52 -05:00
Paul Beckingham
ebe243afb0 TW-29
- TW-29 Deletion of recurring tasks behaving strangely (thanks to Cory Donnelly).
2014-12-27 08:50:16 -05:00
Paul Beckingham
96c5e77450 TW-24
- TW-24 incorrect use of xterm colorization escape sequences (thanks to Steve
        Rader).
2014-12-26 10:43:23 -05:00
Paul Beckingham
98091a6100 TW-14
- TW-14 Parent recurring tasks cannot be deleted (thanks to Miguel de Val Borro).
2014-12-26 10:28:16 -05:00
Paul Beckingham
66ba5a153c TW-2
- TW-2 Unexpected behaviour - marking task as done releases task ID (thanks to
       Cory Donnelly).
2014-12-26 10:19:03 -05:00
Paul Beckingham
1488c1c6fa TW-1, TW-1438
- TW-1 Recurring task message on the same task (thanks to Profpatsch).
2014-12-26 10:16:11 -05:00
Paul Beckingham
8795b0a692 TW-1447
- TW-1447 Not possible to filter on a UDA of type String (thanks to atomicules).
2014-12-25 17:18:44 -05:00
Paul Beckingham
143fb60d15 Unit Tests
- Refactored, now cleaner.
2014-12-25 16:32:20 -05:00
Paul Beckingham
44eae76188 Unit Tests
- Implemented proper Test::More skipping.
2014-12-25 16:29:16 -05:00
Paul Beckingham
db9b17bcb2 Unit Tests
- Skipped regex case-insensitive tests on Cygwin.  Doesn't work.
2014-12-25 16:19:21 -05:00
Paul Beckingham
41473252bf Unit Tests
- Skip regex, case-insensitive tests on Cygwin.  Because it doesn't work.
2014-12-25 16:03:11 -05:00
Paul Beckingham
5a81fda835 Unit Tests
- Made test more portable.
2014-12-25 15:57:06 -05:00
Paul Beckingham
8e31ae2075 TW-1445
- TW-1445 Aliases broken: cannot contain multiple arguments anymore (thanks to
          Johannes Schlatow).
2014-12-25 15:24:58 -05:00
Paul Beckingham
e924913e11 TW-1417
- TW-1417 Misaligned fields in report for "remaining" date (thanks to Jeremy
          John Reeder).
2014-12-24 10:00:57 -05:00
Paul Beckingham
84dc7dd245 TW-1423
- TW-1423 Using the date February 29th, in a non leap year does not fail well
          (thanks to Black Ops Testing).
2014-12-24 09:03:49 -05:00
Paul Beckingham
2c1f18bf26 TW-1442
- TW-1442 Dateformat incorrectly interpreted (thanks to Dirk Deimeke).
2014-12-24 00:29:46 -05:00
Paul Beckingham
be659a7325 TW-1416
- TW-1416 Dates can't be input with hyphens (thanks to Jeremy John Reeder).
2014-12-24 00:26:29 -05:00
Paul Beckingham
1be01b19a4 Task
- Prevented some (but not all) errors from being incorrectly displayed as "no
  longer support file format 1".
2014-12-24 00:15:35 -05:00
Paul Beckingham
632fca4c9a Unit Tests
- Explicitly set colors so that tests are not dependent on current defaults.
2014-12-24 00:11:16 -05:00
Paul Beckingham
eb7b55ceef Unit Tests
- Explicitly set colors so that tests are not dependent on current defaults.
2014-12-23 23:57:14 -05:00
Paul Beckingham
7e8c277bb7 Unit Tests
- Added explicit rc.rule.precedence.color to make the test independent of the
  current defaults.
2014-12-23 23:51:37 -05:00
Paul Beckingham
7795570e61 Build
- Broke the build with code in a hidden ifdef.
2014-12-23 23:46:28 -05:00
Paul Beckingham
b6a4a9c197 Config
- The default color theme is now dark-256 for Linux, and dark-16 for everything
  else.
2014-12-23 22:45:04 -05:00
Paul Beckingham
7a243816c0 Themes
- Updated light & dark themes (thanks to David Patrick).
2014-12-23 22:30:39 -05:00
Paul Beckingham
4926888332 Documentation
- Updated man page to reflect the rc.regex=on default.
2014-12-14 18:43:07 -05:00
Paul Beckingham
d01d2109cf TW-1471
- TW-1471 task calc uses output it doesn't understand (thanks to Jens Erat).
2014-12-14 18:34:12 -05:00
Paul Beckingham
63dcea9c37 Documentation
- Updated man page for tw-1469.
2014-12-14 13:38:24 -05:00
Paul Beckingham
7b8ccf57c6 TW-1469
- TW-1469 Case-insensitive searching broken on Cygwin (thanks to Richard
          Boß).
2014-12-14 13:31:33 -05:00
Paul Beckingham
8228c8bf83 Unit Tests
- Added unit tests for tw-1469.t, to verify behavior on suported platforms.
2014-12-14 11:02:36 -05:00
Paul Beckingham
34ef9f6dd7 TW-1449
- TW-1449 Nag function does not respect urgency (thanks to Tomas Babej).
2014-11-29 16:58:06 -05:00
Paul Beckingham
9349d5808c Unit Tests
- Modified test so that it passes, which is a temporary measure. The problem is
  unfixed, but there is a workaround.
2014-11-29 16:38:35 -05:00
Paul Beckingham
206323dd6a TW-1468
- TW-1468 Filtering for project and description has issues (thanks to Richard
          Boß).
2014-11-28 12:24:51 -05:00
Paul Beckingham
9a95696872 Code Cleanup
- Improved white space for readability and style compliance.
2014-11-28 12:15:00 -05:00
Paul Beckingham
7ca40db738 Unit Tests
- Corrected escaping for a test, where '+' does not need to be escaped when
  added in a description, or when scanning output with '+ in string', but does
  need to be escaped when it is part of a regular expression, because it has
  regex semantics.
2014-11-22 14:03:30 -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
85518c646f Task
- Modification diagnostics were missing for 'recur' attribute.
2014-11-22 13:38:24 -05:00
Paul Beckingham
dc1e01b1c2 Filter
- Identifies Filter::subset as source of CLI::dump call, rather than the
  default label, which was confusing.
2014-11-22 12:24:55 -05:00
Paul Beckingham
06319711f1 Quoting
- Removed automatic dequoting by the Lexer.
- Implemented Lexer::dequote for manual control.
- Variant dequotes string values when appropriate.
- Fixed some unit tests that became wrong.
2014-11-18 00:59:52 -05:00
Paul Beckingham
f28ccdc8b1 CLI/CmdCalendar
- When the binary is named (or symlinked to) 'cal', then CLI::_args[0]
  must be clobbered, and restored for subsequent commands.
2014-11-17 19:13:19 -05:00
Federico Hernandez
13b1982efd Fixed typo in name of holidays rc file 2014-11-17 20:35:53 +01:00
Paul Beckingham
82c6a6ecf4 TW-256
- Holidays not displayed for some locales (thanks to Leon Feng).
2014-11-17 08:20:21 -05:00
Federico Hernandez
dfdd2d3f35 Holidays rc-files
- Updated existing files up to 2016.
- Added bunch of new locales from holidata.net.
2014-11-17 00:09:25 +01:00
Paul Beckingham
2eabe85cca TW-1460
- TW-1460 Empty due dates lead to endless loop.
2014-11-15 14:43:49 -05:00
Wilhelm Schuermann
00b15ca407 TW-1460
- Display error for empty due: attribute when adding recurring tasks.
- Prevent endless loop for tasks that have an empty due: attribute.
2014-11-15 14:16:02 -05:00
Paul Beckingham
7422a76153 Merge branch '2.4.0' of ssh://git.tasktools.org/tm/task into 2.4.0 2014-11-12 12:00:00 -05:00
Wilhelm Schuermann
5b4793e750 CmdSync
- CmdSync::send () is TLSClient specific and breaks the build if libgnutls
  is not found, so #ifdef it.
2014-11-12 11:58:03 -05:00
Federico Hernandez
885c97a279 Bumping version to beta3 2014-11-12 00:07:49 +01:00
Paul Beckingham
66c303daef CLI
- Removed inverted range error, and instead the parser just downgrades from an
  ID range to unknown.
2014-11-10 23:55:38 -05:00
Paul Beckingham
0ac751c94d TW-1429
- TW-1429 Filtering of tags containing special words does not work (thanks to
          Johannes Schlatow).
2014-11-10 23:13:24 -05:00
Paul Beckingham
dd7a9e32db Context
- Improved command line feedback.
2014-11-10 22:53:33 -05:00
Paul Beckingham
d511c9d0be L10N
- Removed unused strings associated with file format 3.
2014-11-10 22:29:18 -05:00
Paul Beckingham
9ab722cd8c L10N
- Removed unused string STRING_ERROR_MEMORY.
2014-11-10 22:21:46 -05:00
Paul Beckingham
55d7442abc CLI
- Restored message about nested alias safety valve.
2014-11-10 22:19:15 -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
65ca1ab84d Unit Tests
- Removed './' from relative paths, which seems to make a difference to FreeBSD.
2014-11-10 21:41:57 -05:00
Paul Beckingham
ba9043e6a7 Unit Tests
- Removed debugging output from test - that was not helping.
- Added more basic tests because FreeBSD is misbehaving.
2014-11-10 21:04:22 -05:00
Paul Beckingham
9936157704 TW01438
- TW-1438 Configuration setting rc.confirmation=no no longer disables
          confirmation requests (thanks to Adam Coddington).
2014-11-10 20:05:28 -05:00
Paul Beckingham
fd518e3fce Filter
- Improved ::pendingOnly algorithm.
2014-11-10 18:11:13 -05:00
Renato Alves
ff9b8217e2 Unittest - let vramsteg count non-executable tests
Currently harmless as there's only 1 non-executable test
2014-11-10 12:00:21 +00:00
Renato Alves
1a4774a2d8 Revert "Unittest - TOTAL tests shouldn't include non-executable tests"
TESTBLOB can have multiple arguments. Doesn't work with find.

This reverts commit 3dfbed6e4c.
2014-11-10 11:56:16 +00:00
Renato Alves
3dfbed6e4c Unittest - TOTAL tests shouldn't include non-executable tests 2014-11-10 11:40:48 +00:00
Renato Alves
94cd3df675 Unittest - Also check for execute bit if not running in verbose mode 2014-11-10 11:40:18 +00:00
Paul Beckingham
ec18c1b9d7 CMake
- Removed unnecessary libreadline scanning.
2014-11-09 22:28:30 -05:00
Paul Beckingham
e9bdb6704f CLI
- Quoted some of the literals from desugaring attribute modifiers.
2014-11-09 21:44:31 -05:00
Paul Beckingham
3e67d68f57 TW-295
- TW-295 Replacing annotations or descriptions which contain '/'s (thanks to
         Johannes Schlatow).
2014-11-09 20:07:27 -05:00
Paul Beckingham
d38e606a50 TW-1434
- TW-1434 Parser issue in description.contains (thanks to Ralph Bean).
2014-11-09 18:44:12 -05:00
Paul Beckingham
4bbb6fea99 Unit Tests
- Added a terminator to the task that needs it.
2014-11-09 17:35:50 -05:00
Paul Beckingham
19eaae88cd Unit Tests
- Removed a test from tw-1418.t that doesn't need an escape.
2014-11-09 17:18:43 -05:00
Paul Beckingham
879b1edb5c Unit Tests
- Escapes / characes in search patterns, so that 'foo/' --> 'foo\/', which
  then allows '/foo\//'. In Python, this needs one more: '/foo\\//'.
2014-11-09 17:11:21 -05:00
Paul Beckingham
3279566244 CLI
- Modify ::disqualifyOnlyParenOps to count sugared operators.
- Labelled '(' and ')' as circumflex operators, thanks awwaiid.
2014-11-09 16:52:43 -05:00
Paul Beckingham
61e943f456 CLI
- Implemented ::disqualifySugarFree to prevent lexing arguments that ultimately
  resolve to zero operators.
2014-11-09 16:32:38 -05:00
Paul Beckingham
125b5464dc Eval
- Do not mark the '(' and ')' operators as binary. I don't know what they are,
  but they are not binary.
2014-11-09 16:12:47 -05:00
Paul Beckingham
d8d517706b CLI
- Implemented ::disqualifyFirstLastBinary to detect arguments that start or end
  with a binary operator, and are therefore not expressions.
2014-11-09 15:20:42 -05:00
Paul Beckingham
33bc4f13d0 Context
- Creates a set of entities for binary operators.
2014-11-09 15:19:57 -05:00
Paul Beckingham
d7378d830f Eval
- Implemented ::getBinaryOperators.
2014-11-09 15:18:04 -05:00
Paul Beckingham
84f9bc52ef CLI
- Implemented ::disqualifyOnlyParenOps, which bypasses lexing if parentheses
  are the only operators found.
2014-11-09 14:58:51 -05:00
Paul Beckingham
dc97348335 Revert "Unit Tests"
This reverts commit a00c5b11c8.
2014-11-09 14:53:43 -05:00
Paul Beckingham
237ef48b9c CLI
- Implemented the first two Lex disqualifiers.
2014-11-09 14:32:52 -05:00
Paul Beckingham
6e906e4dbf CLI
- Made argument termination (--) persists across ::addArg calls.
2014-11-09 13:59:40 -05:00
Paul Beckingham
a00c5b11c8 Unit Tests
- Modified tests to include a terminator, to resolve ambiguity.
2014-11-09 13:57:35 -05:00
Paul Beckingham
a07aa2bece CLI
- Only the first arg was being marked as ORIGINAL.
2014-11-09 12:27:01 -05:00
Paul Beckingham
008c7503b3 Unit Tests
- Corrected test count markers.
2014-11-09 12:24:30 -05:00
Paul Beckingham
1dfefc0be8 CmdDenotate
- Code cleanup.
2014-11-09 12:23:56 -05:00
Paul Beckingham
83894ae559 Unit Tests
- Migrated to new template.
2014-11-09 12:11:56 -05:00
Paul Beckingham
273ede6d0f CmdCalendar
- Added argv[0].
2014-11-09 12:04:06 -05:00
Paul Beckingham
b801358599 CLI
- Code cleanup of argument handling loops, ::categorize.
2014-11-09 12:01:10 -05:00
Paul Beckingham
8f60a106f7 CLI
- ::findOperator now only reports changes if the tag being added was not
  already there.
2014-11-09 11:15:20 -05:00
Paul Beckingham
9d0ae4f09d CLI
- Renamed the ::desugar* methods to be more specific.
2014-11-09 11:14:34 -05:00
Paul Beckingham
3b1f244f42 CLI/Context
- Reordering init sequence.
- Removed ::assumeLocations.
2014-11-09 10:38:40 -05:00
Paul Beckingham
8ff32b767f TW-1444
- TW-1444 Tag ordering is preserved, but should be sorted in reports.
2014-11-08 16:52:19 -05:00
Paul Beckingham
da8e16a38b TW-1437
- TW-1437 taskd.trust has a bad default value.
2014-11-08 15:23:55 -05:00
Paul Beckingham
ab17450820 CLI
- Code cleanup, removed ::getModifications.
2014-11-08 15:21:07 -05:00
Paul Beckingham
1ff19c3b8f TW-1414.t
- default.command doesn't work with execute anymore (thanks to Johannes
  Schlatow).
2014-11-08 15:15:50 -05:00
Paul Beckingham
c818a2fa3a Unit Tests
- Removed whitespace for readability.
2014-11-08 15:05:54 -05:00
Paul Beckingham
c2bf56af71 CLI
- Removed the requirement in ::getWords that the ORIGINAL tag be present.
2014-11-08 15:05:19 -05:00
Paul Beckingham
db13a676bb Unit Tests
- Enabled failing tests.  Maybe it can be fixed instead.
2014-11-08 14:48:27 -05:00
Paul Beckingham
283cae5e8c CLI
- The ::categorize method now only allows one TERMINATOR - the first one.
2014-11-08 14:35:24 -05:00
Paul Beckingham
26f8d8c45d CLI
- Implemented ::findStrayModifications to spot FILTER args detected before 'add'
  or 'log' commands, and upgrade them to MODIFICATIONs.
2014-11-08 14:22:25 -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
2797541b8d CLI
- Raised the lexeme count threshold to 3 to consider lexing an argument. This
  accomodates binary operators.
2014-11-04 23:16:37 -05:00
Paul Beckingham
f790ee65c4 CLI
- The ::addArg method now trims incoming args.
2014-11-04 23:11:51 -05:00
Paul Beckingham
d9712322a7 CLI
- Stricter definition of what is an attribute.
2014-11-04 23:00:07 -05:00
Paul Beckingham
55962058de CLI
- Further restrictions on tag definition.
2014-11-04 22:53:41 -05:00
Paul Beckingham
39983e5f82 CLI
- Implemented ::isName.
2014-11-04 22:53:12 -05:00
Paul Beckingham
38359b779a Lexer
- Exposed more primitives as static methods.
2014-11-04 22:51:25 -05:00
Paul Beckingham
4ec1f17557 CLI
- More strict definition of what is a tag.
2014-11-04 22:34:18 -05:00
Paul Beckingham
2b3f7a2fb6 CLI
- Added explanatory comment for commented out code. Not sure what to do about
  it yet.
2014-11-04 22:17:33 -05:00
Paul Beckingham
645d728f0f CLI
- The ::insert method is not needed, and is removed.
2014-11-04 22:16:50 -05:00
Paul Beckingham
529217cf75 Unit Tests
- One test has the rc.monthsperline:1 on the wrong command. Not sure what was
  going on there. Not important.
2014-11-04 22:01:07 -05:00
Paul Beckingham
c4116d43e1 CLI
- Moved ID and UUID parsing earlier in the sequence.
2014-11-04 21:42:39 -05:00
Paul Beckingham
c817607465 Unit Tests
- Upgraded to the new template.
2014-11-04 21:42:03 -05:00
Paul Beckingham
5a293b1f28 CLI
- An attribute name may not contains spaces.
2014-11-03 22:18:34 -05:00
Renato Alves
d9c4ff0700 Documentation - Man and help now mentions /g in /from/to/g 2014-11-03 13:50:56 +00:00
Paul Beckingham
0c61f50da6 Unit Tests
- Corrected for absolute path names in the Config::load timing.
2014-11-02 23:59:22 -05:00
Paul Beckingham
9ae3bcb7ef Unit Tests
- Corrected description for the version tests.
2014-11-02 23:50:38 -05:00
Paul Beckingham
71b33453f1 Unit Tests
- Fixed mistake introduced by template upgrade.
2014-11-02 23:45:41 -05:00
Paul Beckingham
216d8bafa5 CLI
- Relocated ::injectDefaults call to after ::findOverrides, and insert a call
  to ::applyOverりides.
2014-11-02 23:39:11 -05:00
Paul Beckingham
6ccec121c9 CLI
- Implemented ::injectDefaults for rc.default.command and auto info.
2014-11-02 23:30:59 -05:00
Paul Beckingham
086f7ec684 CLI
- Half-implemented ::injectDefaults. This is a highly problematic method, and
  needs some thinking.
2014-11-02 22:50:56 -05:00
Paul Beckingham
5685bf95a6 CLI
- Implemented ::insert.
2014-11-02 22:46:11 -05:00
Paul Beckingham
f4147f2ea3 Parser
- Obsoleted Parser object.
2014-11-02 22:33:04 -05:00
Paul Beckingham
6d75045658 Tree
- Eliminated Tree object from the repository.
2014-11-02 22:30:21 -05:00
Paul Beckingham
f7ba181db2 CMake
- Removed Parser.{h,cpp} from the build.
2014-11-02 22:20:37 -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
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
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
03176b45ad CLI
- Forgot to commit the change declaring the default argument for ::addArg.
2014-11-02 12:02:29 -05:00
Paul Beckingham
290f248db8 CLI
- Implemented ::isCommand.
2014-11-02 11:58:33 -05:00
Paul Beckingham
78625d00ec Unit Tests
- Upgraded to the new template.
2014-11-01 23:06:27 -04:00
Paul Beckingham
9bee3a6c92 Unit Tests
- Upgrded to the new template.
2014-11-01 22:40:43 -04:00
Paul Beckingham
8e039c4a8a Task
- Fixed bug where tag modifications were trying to access a 'tag' attribute,
  instead of the 'name' attribute.
2014-11-01 22:21:18 -04:00
Paul Beckingham
a078ad41e8 Task
- Removed unnecessary include.
2014-11-01 21:56:18 -04:00
Renato Alves
d261a38d17 Unittest - Enhanced support for testing hooks (wip)
* It is now possible to test:
  * Hook Input/Output on STDIN/STDOUT channels
  * Exit code of hook script
  * Execution count (how many times the hook was executed)
  * Timestamp execution (when was the hook executed - milisec resolution)
2014-11-02 00:01:06 +00:00
Paul Beckingham
9ea61e25e8 Context
- Removed Parser member, which is now local to ::initialize.
2014-11-01 00:04:02 -04:00
Paul Beckingham
05a3973107 CLI
- Removed unused ::clear method.
2014-10-31 23:57:42 -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
0b212ad8bc CLI
- Switched PSEUDO args to use 'canonical' instead of 'name'.
2014-10-31 23:39:02 -04:00
Paul Beckingham
9f8ab6e4e2 Context
- Switched from Parser::getLimit to CLI::getLimit.
2014-10-31 23:34:17 -04:00
Paul Beckingham
5387ab1dcb CLI
- Fixed bug where PSEUDO args did not have the correct 'raw' or 'value'
  attribute.
2014-10-31 23:30:16 -04:00
Paul Beckingham
fa890f9961 CLI
- Implemented ::getLimit.
2014-10-31 23:29:54 -04:00
Paul Beckingham
8863458879 Context
- Converted from Parser::getCommand to CLI::getCommand.
2014-10-31 23:12:41 -04:00
Paul Beckingham
6056ca4cd7 CLI
- Implemented ::getCommand.
2014-10-31 23:11:40 -04:00
Paul Beckingham
6324e3b63a CmdCustom
- Removed Parser details.
2014-10-31 22:59:32 -04:00
Paul Beckingham
bc5cfb2740 Args
- Converted args.cpp from Parser to CLI.
2014-10-31 22:58:50 -04:00
Paul Beckingham
771ec1d080 Filter
- Removed all Parser references.
2014-10-31 22:53:00 -04:00
Paul Beckingham
d36d6fc303 Documentation
- Documented rc.debug.parser=3.
2014-10-31 22:52:04 -04:00
Paul Beckingham
f804a43cee Filter
- Corrected use of rc.debug.parser.
- Added notes for fixing ::pendingOnly.
2014-10-31 22:31:58 -04:00
Paul Beckingham
0a7d02787d Task
- Converted ::modify to use CLI.
2014-10-31 22:30:39 -04:00
Paul Beckingham
9bc8e3bae3 CLI
- Corrected lookup for existing entities.
2014-10-31 21:54:01 -04:00
Paul Beckingham
7420ef8e28 CLI
- ::addArg now lexes args, and looks for embedded operators before deciding to
  use the lexemes.
2014-10-31 20:11:34 -04:00
Paul Beckingham
975b20a517 CLI
- Modifier entities are now available early, so use them to identify
  attmods.
2014-10-31 20:08:50 -04:00
Paul Beckingham
d5e732b47d CLI
- Added debug.parser=3 support to ::analyze.
2014-10-31 20:07:45 -04:00
Paul Beckingham
c01ee07981 CLI
- Added debug.parser=3 support to ::decomposeModSubstitutions.
2014-10-31 20:05:12 -04:00
Paul Beckingham
de6f97174e CLI
- Added debug.parser=3 support to ::decomposeModTags.
2014-10-31 20:04:40 -04:00
Paul Beckingham
5d662c0efa CLI
- Added debug.parser=3 support to ::decomposeModAttributeModifiers.
2014-10-31 20:03:54 -04:00
Paul Beckingham
caa4e0d6b9 CLI
- Added debug.parser=3 support to ::decomposeModAttributes.
2014-10-31 20:03:06 -04:00
Paul Beckingham
8abc2967f7 CLI
- Added debug.parser=3 support to ::insertJunctions.
2014-10-31 20:02:33 -04:00
Paul Beckingham
299cda2283 CLI
- Added debug.parser=3 support to ::findAttributes.
2014-10-31 20:01:56 -04:00
Paul Beckingham
399097d683 CLI
- Added debug.parser=3 support to ::findOperators.
2014-10-31 20:01:33 -04:00
Paul Beckingham
d54c9da021 CLI
- Added debug.parser=3 support to ::desugarPlainArgs.
2014-10-31 20:00:36 -04:00
Paul Beckingham
08310cf2a2 CLI
- Added debug.parser=3 support to ::insertIDExpr.
2014-10-31 20:00:06 -04:00
Paul Beckingham
371e4a4603 CLI
- Added debug.parser=3 support to ::desugarPatterns.
2014-10-31 19:59:32 -04:00
Paul Beckingham
3b88106be8 CLI
- Added debug.parser=3 support to ::desugarAttributeModifiers.
2014-10-31 19:58:59 -04:00
Paul Beckingham
73e767ec3e CLI
- Added debug.parser=3 support to ::desugarAttributes.
2014-10-31 19:58:24 -04:00
Paul Beckingham
255d7b2126 CLI
- Added debug.parser=3 support to ::desugarTags.
2014-10-31 19:57:40 -04:00
Paul Beckingham
ea8663652f CLI
- Added debug.parser=3 support to ::categorize.
2014-10-31 19:57:08 -04:00
Paul Beckingham
9deb9e9f8f CLI
- Added debug.parser=3 support to ::findOverrides.
2014-10-31 19:54:14 -04:00
Paul Beckingham
86ff5a204f CLI
- Added debug.parser=3 support to ::expandAlias.
2014-10-31 19:51:39 -04:00
Paul Beckingham
131b08f191 CLI
- Implemented ::isOperator.
2014-10-31 19:22:34 -04:00
Paul Beckingham
6784c8d108 CLI
- Made ::entity aware of whether an entity is already known, to avoid adding
  when not necessary.
2014-10-31 19:20:09 -04:00
Paul Beckingham
d3d3a6a418 CLI
- Made CLI::dump title dynamic.
2014-10-31 19:19:30 -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
4c4204ee0d Unit Tests
- Removed debug arg.
2014-10-31 19:12:23 -04:00
Paul Beckingham
bcc7e30dfc CmdCustom
- Adds CLI::analyze call, for equivalence debugging.
2014-10-31 10:19:46 -04:00
Paul Beckingham
3700d2df9f Context
- Relocated some (more needed) entity declarations into ::setupEntities.
2014-10-31 08:53:25 -04:00
Paul Beckingham
7417737bbe Unit Tests
- Upgraded to the new template.
2014-10-31 08:51:06 -04:00
Paul Beckingham
195edcaa47 CLI
- Tags QUOTED args.
- Documented the list of args that do not get Lexed.
2014-10-30 07:05:16 -04:00
Paul Beckingham
d7f869accc CLI
- Fixed bug where only ':', not '=' could be used for an attribute filter
  element.
2014-10-30 00:31:59 -04:00
Paul Beckingham
1d55abd3c0 CLI
- Implemented ::isTag.
2014-10-30 00:27:07 -04:00
Paul Beckingham
fbfd352de3 CLI
- Implemented ::isAttribute.
2014-10-30 00:26:41 -04:00
Paul Beckingham
d5a4f23937 CLI
- Implemented ::isTerminator.
2014-10-29 23:49:23 -04:00
Paul Beckingham
1136b8fcdc CLI
- Implemented ::isIDSequence.
2014-10-29 23:42:53 -04:00
Paul Beckingham
28a2d667f1 CLI
- Implemented ::isID.
2014-10-29 23:23:53 -04:00
Paul Beckingham
fe2ea795ee CLI
- Implemented ::isUUIDList.
2014-10-29 23:08:31 -04:00
Paul Beckingham
4dd953bf44 CmdDenotate
- Removed unnecessary include.
2014-10-29 22:56:28 -04:00
Paul Beckingham
5586a3c8cc Unit Tests
- Converted to use the new template.
2014-10-27 22:03:57 -04:00
Paul Beckingham
52a6cfd4a0 CLI
- Implemented ::isSubstitution and used it.
2014-10-27 20:55:42 -04:00
Paul Beckingham
7b67e77752 CLI
- Implemented ::isPattern, and used it.
2014-10-27 18:53:09 -04:00
Paul Beckingham
b1b40cacc1 CLI
- ::add needed to clear ::_id_ranges and ::_uuid_list so that ::analyze can
  repopulate them.
2014-10-27 14:03:50 -04:00
Paul Beckingham
d5e6aa7640 CLI
- Implemented ::isConfigOverride, and used it.
2014-10-27 13:40:32 -04:00
Paul Beckingham
91f4eade50 CLI
- Implemented ::isRCOverride.
2014-10-27 13:23:12 -04:00
Paul Beckingham
0b073bc8d1 CLI
- Removed unused 'token' arg from ::isUUID.
2014-10-27 13:02:51 -04:00
Paul Beckingham
7f061eef95 CLI
- Implemented ::addArg, to be called from both ::initialize and ::add, to
  determine whether an arg should be lexed or not.
2014-10-27 10:59:06 -04:00
Paul Beckingham
dd8972525f CLI
- Implemented ::isUUID helper function.
2014-10-27 10:57:41 -04:00
Paul Beckingham
34b9a5dbcc CLI
- ::categorize now tags QUOTED args.
2014-10-27 10:27:08 -04:00
Paul Beckingham
482d378fdb CLI
- Implemented ::findAttributes.
2014-10-26 11:12:22 -04:00
Paul Beckingham
286c378180 CLI
- An arg preceded by an OP is not a plain arg.
2014-10-26 11:11:33 -04:00
Paul Beckingham
47e8ae6c02 Unit Tests
- Updated to use the new template.
2014-10-26 10:48:02 -04:00
Paul Beckingham
822031bf0b Unit Tests
- Upgraded to user the new template.
- Removed code that detected EOM an skipped tests. This should no longer be
  needed with the ISO date support, where EOM is the true EOM.
2014-10-26 09:32:34 -04:00
Paul Beckingham
74526ee564 CLI
- Converted ::safety from Parser to CLI.
- Updated unit tests to use the new template.
- Added tests to cover both values of rc.allow.empty.filter.
2014-10-26 09:02:51 -04:00
Paul Beckingham
87cd22792d CLI
- No longer parenthesizes trivial filter expressions.
2014-10-26 09:00:41 -04:00
Paul Beckingham
0fa0829670 CmdCalendar
- Converted from Parser to CLI.
2014-10-25 23:19:47 -04:00
Paul Beckingham
5cb753fd23 CmdDenotate
- Converted from Parser to CLI.
2014-10-25 23:10:37 -04:00
Paul Beckingham
6dbacf684c CmdUndo
- Converted from Parser to CLI.
2014-10-25 23:07:52 -04:00
Paul Beckingham
506d36d74e CmdBurndown
- Now composes title from CLI instead of Parser.
2014-10-25 23:02:45 -04:00
Paul Beckingham
283a1aa8ef DOM
- Converted DOM and unit test from Parser to CLI.
2014-10-25 22:55:31 -04:00
Paul Beckingham
efb84b20bf CLI
- Made ::canonicalize public.
2014-10-25 22:46:56 -04:00
Paul Beckingham
4cb9330567 Parser
- Removed obsolete ::getWords method.
2014-10-25 22:41:35 -04:00
Paul Beckingham
fedafcd525 CLI
- Converted CmdCalendar from Parser to CLI.
2014-10-25 22:38:03 -04:00
Paul Beckingham
6973cfefb8 CLI
- Converted CmdConfig from Parser to CLI.
2014-10-25 22:37:43 -04:00
Paul Beckingham
d84b738940 CLI
- Converted CmdColumns from Parser to CLI.
2014-10-25 22:36:17 -04:00
Paul Beckingham
b3c89ae6f8 CLI
- Converted CmdExec from Parser to CLI.
2014-10-25 22:35:26 -04:00
Paul Beckingham
30f46ca5e7 CLI
- Converted CmdGet from Parser to CLI.
2014-10-25 22:32:59 -04:00
Paul Beckingham
07336450a9 CLI
- Converted CmdTimesheet from Parser to CLI.
2014-10-25 22:31:21 -04:00
Paul Beckingham
eb9a6e9608 CLI
- Converted CmdSync from Parser to CLI.
2014-10-25 22:29:24 -04:00
Paul Beckingham
68b59d1ac7 CLI
- Converted CmdShow from Parser to CLI.
2014-10-25 22:28:15 -04:00
Paul Beckingham
624e5e7376 CLI
- Converted CmdImport from Parser to CLI.
2014-10-25 22:24:57 -04:00
Paul Beckingham
54ce4e8a59 CLI
- Converted CmdColor from Parser to CLI.
2014-10-25 22:23:47 -04:00
Paul Beckingham
67581187ae CLI
- Converted CmdCalc from Parser to CLI.
2014-10-25 22:20:32 -04:00
Paul Beckingham
11d9fcb49c CLI
- Missing include.
2014-10-25 20:10:45 -04:00
Paul Beckingham
07bb370637 Merge branch 'parser2' into 2.4.0 2014-10-25 19:43:13 -04:00
Paul Beckingham
861743c37d CLI
- Properly combines _id_ranges and _uuid_list from multiple arguments.
- Properly inserts an 'or' OP between the id and uuid sections.
- Removed mistaken OP tag from 'id' and 'uuid' attributes.
2014-10-25 18:45:03 -04:00
Paul Beckingham
08634a8bb5 CLI
- Removed the 'ID/UUID or ID/UUID' processing from ::insertJunctions, as they
  are no longer needed, given ::insertIDExpr.
2014-10-25 18:25:24 -04:00
Paul Beckingham
b4f72286ff CLI
- Renamed ::desugarIDs to ::findIDs, as it is now a passive method.
- Renamed ::desugarUUIDs to ::findUUIDs, as it is now a passive method.
- Added ::insertIDExpr which creates one ID/UUID clause from the harvested
  ID and UUID values.
2014-10-25 18:23:53 -04:00
Paul Beckingham
160c4d90d9 CLI
- Removed ::getWords debug output.
2014-10-25 16:57:58 -04:00
Paul Beckingham
0138c13833 CLI
- Allow ::getWords to run ::analyze but skip the desugar and decomposition
  steps.
2014-10-25 16:51:35 -04:00
Paul Beckingham
0ca4b34f75 CLI
- Properly labels ID and UUID values as literals.
2014-10-25 16:36:52 -04:00
Paul Beckingham
4861c1ef1b CLI
- Implemented ::getWords.
2014-10-25 16:18:29 -04:00
Paul Beckingham
9d5299e843 CLI
- Now uses the attribute 'canonical' instead of 'name' for CMD args.
2014-10-25 16:17:35 -04:00
Paul Beckingham
725682a058 CLI
- Placed filter parentheses around only non-trivial filters.
2014-10-25 16:16:56 -04:00
Paul Beckingham
a780bd0193 CLI
- Implemented ::desugarPlainArgs to upgrade WORD to PATTERN when found in a
  FILTER context.
2014-10-25 16:15:31 -04:00
Paul Beckingham
0c4b447c77 Task
- Added CLI::dump.
2014-10-25 14:35:00 -04:00
Paul Beckingham
12941488ce CmdCustom
- Removed redundant pair of parentheses from custom report filters. Only one
  pair is needed.
2014-10-25 13:44:56 -04:00
Paul Beckingham
d0ae05ba1c CLI
- Removed MODIFIABLE tags for FILTER args - pointless.
- Added LITERAL and REGEX tags for ATTMOD values.
2014-10-25 13:43:39 -04:00
Paul Beckingham
22d3852bfd CLI
- Updated ::desugarAttributes to properly handle UDA and PSEUDO args.
- Cleaned up handling or ATTRIBUTE.
2014-10-25 13:42:05 -04:00
Paul Beckingham
7ff55037a6 CLI
- Tagged expanded aliases with ALIAS.
2014-10-25 13:16:31 -04:00
Paul Beckingham
5daf673387 CLI
- Standardized use of 'ATT' and 'ATTR' tags to 'ATTRIBUTE'.
2014-10-25 13:15:24 -04:00
Paul Beckingham
b7efb753b5 Filter
- Rewrote ::pendingOnly to work with CLI instead of Parser.
2014-10-24 23:00:06 -04:00
Paul Beckingham
e0fac11eed CLI
- Argument decomposition now skips terminated args.
2014-10-24 22:01:53 -04:00
Paul Beckingham
dbefd7d6fe CLI
- Tightened restriction in ::categorize.
2014-10-24 22:00:36 -04:00
Paul Beckingham
5add257d8b CLI
- Preserve ORIGINAL tag after ::unTagAll.
2014-10-24 16:33:35 -04:00
Paul Beckingham
ce2679c3fa CLI
- Properly tags TERMINATOR, TERMINATED.
2014-10-24 16:24:35 -04:00
Paul Beckingham
2c6b3b3991 TD-79
- TD-79 Bad error message for wrong hostname configuration (thanks to Jens
        Erat).
2014-10-23 22:46:50 -04:00
Paul Beckingham
959df159fa Eval
- Code cleanup.
2014-10-23 22:42:21 -04:00
Paul Beckingham
014a09cd55 CLI
- Implemented TERMINATOR/TERMINATED detection.
2014-10-23 01:18:42 -04:00
Paul Beckingham
371bb0a5b1 CLI
- Implemented A::unTagAll, to clear all tags.
2014-10-23 01:17:54 -04:00
Paul Beckingham
5d790a07de CLI
- PSEUDO args are no longer considered FILTER.
2014-10-23 00:45:39 -04:00
Paul Beckingham
7f3cc3897e CLI
- Implemented ::findOperators.
2014-10-23 00:45:20 -04:00
Paul Beckingham
fab9fe2a7d Filter
- Modified algorithm for ::pendingOnly.
2014-10-23 00:36:04 -04:00
Paul Beckingham
e4a237fcd3 CLI
- Implemented ::insertJunctions.
2014-10-23 00:34:52 -04:00
Paul Beckingham
8cb287ec69 CLI
- Tags the binary basename as either TW or CALENDAR.
2014-10-22 23:44:31 -04:00
Wilhelm Schuermann
f8a44819c3 ViewTask
- Free space of empty columns if rc.print_empty_columns is set. They were previously sent into nirvana, making the ViewTask destructor miss them.
2014-10-22 23:22:41 -04:00
Renato Alves
d49a2614ba Bug - import/export now output JSON as individual objects
* For JSON as array, json.array=1 behaves as before
* Tests and add-on scripts used in import tests were updated
2014-10-20 20:21:11 +01:00
Renato Alves
b569504139 Unittest - Refresh TW-1418 which still fails on \- 2014-10-20 20:04:59 +01:00
Renato Alves
d09fcf398e Unittest - Adjust failing tests due to split of streams 2014-10-20 18:52:18 +01:00
Renato Alves
efdb31fb90 Unittest - default to not merging stdout/stderr during tests
* Tests will now check that stderr is used for errors
* Tests were adjusted to reflect the API change
2014-10-20 14:01:21 +01:00
Renato Alves
c9102fd79c Unittest - SIGABORT was not being correctly identified
* In Python if the process receives a signal, the exit code is negative
2014-10-20 13:52:02 +01:00
Renato Alves
b4f33ec0c6 Unittest - Replace None by objects representing the state of stdout/err 2014-10-20 13:29:30 +01:00
Paul Beckingham
6dea38806b CLI
- Implemented ::decomposeModЅubstitutions.
2014-10-20 02:04:56 -04:00
Paul Beckingham
5dcc415057 CLI
- Implemented ::decomposeModTags.
2014-10-20 01:48:33 -04:00
Paul Beckingham
f2e533d013 CLI
- Implemented ::decomposeModAttributeModifiers.
2014-10-20 01:33:42 -04:00
Paul Beckingham
626354999c CLI
- Implemented ::decomposeModAttribute.
2014-10-20 01:22:49 -04:00
Paul Beckingham
b484abea4a CLI, Filter
- Moved parse tree dump into Context::debug output.
2014-10-20 01:01:27 -04:00
Paul Beckingham
24219e23a1 CLI
- Renamed unsweeten methods to desugar, because they remove syntactic sugar.
2014-10-20 00:35:00 -04:00
Paul Beckingham
caaa07f889 CLI
- Implemented ::unsweetenIDs.
2014-10-20 00:26:00 -04:00
Paul Beckingham
97f302f276 CLI
- Added constructors to match the overloaded ::attribute methods.
2014-10-20 00:22:47 -04:00
Paul Beckingham
c8f49bcafb CLI
- Added comma (,) to the set of acceptable characters for a UUID list.
2014-10-20 00:22:02 -04:00
Paul Beckingham
811d0e029d Parser
- UUIDs were being rejected because the contain commas, which are actually part
  of a UUID list. This meant that 'task $UUID1,$UUID2 info' failed.
2014-10-19 23:54:08 -04:00
Paul Beckingham
7f61bcecca CLI
- Implemented ::unsweetenUUIDs.
2014-10-19 23:42:16 -04:00
Paul Beckingham
60d356f009 CLI
- Stubbed ::unsweetenUUIDs.
2014-10-19 23:18:25 -04:00
Paul Beckingham
c4bb9fbc96 CLI
- Stubbed ::unsweetenIDs.
2014-10-19 23:17:49 -04:00
Paul Beckingham
83ab844ba4 CLI
- ::unsweetenPatterns no longer clobbers non-FILTER args.
2014-10-19 18:19:27 -04:00
Paul Beckingham
f809f2d819 CLI
- ::unsweetenAttributeModifiers no longer clobbers non-FILTER args.
2014-10-19 18:19:09 -04:00
Paul Beckingham
720cc57192 CLI
- ::unsweetenAttributes no longer clobbers non-FILTER args.
2014-10-19 18:18:48 -04:00
Paul Beckingham
f862ad15e6 CLI
- ::unsweetenTags no longer clobbers non-FILTER args.
2014-10-19 18:18:03 -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
Wilhelm Schuermann
cfe267f2e5 Tests
- tw-1441.t now calls runError() with merge_streams disabled.
- Taskwarrior only displays an error for the first file that is not found, so only check one.
2014-10-19 09:50:54 -04:00
Paul Beckingham
d9222606e7 Hooks
- The on-exit hook can now terminate processing.
2014-10-19 01:47:33 -04:00
Paul Beckingham
7895ea0f42 Hooks
- Added safety measure in case of a hook misfire.
- Made debug output consistent.
2014-10-19 01:32:41 -04:00
Paul Beckingham
23e2719e1a TDB2
- Restored blank line for clarity, now that duplicate debug messages are allowed.
2014-10-19 01:31:03 -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
7e2582f2b8 Hooks
- Fixed bug where the identifier "on-modify" contained some bogus UTF8.
- Ensured that every input line has a \n.
2014-10-19 00:57:30 -04:00
Paul Beckingham
719e9d242b Hooks
- Bug due to missing reference & in calls to callHookScript.  Dumbass.
2014-10-18 23:59:40 -04:00
Paul Beckingham
f1639e6862 Hooks
- Revised all event functions to use the new callHookScript method, which is
  now common to all events.
2014-10-18 23:47:32 -04:00
Paul Beckingham
d1f6b36ecf Hooks
- Standardized formatting of hook input and output in debug.hooks mode.
2014-10-18 17:26:20 -04:00
Paul Beckingham
8d75d0c7f3 Hooks
- Reduced validation to simply checking that a description attribute is present.
  This is the bare minimum for the Task(const std::string&) contructor.
2014-10-18 17:23:39 -04:00
Paul Beckingham
21bbedbfc5 Hooks
- Now performs a full JSON parse on hook script output before accepting it as a
  task.
2014-10-18 16:59:46 -04:00
Paul Beckingham
b6be1cdc99 Hooks
- Factored out the code that determines if the JSON output from a hook script is
  actually JSON.
2014-10-18 16:55:26 -04:00
Paul Beckingham
5275c0ce60 TW-1441
- TW-1441 task import continues happily if filename doesn't exist.
2014-10-18 14:41:12 -04:00
Renato Alves
18581a6ca4 Unittest - Avoid second exception on framework tracing error
* Prevents masking of the initial exception due to a second one.
2014-10-18 01:29:01 +01:00
Paul Beckingham
171fabbcda CLI
- Corrected comment to include quotes that are necessary for patterns.
2014-10-17 16:32:11 -04:00
Renato Alves
dc4a3e8038 Unittest - dash compatibility on debian/ubuntu 2014-10-17 17:24:50 +01:00
Renato Alves
65b6875846 Unittest - Remove execute bit from template.t and unnecessary comments 2014-10-17 16:42:44 +01:00
Renato Alves
a9c9fbc7df Unittest - Only run tests that have execute bit set 2014-10-17 16:42:44 +01:00
Paul Beckingham
51f08496b5 Lexer
- When parsing '\o/' the state Lexer::typeIdentifierEscape had no exit but a
  successful outcome, and looped.
- Fixed test.
2014-10-16 21:22:34 -04:00
Renato Alves
bb060d5ff8 Unittest - Allow specifying custom timeout for slow commands.
* Useful when testing with big tasks (1000+ annotations) or sync
operations that take longer than 1 second (default)
2014-10-16 20:52:17 +01:00
Renato Alves
b236e78f2e Unittest - Testcase for TW-1438 2014-10-16 20:48:45 +01:00
Renato Alves
cf5c7abd01 Unittest - Workaround race condition when killing slow processes
* In some cases the process finishes normally very close to the timeout
2014-10-16 16:47:10 +01:00
Renato Alves
6facb140a4 Unittest - Test cases for TW-1436 2014-10-16 15:51:39 +01:00
Paul Beckingham
8d359ddd70 CLI
- Implemented ::unsweetenPatterns.
2014-10-16 00:53:59 -04:00
Paul Beckingham
932865d3b5 CLI
- Renamed unsweetenAtts to unsweetenAttributes, unsweetenAttMods to
  unsweetenAttributeModifiers.
2014-10-16 00:39:56 -04:00
Paul Beckingham
0603711aac CLI
- Implemnted ::unsweetenAttMods.
2014-10-16 00:37:48 -04:00
Paul Beckingham
80b385ee93 CLI
- Renamed 'canonical' to 'name', for legacy reasons.
2014-10-16 00:36:52 -04:00
Paul Beckingham
9f8c4e02a7 CLI
- Implemented ::getFilter to extract all the non-PSEUDO, FILTER items.
2014-10-15 07:42:29 -04:00
Paul Beckingham
8afb39dea6 CLI
- Implemented ::unsweetenAtts to resolve syntactic sugar to an expression.
2014-10-15 07:34:29 -04:00
Paul Beckingham
f29b6a4be4 CLI
- Convert ::unsweetenTags from _filter to _args.
2014-10-15 02:34:44 -04:00
Paul Beckingham
ae4272f477 CLI
- When unsweetening tags, preserve the FILTER tag.
2014-10-15 02:33:50 -04:00
Paul Beckingham
8dd9082697 CLI
- Categorize has a better definition of FILTER.
2014-10-15 02:32:32 -04:00
Paul Beckingham
83898359e3 CLI
- Combined all elements into the single _args list.
2014-10-15 02:24:35 -04:00
Paul Beckingham
dd8391351d CLI
- Merged _program into _args.
- Merged _overrides into _args.
- Rewrote :extractOverrides as ::findOverrides.
2014-10-15 02:08:48 -04:00
Paul Beckingham
c3f7524006 CLI
- Now only dumps the parse tree on ::getFilter.
2014-10-15 01:47:36 -04:00
Paul Beckingham
295feda3b4 Parser
- Corrected findTags comment.
2014-10-15 01:44:21 -04:00
Paul Beckingham
698c801dbc CLI
- Converted _command from std::string to A.
2014-10-15 01:43:27 -04:00
Paul Beckingham
e5780474da CLI
- Converted _program from std::string to A.
2014-10-15 01:34:36 -04:00
Paul Beckingham
b3b509eabe CLI
- Added default constructor, so it plays nice with others.
- Added ::clear method to reset all members.
2014-10-15 01:33:12 -04:00
Paul Beckingham
6388d3827b CLI
- Converted from std::string to A.
2014-10-15 01:24:02 -04:00
Paul Beckingham
854dc08615 CLI
- Upgraded _args vector from std::string to A.
2014-10-15 01:08:44 -04:00
Paul Beckingham
87ece489db CLI
- Implemented A::dump.
2014-10-15 00:35:46 -04:00
Paul Beckingham
b98da56a7c CLI
- Implemented A class, to represent a single argument. Much like a tree node.
2014-10-15 00:28:16 -04:00
Paul Beckingham
8b78251735 CLI
- Filter elements are now rendered on one line in ::dump.
2014-10-15 00:27:43 -04:00
Paul Beckingham
c2f8c81a88 CLI
- Implemented ::unsweetenTags, which resolves the syntactic sugar to an expression.
2014-10-15 00:02:45 -04:00
Paul Beckingham
34fd7b4b04 CLI
- Relocated public methods to top.
- Removed const for methods, which are no longer const.
2014-10-14 23:49:13 -04:00
Paul Beckingham
f353e1f3d5 CLI
- Removed reset of _program on ::add, which never gets restored.
2014-10-14 23:40:13 -04:00
Paul Beckingham
d6e11761a6 CLI
- Added diagnostics only to ::initialize and ::add.
- Now properly clears and regenerates all data on change.
2014-10-14 23:26:12 -04:00
Paul Beckingham
7812bce079 CLI
- Reorganized methods to match header sequence.
2014-10-14 23:25:26 -04:00
Paul Beckingham
6d64472826 Context
- Removed calls to now-private methods.
2014-10-14 23:23:09 -04:00
Paul Beckingham
51a98609d9 CLI
- Stubbed ::getWords and ::getModifications.
2014-10-14 23:22:25 -04:00
Wilhelm Schuermann
ae9705561c Hooks
- Throw exception instead of segfaulting for on-add hooks not adhering to the specs. More work needed.
2014-10-14 15:58:24 -04:00
Renato Alves
1e14097ea5 Unittest - Add test to tw-252 to prevent future regressions 2014-10-14 15:22:52 +01:00
Paul Beckingham
54d975dac3 CLI
- Colㄡrized the ::dump output.
2014-10-14 01:52:39 -04:00
Paul Beckingham
05fdfafd2a CLI
- Preserves original args.
2014-10-14 01:42:37 -04:00
Paul Beckingham
99ff5cd372 CmdCustom
- Added parallel cli handling.
2014-10-14 01:36:20 -04:00
Paul Beckingham
c79a09d0b8 CLI
- Implemented ::add.
2014-10-14 01:35:33 -04:00
Paul Beckingham
acca1c66a3 CLI
- Implemented ::getFilter.
2014-10-14 01:23:55 -04:00
Paul Beckingham
d32b6fff12 CLI
- Improved diagnostics, for now.
2014-10-14 01:03:15 -04:00
Paul Beckingham
632cb3e194 Context
- Now calls aliasExpansion and categorization.
2014-10-14 00:59:33 -04:00
Paul Beckingham
2c3f12ae79 CLI
- Added more members to the ::dump method.
2014-10-14 00:59:07 -04:00
Paul Beckingham
c54e0d6d05 CLI
- Added new data to ::dump.
2014-10-14 00:49:15 -04:00
Paul Beckingham
343a79a034 CLI
- Implemented ::categorize.
2014-10-14 00:49:02 -04:00
Paul Beckingham
58afe23952 CLI
- Implemented ::aliasExpansion.
2014-10-14 00:47:02 -04:00
Paul Beckingham
4d921c7920 CLI
- Implemented ::canonicalize.
2014-10-14 00:45:53 -04:00
Paul Beckingham
227e0bd8c8 CLI
- Implemented ::exactMatch.
2014-10-14 00:45:04 -04:00
Paul Beckingham
b0cf4adc4e CLI
- Stubbed methods for further parsing.
2014-10-14 00:43:50 -04:00
Paul Beckingham
1639e6bb68 CLI
- Stubbed ::aliasExpansion.
- Fixed variable types.
- Added ::dump calls.
2014-10-14 00:09:47 -04:00
Paul Beckingham
9a2bcbed3e CLI
- Added ::dump for diagnostics.
2014-10-14 00:08:55 -04:00
Paul Beckingham
f4183fd6b1 Context
- Added CLI rc: and rc. override extraction.
2014-10-13 23:54:16 -04:00
Paul Beckingham
226c143922 CLI
- Override detection and extraction.
2014-10-13 23:52:50 -04:00
Paul Beckingham
c73e864cdd Context
- CLI is initialized with command line args.
2014-10-13 23:24:08 -04:00
Paul Beckingham
64d4d659ef CLI
- ::initialize captures all args.
2014-10-13 23:23:45 -04:00
Paul Beckingham
df54b8ee43 Context
- Integrated new CLI object.
- Provided aliases and entities to CLI.
2014-10-13 23:18:14 -04:00
Paul Beckingham
3b0606922f CMake
- Added new CLI class.
2014-10-13 23:17:20 -04:00
Paul Beckingham
8bb17fb2e8 CLI
- CLI is a streamlined version of Parser, now that wisdom is upon us.
2014-10-13 23:11:46 -04:00
Paul Beckingham
8905dd1c32 Eval
- The operator classifier failed to include '!=='.
2014-10-13 21:39:51 -04:00
Richard Boß
086a3b0d11 Unit Tests
- Added unit tests for tw-1430.t.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-10-13 18:28:06 -04:00
Paul Beckingham
a5563ba135 TW-1424
- TW-1424 Using a date of '1824days' (in the future) fails (thanks to Black Ops
          Testing).
2014-10-13 00:39:17 -04:00
Paul Beckingham
0183c8a231 TW-1420, TW-1421, TW-1422
- TW-1420 Modifying 'uuid' fails to generate error (thanks to Black Ops Testing).
- TW-1421 Modifying 'uuid' with bogus value can corrupt undo.data (thanks to
          Black Ops Testing).
- TW-1422 Attempt to modify 'id' attribute creates an id attribute (thanks to
          Black Ops Testing).
2014-10-13 00:18:01 -04:00
Paul Beckingham
1e03db77ca TW-1415
- The recurrence value 'month' is not valid (thanks for Petteri).
2014-10-12 23:57:44 -04:00
Paul Beckingham
ca14657f0c TW-1428
- Minor tweaks.
2014-10-12 23:48:55 -04:00
Johannes Schlatow
2c7013cc1c Color
- Supports 'color.uda.<name>.<value>' (TW-1428)
2014-10-12 23:44:43 -04:00
Johannes Schlatow
aa89422b6f Test
- Add test case for TW-1414
2014-10-12 23:30:59 -04:00
Paul Beckingham
f11626b0d7 Documentation
- Updated DEVELOPER, EXPOSITION docs.
2014-10-12 23:28:58 -04:00
Paul Beckingham
ab8e3c9faa Documentation
- Reference PDF updated.
2014-10-12 23:12:54 -04:00
Paul Beckingham
2a13b99720 Documentation
- Clarified taskrc man page purpose.
2014-10-12 23:05:54 -04:00
Federico Hernandez
1cb1ceae08 Bumping version number to beta2 2014-10-11 22:10:18 +02:00
Paul Beckingham
9325098b5c Unit Tests
- Commented out the bare word tests. Bare word searching is deprecated and these
  failures are the reason why. Retaining the tests for possible later rescue.
- Modified remaining tests because there is a difference in adding 'foo-' and
  searching for 'foo\\-'.
2014-10-11 11:29:23 -04:00
Paul Beckingham
630d0f209e Parser
- Code cleanup.
2014-10-11 11:25:23 -04:00
Paul Beckingham
0e0c4fa578 Parser
- Code cleanup.
2014-10-11 11:24:56 -04:00
Paul Beckingham
03a3b41254 Parser
- Locates mis-parsed SUBSTITUTIONS in FILTER, and downgrades to PATTERN.
2014-10-11 11:24:07 -04:00
Paul Beckingham
963e79696b TW-1354
- Tweaks.
2014-10-10 16:27:55 -04:00
Johannes Schlatow
a88a062d3d Urgency
- Supports 'urgency.uda.<name>.<value>.coefficient' (TW-1354)
2014-10-10 16:21:36 -04:00
Renato Alves
53fd37cae2 Unittest - Also propagate the correct exit code 2014-10-10 16:42:41 +01:00
Renato Alves
40a95e1196 Unittest - Fix case where exit code was incorrectly registered 2014-10-10 16:19:39 +01:00
Paul Beckingham
cabc099def Portability
- Missing include.
2014-10-10 10:07:43 -04:00
Renato Alves
a7e2dfcbcc Unittest - Include additional test cases mentioned in the bugtracker 2014-10-10 12:13:20 +01:00
Paul Beckingham
94e243d8d0 Hooks
- Added 'read -t 1' as an example for the on-exit sample hook.
2014-10-09 19:05:24 -04:00
Paul Beckingham
39469a1917 Color
- Supports 'color.label.sort' for column labels of sort columns.
2014-10-09 19:04:59 -04:00
Paul Beckingham
aac0753b07 ViewTask
- Supports the notion of different colors for sorted columns.
2014-10-09 18:55:39 -04:00
Paul Beckingham
489750c80a Errors
- Added error handling for std::bad_alloc.
2014-10-09 18:09:38 -04:00
Renato Alves
dffd4c0477 Unittest - Remove redundant checks
self.t == self.runSuccess -> fails if exit code is != 0
2014-10-09 13:17:12 +01:00
Renato Alves
27f21d375b Unittest - Clarify documentation of runSuccess/runError 2014-10-09 13:16:47 +01:00
Renato Alves
72823a453f Unittest - Helpers to manage hook scripts during tests 2014-10-08 20:29:56 +01:00
Paul Beckingham
0a234ec2ba Documentation
- Noted the deprecated status of 'limit:N'.
2014-10-07 23:23:48 -04:00
Paul Beckingham
9b7fa8b7ec Parser
- No point checking return value of 'new' operator, because it throws.
2014-10-07 23:12:03 -04:00
Paul Beckingham
4513248360 Task
- Upgrades UDA values of type 'duration' to supported values.
2014-10-07 22:49:46 -04:00
Paul Beckingham
b972c2c6c8 Task
- Improved structure of legacy duration value upgrades, so it can be used for
  other things, namely UDA durations.
2014-10-07 22:38:44 -04:00
Paul Beckingham
1a5fb437a5 Task
- Upgrades legacy recur values.
2014-10-07 00:24:03 -04:00
Paul Beckingham
108a4c7959 Documentation
- Added rc.debug.parser.
2014-10-06 23:27:53 -04:00
Paul Beckingham
f0e4f3f4dc Parser
- Modified to obey rc.debug.parser.
2014-10-06 23:26:53 -04:00
Paul Beckingham
fa011c5bfb Filter
- Modified diagnostics to observe rc.debug.parser.
2014-10-06 23:25:31 -04:00
Paul Beckingham
8eb773b263 Context
- Corrected comment.
2014-10-06 23:24:28 -04:00
Paul Beckingham
d2ca1c498c Documentation
- Added not about debug value propagation.
2014-10-06 23:13:23 -04:00
Paul Beckingham
8ca096689c Util
- Minor formatting.
2014-10-06 23:10:19 -04:00
Paul Beckingham
0075dbe429 Documentation
- Removed 'extensions' mention, and improved 'debug.tls' section.
2014-10-06 23:06:29 -04:00
Paul Beckingham
02c3925ec6 Config
- Removed obsolete (or rather, unused) 'extensions' variable.
2014-10-06 23:05:53 -04:00
Paul Beckingham
7521dc56e8 Hooks
- Supports 'debug.hooks' configuration setting.
2014-10-06 23:04:44 -04:00
Paul Beckingham
b34fd64a9c Parser
- Updated comments.
2014-10-05 11:45:08 -04:00
Paul Beckingham
fa22cff5be Context
- rc.debug.hooks and rc.debug.parser are now valid settings.  They are
  not yet obeyed.
2014-10-04 19:20:38 -04:00
Paul Beckingham
a71d4f1596 Context
- Setting rc.debug implicitly sets debug.tls, debug.parser and debug.hooks.
2014-10-04 19:12:23 -04:00
Paul Beckingham
c360923909 Config
- Added a :has method to detect settings that have no default value.
2014-10-04 19:10:59 -04:00
Paul Beckingham
015575295c Unit Tests
- Corrected test description in for 1110.
2014-10-04 18:25:55 -04:00
Wilhelm Schuermann
d5648b511c Util
- Added includes to make FreeBSD happy.
- Added more error handling.
2014-10-03 14:15:11 -04:00
Wilhelm Schuermann
ffc456be88 Hooks
- Cleaned up on-add.the example hook; now works with huge input without falling over.
2014-10-02 14:50:52 -04:00
Wilhelm Schuermann
1fa4c8ff7b Util
- Reimplemented execute(), this time (hopefully) deadlock-proof.
- Added error handling.
2014-10-02 14:50:47 -04:00
Paul Beckingham
e59a48080c Variant
- ::operator_partial was not treating the status field as a special caseless
  compare, like operator== does.
2014-10-01 18:58:28 -04:00
Paul Beckingham
5c485f6c53 Parser
- Modified ':' to perform partial matches, which means dates now match
  on same day.
2014-10-01 18:31:50 -04:00
Paul Beckingham
47cfe515e6 Unit Tests
- Fixed cal.t test that fails when EOY is within 3 months.
2014-10-01 18:30:36 -04:00
Paul Beckingham
d2d270f486 Documentation
- Added note in the NEWS file about deprecated future features.
- Updated ChangeLog with 'taskd.trust' change.
2014-09-28 18:00:58 -04:00
Paul Beckingham
fe46dadeee TLS
- When an invalid value for 'taskd.trust' is noticed, the 'sync' command will
  error out, and the 'diag' command will refer the user to the man page.
  This is because the allowed values were 'yes'/'no', and now are
  'strict'/'ignore hostname'/'allow all'.
2014-09-28 17:42:14 -04:00
Paul Beckingham
dcc5dbf16a Variant
- The ::operator_match (and by extension operator_nomatch) now obey the rc.regex
  setting.
2014-09-28 13:39:50 -04:00
Paul Beckingham
9e0ea1cb4a Eval
- Better error message for malformed expressions, ie when a binary operator
  expects two values, and sees less then two or when a unary operator sees
  less than one.
2014-09-27 17:08:26 -04:00
Paul Beckingham
071cf55c00 Unit Tests
- Added a default 'hooks=off' to the basetest class, after it was discovered
  that the scan for runnable hooks takes non-trivial time.
2014-09-27 16:49:06 -04:00
Paul Beckingham
61bed34a19 Performance
- Generalized the perf scripts a little, to make it easier to test old versions.
2014-09-27 16:10:50 -04:00
Paul Beckingham
d44c8c5147 Config
- Removed redundant sorting for the 'list' report.
2014-09-27 15:26:07 -04:00
Paul Beckingham
0c3ee68f64 Performance
- Hooks should be disabled for all tests.
2014-09-27 15:24:47 -04:00
Paul Beckingham
c81ae48590 Unit Tests
- Added diag.t, which simply runs the 'diagnostics' command and captures output.
  The output will be gathered and stored by Flod, which means we can monitor the
  platform characteristics.
2014-09-27 11:55:30 -04:00
Paul Beckingham
b4eed6333a Diagnostics
- Included C++ compiler compliance level. If 'diag' output is then included in
  the test suite, we can monitor compliance across platforms, and decide when
  to use new features.
2014-09-27 11:51:17 -04:00
Paul Beckingham
a3d53b401f Unit Tests
- Renamed bug.1418.t to tw-1418.t, the new convention.
2014-09-27 10:41:18 -04:00
Ralph Bean
d2222a4082 Unit Tests
- Added a set of failing tests for the 'filters in operators' bug:
  https://bug.tasktools.org/browse/TW-1418
2014-09-27 10:39:26 -04:00
Paul Beckingham
69d4e0392b CmdCustom
- Removed a vector of column labels that is simply not used.
2014-09-20 14:12:39 -04:00
Paul Beckingham
9bb1dbbd4d ViewTask
- Improved locality, for readability, while debugging column TW-1417.
2014-09-20 14:11:59 -04:00
Paul Beckingham
5c15111bb1 L10N
- Latest updates (thanks to Jeremy John Reeder).
2014-09-19 15:17:31 -04:00
Paul Beckingham
3a0f633948 Fish
- Commented out (with explanations) features that can fill pages of output,
  which is probably not desirable (thanks to Jeremy John Reeder).
2014-09-19 15:15:13 -04:00
Paul Beckingham
1a1bda18ce TLSClient
- Rearranged includes, now matches taskd.
2014-09-18 22:28:47 -04:00
Łukasz Panek
0f23bfa31d Polish localization.
Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-09-17 20:24:28 -04:00
Paul Beckingham
748ca4896f TLS
- Added many more diagnostics for when GnuTLS calls fail.
- Fixed bug whereby hostname verification failed no matter what.
2014-09-16 00:02:18 -04:00
Paul Beckingham
d7c902bacd Code Cleanup
- Removed obsolete 'run' script.
2014-09-15 23:38:55 -04:00
Paul Beckingham
f593d05ced Merge branch '2.4.0' of ssh://git.tasktools.org/tm/task into 2.4.0 2014-09-15 18:43:50 -04:00
Federico Hernandez
1c152a71ed Bumped versionnumber to 2.4.0.beta1 2014-09-15 23:06:50 +02:00
Paul Beckingham
01d96c25c4 TLS Errors
- Added TLS error to output during client init.
2014-09-15 17:02:52 -04:00
Paul Beckingham
b367041a36 Documentation
- Corrected list of test platforms.
2014-09-14 23:07:30 -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
5b7e6df00b Util
- The execute() function needed to fill the STDIN pipe before the fork, not
  after the fork, so the data is ready before the child process reads.
2014-09-14 17:43:19 -04:00
Paul Beckingham
bfc6e38851 Hooks
- ::onExit now provides a set of all changeѕ tasks to the hook script, in
  read-only form.
2014-09-14 17:04:12 -04:00
Paul Beckingham
d0fd3bac4a TDB2
- ::update must call validate(false) to ensure metadata exists for the 'modify'
  case, then later call validate() to add defaults for the 'add' case.
2014-09-14 16:36:32 -04:00
Paul Beckingham
90edba9113 Context
- Both ::initialize and ::run need to catch a 'throw (0)' from the hook system.
2014-09-14 16:33:10 -04:00
Paul Beckingham
8be6c589da Hooks
- Implemented new interface.  Testing time.
2014-09-14 15:55:22 -04:00
Paul Beckingham
ab72cdad4d Hooks
- Stubbed new ::onAdd and ::onModify interfaces.
2014-09-14 15:42:47 -04:00
Paul Beckingham
7b617a7b6e TDB2
- Consolidated most of the processing in ::add and ::modify into ::update.
2014-09-14 15:25:37 -04:00
Paul Beckingham
21be0e3e94 TDB2
- Combined add and modify operations in ::add, in case the hook processing
  generates modifications.
2014-09-14 15:07:40 -04:00
Paul Beckingham
ac833c183a TDB2
- TDB2::add no longer assumes that adding one task results in only one task
  begin added, as hook processing may expand the set.
2014-09-14 14:56:54 -04:00
Paul Beckingham
f3c035d2b8 TDB2
- Removed hook processing that is now in the wrong place.
2014-09-14 14:20:30 -04:00
Paul Beckingham
10fa21851b Unit Tests
- Corrected t.t test that assumed ff3 was still supported.
2014-09-14 12:29:34 -04:00
Paul Beckingham
a0c488cfcf Code Cleanup
- Removed support for legacy format FF3 (v1.6.0 - v1.7.1).
2014-09-14 12:16:27 -04:00
Paul Beckingham
e93c61ae8d L10N
- Localized two remaining errors in Task.cpp that were missed.
2014-09-14 12:11:45 -04:00
Paul Beckingham
b5f3cfd9a3 Code Cleanup
- Replaced multiple Task:setX methods with Task::setAsNow (x).
2014-09-14 11:57:02 -04:00
Fidel Mato
cf5dbbb9ee eng-USA.h typos
- Some minor, perhaps-typos.
2014-09-13 22:47:34 -04:00
Fidel Mato
6aaad3bf27 L10N
- Corrections and newly translated strings.
2014-09-13 22:46:57 -04:00
Fidel Mato
75e780330a L10N
- Correction and newly translated strings.
2014-09-13 22:46:40 -04:00
Jeremy John Reeder
d5cfb1d5e5 L10N
I have several corrections to epo-RUS. I also have some corrections to esp-ESP,
several new translations, and improvements to the consistency of the text.
Finally, I have a minor correction to the capitalization within fra-FRA. The
files for all of these improved translations are attached to this message.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-09-12 17:18:48 -04:00
Paul Beckingham
1058f045b0 TDB2
- Added ::has methods to determine whether a UUID is known.
2014-09-10 22:54:17 -04:00
Jeremy John Reeder
2028c7186c More epo-RUS translations.
Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-09-10 22:20:06 -04:00
Paul Beckingham
05ba58c56f TDB2
- Disabled hook processing while processing hooks. This is because both ::add
  and ::modify can each add or modify tasks, and there is the potential for
  infinite recursion.
2014-09-09 23:37:29 -04:00
Paul Beckingham
7e35508bb4 Hooks
- Added a run-time enable/disable control, for nested add/modify calls.
2014-09-09 23:36:45 -04:00
Paul Beckingham
1fc388886f Hooks
- Typos.
2014-09-09 23:19:39 -04:00
Paul Beckingham
51291f76fe Hooks
- Updated documentation and style of example hook scripts.
2014-09-09 23:09:24 -04:00
Paul Beckingham
ec0757b2c9 Hooks
- Added example of spelling correction via hook script.
2014-09-09 23:08:38 -04:00
Paul Beckingham
8e9e544376 Code Cleanup
- Source alignment. Pretty.
2014-09-09 22:23:02 -04:00
Paul Beckingham
2f03fc5d56 Unit Tests
- Added partial match tests for dates.
2014-09-09 22:19:26 -04:00
Paul Beckingham
a0736706e8 Variant
- Implemented same-day comparison for date types using the partial_match
  operator (=).
2014-09-09 22:11:40 -04:00
Renato Alves
b52e3fb85c L10N - Updates to por-PRT localization 2014-09-09 13:22:17 +01:00
Renato Alves
643533205a L10N - Typos is eng-USA localization 2014-09-09 13:22:17 +01:00
Paul Beckingham
eb92e8c0aa L10N
- Removed (recently) obsoleted strings from translation.
2014-09-09 07:22:58 -04:00
Fidel Mato
57fcba16cb L10N
- esp-ESP newly translated strings.
2014-09-09 07:21:13 -04:00
Paul Beckingham
a905518aea L10N
- Removed residual 'total active time' string that should have been deleted
  earlier.
2014-09-08 20:48:36 -04:00
Paul Beckingham
9f00e9279c L10N
- Removed remainin shadow file error strings that were not removed earlier.
2014-09-08 20:46:59 -04:00
Paul Beckingham
504d8c865b L10N
- Removed unused string leftover after removing unused text.cpp functions.
2014-09-08 20:30:55 -04:00
Fidel Mato
421f3c4a2c eng-USA typos
- Two small typos.
2014-09-08 20:24:20 -04:00
Paul Beckingham
a51dffc7e1 Unit Tests
- Corrected potential for 'modified' to show up in the report, in the
  infrequent case where the modification date was >= 1second ago.
2014-09-08 01:54:37 -04:00
Paul Beckingham
ce797c1e6e Unit Tests
- Upgraded to the new template.
2014-09-08 01:52:43 -04:00
Paul Beckingham
633d273ef3 Hooks
- Implemented replacement for shadow files, in the form of a hook
  script.
- Uses rc.shadow.command otherwise rc.default.command.
- Uses rc.shadow.file.
- Overrides settings that cause race conditions.
- Provides success and failure messages.
2014-09-08 01:38:09 -04:00
Paul Beckingham
a6c4c32ed7 CmdDiagnostics
- Represented the hooks master switch, rc.hooks, on the diagnostic output.
2014-09-08 01:27:32 -04:00
Paul Beckingham
78650ac8c3 Hooks
- Added a master control, rc.hooks, which defaults to 'on', but can be used
  to disable hook processing in general.
2014-09-08 01:22:35 -04:00
Paul Beckingham
150f72eed4 Shadow Files
- Removed the shadow file feature, which has caused much suffering since version
  1.4.3.
2014-09-08 01:09:24 -04:00
Paul Beckingham
7fdac6a09e Hooks
- Added an example hook script, on-exit.shadow-file, which simulates the now
  deprecated (soon to be removed) shadow file feature.
2014-09-08 00:51:21 -04:00
Paul Beckingham
6d36e7cd5b Unit Test
- Removed shadow.t tests ahead of removing the shadow feature, because it is
  broken already due to the removal of auto_commit. The feature will live on
  as an example hook script, using the same configuration variables perhaps.
2014-09-08 00:33:47 -04:00
Paul Beckingham
574aa06249 CmdUndo
- Removed TDB2::commit.
2014-09-08 00:26:39 -04:00
Paul Beckingham
3494a526d7 CmdTimesheet
- Removed TDB2::commit.
2014-09-08 00:26:14 -04:00
Paul Beckingham
e6801007bd CmdSync
- Removed TDB2::commit.
2014-09-08 00:25:36 -04:00
Paul Beckingham
dcbdf42264 CmdSummary
- Removed TDB2::commit.
2014-09-08 00:25:18 -04:00
Paul Beckingham
1950b28fa0 CmdStop
- Removed TDB2::commit.
2014-09-08 00:24:51 -04:00
Paul Beckingham
e70823e23f CmdStart
- Removed TDB2::commit.
2014-09-08 00:24:32 -04:00
Paul Beckingham
cee1b8aecc CmdProjects
- Removed TDB2::commit.
2014-09-08 00:24:04 -04:00
Paul Beckingham
84bddfbd34 CmdPrepend
- Removed TDB2::commit.
2014-09-08 00:23:33 -04:00
Paul Beckingham
784f4e068c CmdModify
- Removed TDB2::commit.
2014-09-08 00:23:00 -04:00
Paul Beckingham
95dcdfb968 CmdLog
- Removed TDB2::commit.
2014-09-08 00:22:38 -04:00
Paul Beckingham
bdce0a8d01 CmdImport
- Removed TDB2::commit.
2014-09-08 00:21:54 -04:00
Paul Beckingham
37722d2857 CmdIDs
- Removed TDB2::commit.
2014-09-08 00:21:25 -04:00
Paul Beckingham
9b14f53075 CmdHistory
- Removed TDB2::commit.
2014-09-08 00:20:47 -04:00
Paul Beckingham
e90a99140e CmdEdit
- Removed TDB2::commit.
2014-09-08 00:20:16 -04:00
Paul Beckingham
36748e5f7d CmdDuplicate
- Removed TDB2::commit.
2014-09-08 00:19:35 -04:00
Paul Beckingham
9246176588 CmdDone
- Removed TDB2::commit.
2014-09-08 00:19:07 -04:00
Paul Beckingham
177dda1dd4 CmdDenotate
- Removed TDB2::commit.
2014-09-08 00:16:24 -04:00
Paul Beckingham
77b3f70ba6 CmdDelete
- Removed TDB2::commit.
2014-09-08 00:15:59 -04:00
Paul Beckingham
9400aba1d1 CmdCustom
- Removed TDB2::commit.
2014-09-08 00:15:18 -04:00
Paul Beckingham
38001ed6ff CmdCount
- Removed TDB2::commit.
2014-09-08 00:14:47 -04:00
Paul Beckingham
0875f04bca CmdCalendar
- Removed TDB2::commit.
2014-09-08 00:13:46 -04:00
Paul Beckingham
4ceae16a24 CmdBurndown
- Removed TDB2::commit.
2014-09-08 00:12:57 -04:00
Paul Beckingham
6f68f8a1c0 CmdAppend
- Removed TDB2::commit.
2014-09-08 00:12:08 -04:00
Paul Beckingham
6d6c8b3ac1 CmdAnnotate
- Removed TDB2::commit.
2014-09-08 00:11:38 -04:00
Paul Beckingham
3bdaeb5f91 CmdAdd
- Removed TDB2::commit.
- Removed unnecessary return code.
2014-09-08 00:10:27 -04:00
Paul Beckingham
c4c25706ac Context
- Removed the auto_commit feature, because now every command call TDB2::commit,
  in case a hook script generated new tasks. This is harmless in NOP situations.
2014-09-08 00:08:05 -04:00
Paul Beckingham
f0a2f0d70e Context
- Restructured code that handles initialization failure, which was checking
  the rc value at each step, which is not necessary and confusing.
2014-09-08 00:06:41 -04:00
Paul Beckingham
d290b8792b Context
- Relocated Hooks::onLaunch call from the end of ::initialize to the beginning
  of ::run.
- Added a TDB2::commit between ::dispatch and Hooks::onExit.
2014-09-08 00:04:09 -04:00
Paul Beckingham
6dff1f36bf Hooks
- Added notes regarding the use of 'first', which may be problematic.
2014-09-08 00:01:54 -04:00
Paul Beckingham
fe549094e3 Task
- Added 'modified' attribute in ::validate, if not already present. This is not
  strictly necessary, but it is good to be explicit.
2014-09-07 23:24:07 -04:00
Paul Beckingham
5ce317bb48 Hooks
- Modified ::onExit to remove the indicator that data was modified. This is not
  supported.
2014-09-07 22:56:28 -04:00
Paul Beckingham
a9cf61c1d1 Hooks
- Removed code supporting data modification during the on-exit event.
- Fixed hook script interface descriptions.
2014-09-07 22:44:03 -04:00
Paul Beckingham
4b70a26e60 Hooks
- Clarified the interface for on-exit, as there is no opportunity for scripts
  triggered by this event to modify data directly.
2014-09-07 22:42:41 -04:00
Paul Beckingham
f47054c485 Hooks
- Added README describing the hook system.
- Corrected hook interface details regarding exit codes.
2014-09-07 22:13:31 -04:00
Paul Beckingham
9e45f5e637 Hooks
- Fixed typo in example hook scripts.
2014-09-07 21:59:31 -04:00
Paul Beckingham
01f2db4b48 Documentation
- Updated developer docs, in preparation for beta.
2014-09-07 21:28:34 -04:00
Paul Beckingham
e15907f3f1 Code Cleanup
- Removed unused uti.cpp indentTree function.
2014-09-07 17:32:46 -04:00
Paul Beckingham
adee92a6b9 Code Cleanup
- Removed unused util.cpp escape function.
2014-09-07 17:27:50 -04:00
Paul Beckingham
66bb5b3906 Code Cleanup
- Removed unused util.cpp encode and decode functions.
2014-09-07 17:25:47 -04:00
Paul Beckingham
a7171193ca Task
- Migrated util.cpp encode and decode functions because this is the only place
  they are used.
2014-09-07 17:23:16 -04:00
Paul Beckingham
bffc7a2ac8 Code Cleanup
- Removed unused util.cpp combine function.
2014-09-07 17:14:03 -04:00
Paul Beckingham
4aa79dccfa Code Cleanup
- Removed unused util.cpp round_up_to and burndown_size functions.
2014-09-07 17:10:06 -04:00
Paul Beckingham
ab95ef5ba5 CmdBurndown
- Migrated util.cpp round_up_to and burndown_size functions to CmdBurndown,
  as they are only called once.
2014-09-07 17:06:11 -04:00
Paul Beckingham
4f54578241 Code Cleanup
- Removed unused util.cpp compressIds function.
2014-09-07 16:57:05 -04:00
Paul Beckingham
dd6399aba7 CmdIDs
- Migrated util.cpp compressIds to CmdIDs::compressIds, as this is the only
  place it is used.
2014-09-07 16:54:59 -04:00
Paul Beckingham
8a31ccabdc Code Cleanup
- Removed unused util.cpp delay function.
2014-09-07 16:48:42 -04:00
Paul Beckingham
be104ee7c4 Code Cleanup
- Removed unused util.cpp confirm3 function.
2014-09-07 16:46:20 -04:00
Paul Beckingham
d9d5d004e6 Code Cleanup
- Removed unused text.cpp cutOff function.
2014-09-07 16:39:05 -04:00
Paul Beckingham
fdb4c1f1bc Code Cleanup
- Removed unused text.cpp visible function.
2014-09-07 16:35:51 -04:00
Paul Beckingham
6303f1c436 Code Cleanup
- Removed unused text.cpp guess function.
2014-09-07 16:30:27 -04:00
Paul Beckingham
f17c59b1f6 Code Cleanup
- Removed unused text.cpp split_minimal function.
2014-09-07 16:27:46 -04:00
Paul Beckingham
8a904fc287 Code Cleanup
- Removed unused text.cpp noVerticalSpace function.
2014-09-07 16:21:32 -04:00
Paul Beckingham
3f07173a03 Code Cleanup
- Removed unused text.cpp isWordEnd function.
2014-09-07 16:15:32 -04:00
Paul Beckingham
7890cf0ab7 Code Cleanup
- Removed unused text.cpp isWordStart function.
2014-09-07 16:12:06 -04:00
Paul Beckingham
c1806303a1 Code Cleanup
- Removed unused text.cpp isTokenEnd function.
2014-09-07 16:06:42 -04:00
Paul Beckingham
2f815a4c6a Unit Tests
- Added test to make sure that rc.default.command is used.
- Added test to make sure that the 'information' command is used when there are
  ID/UUID args but no command.
2014-09-07 14:52:57 -04:00
Paul Beckingham
eebe3b0806 Parser
- Changed ::injectDefaults from collectLeaf to collectTerminated, when scanning
  args to construct the "[task next]" feedback.
2014-09-07 14:51:24 -04:00
Paul Beckingham
9e3a8e5c82 Parser
- Restored default.command in ::injectDefaults.
- Restored 'information' command when an ID/UUID is provided, but no CMD.
2014-09-07 14:37:44 -04:00
Paul Beckingham
ac73a47f9b Parser
- Added the beginnings of the lex-only arg classification.
2014-09-07 13:40:29 -04:00
Paul Beckingham
090c80cb90 Parser
- Removed ::appendStdin.
2014-09-07 13:40:00 -04:00
Paul Beckingham
0da5f9160e STDIN
- Removed the stdin reading feature, which has not been enabled, and is more
  problematic than it should be.
2014-09-07 13:38:46 -04:00
Paul Beckingham
68fb1136cc Lexer
- Added notes about additional lexeme types that are needed, long term.
2014-09-07 13:37:46 -04:00
Paul Beckingham
9ddf447321 Unit Tests
- Added a new set of tests for date math. More of these should be added.
  Some fail and are disabled currently.
2014-09-07 11:22:09 -04:00
Paul Beckingham
803ef4fee2 CmdCustom
- Report filters are now properly lexed, which includes the new typeTag.
2014-09-07 01:20:14 -04:00
Paul Beckingham
aab23692f1 Lexer
- Added a new type Lexer::typeTag.
2014-09-07 01:17:48 -04:00
Paul Beckingham
0b9c84511b Tw-1407
- TW-1407 'task calendar 2014' leaks.
2014-09-06 23:56:32 -04:00
Paul Beckingham
363baa34aa Parser
- Added disqualifier characters for UUID lists.
2014-09-06 23:45:09 -04:00
Paul Beckingham
cb080e70de Parser
- Added disqualifier for id sequences in the form of a set of acceptable
  characters.  Prevents strange problems due to the 'split' calls that are used
  in the implementation.
2014-09-06 23:40:57 -04:00
Paul Beckingham
7c8432d162 Code Cleanup
- util.cpp execute was assuming execvp was returning before freeing memory,
  which is a waste of time.
2014-09-06 22:28:04 -04:00
Paul Beckingham
b4438b4e8f TW-1400
- TW-1400 task "" gives a segfault (thanks to Scott Kostyshak).
2014-09-06 17:22:27 -04:00
Paul Beckingham
04b2378d57 Context
- Removed unreachable code.
2014-09-06 16:47:34 -04:00
Paul Beckingham
ecc528cbf3 L10N
- Marked certain uses of ucFirst as l10n-safe.
2014-09-06 16:11:54 -04:00
Paul Beckingham
de5f41c6c5 Duration
- Cleaned up source formatting.
2014-09-06 15:39:20 -04:00
Paul Beckingham
861cc83e6d TW-241
- TW-241 new column format; recur.short.
- All duration columns now default to compact ISO duration format.
2014-09-06 15:38:25 -04:00
Paul Beckingham
d33de636f1 Fish
- Updated with new config completion.
- Restored completion that was broken by removing tabs.
2014-09-06 15:15:59 -04:00
Paul Beckingham
eae0580c29 Unit Tests
- Corrected test given new localized strings.
2014-09-06 14:45:09 -04:00
Paul Beckingham
84d7fca53f Feedback
- Inverted the test, and improved it.
2014-09-06 14:41:49 -04:00
Paul Beckingham
9b85f8fff2 Unit Tests
- Corrected tests given feedback changes.
2014-09-06 14:38:57 -04:00
Paul Beckingham
0d2f9c6f1c Unit Tests
- Corrected unit tests, given l10n string changes.
- Upgraded to use the new template.
2014-09-06 14:16:22 -04:00
Paul Beckingham
02b2b9b212 Fish
- Updated task.fish (thanks to Roman Inflianskas).
2014-09-06 12:14:28 -04:00
Paul Beckingham
11c013d88c Tw-1409
- TW-1409 Allow "1 of N tasks remaining" to be correctly localized (thanks to
          Jeremy John Reeder).
2014-09-05 16:51:00 -04:00
Roman Inflianskas
f2c9be6c59 TW-1403
- TW-1403 fish shell: no option "modify" after task selection (thanks to Roman
          Infliansksas).

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-08-31 17:31:37 -04:00
Paul Beckingham
386b7fe9b6 TW-248
- TW-248 Substitute text doesn't work with forward slash (thanks to Jostein
         Berntsen).
2014-08-31 17:13:12 -04:00
Paul Beckingham
a7cd985f23 TW-15
- TW-15 'task recurring' shows only children of recurring tasks (thanks to
        Louis-Claude Canon).
2014-08-31 17:04:35 -04:00
Paul Beckingham
259dd94775 Config
- Removed precautionary whitespace that was inserted into report filters when
  we discovered that problem with the parser.  Time to bravely eliminate this
  workaround.
2014-08-31 17:02:37 -04:00
Paul Beckingham
d24d054630 TW-21
- TW-21 do not match a UDA if not followed by colon (thanks to Scott Kostyshak).
2014-08-31 16:56:12 -04:00
Paul Beckingham
258f79c1f9 TW-99
- TW-99 info report streamlining.
2014-08-31 16:27:42 -04:00
Paul Beckingham
0d82c96104 Documentation
- Updated ChangeLog for TW-268.
2014-08-31 13:41:18 -04:00
Paul Beckingham
2e3be1c5a0 Task
- Now decodes backslashes on annotation add.
2014-08-31 13:26:06 -04:00
Paul Beckingham
bd4a7081c1 Task
- Now decodes backslashes on attribute set.
2014-08-31 13:25:46 -04:00
Paul Beckingham
819d15b2a1 Unit Tests
- Not enough backslashes in the unit test, and taskwarrior will need to add
  an extra decode on Task::set and Task::addAnnotaiton.
2014-08-31 13:24:38 -04:00
Paul Beckingham
0f3a8073f0 Unit Tests
- Removed unnecessary backslashes in the unit test.  It was confusing and
  testing the wrong thing.
2014-08-31 13:23:40 -04:00
Paul Beckingham
90643635cd Unit Tests
- Removed excessive tests that add nothing.
2014-08-31 13:06:58 -04:00
Paul Beckingham
fe7683db4a Unit Tests
- Removed backslash.t, which duplicates tests in bug.879.t.
2014-08-31 13:03:02 -04:00
Paul Beckingham
4c98328277 JSON
- Corrected misleading comment.
2014-08-31 12:25:41 -04:00
Paul Beckingham
3c29e81995 Unit Tests
- Upgraded to use the new template.
2014-08-31 11:57:06 -04:00
Paul Beckingham
8b682d8565 Calc
- Now that Eval diagnostics in debug mode go to Context, they must be retrieved
  and displayed.
2014-08-31 11:20:46 -04:00
Paul Beckingham
7a85554924 TW-1405
- TW-1405 Add command _zshattributes (thanks to Roman Inflianskas).
2014-08-31 11:01:53 -04:00
Paul Beckingham
a77e50b441 Eval
- Converted from std::cout to Context::debug.  This is in preparation for
  supporting multiple debug levels.
2014-08-31 10:20:18 -04:00
Paul Beckingham
ad4d063252 Text Formatting
- Added another formatter.  Time for variadics?
2014-08-31 10:19:48 -04:00
Paul Beckingham
a894a3dedb TW-262
- TW-262 Attribute modifiers not working within parentheses (thanks to Johannes
         Schlatow).
2014-08-31 09:45:42 -04:00
Paul Beckingham
ae667a7e9e Code Cleanup
- Removed unused tips files, and associated references (thanks to dev-zero).
2014-08-31 09:20:21 -04:00
Paul Beckingham
72210ec2ac L10N
- Updated Python to 2.7, to match that used in hte unit tests.
2014-08-31 08:48:13 -04:00
Jeremy John Reeder
41e6282052 French localization updates.
Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-08-31 08:47:43 -04:00
Jeremy John Reeder
aaeec413ab Esperanto localization updates.
Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-08-31 08:47:05 -04:00
Paul Beckingham
f5908f6514 Tree
- Simplified ::removeAllBranches, and in so doing, eliminated a segfault on
  some OSes.  No idea why.
2014-08-31 01:03:55 -04:00
Paul Beckingham
c21bacedf6 Unit Tests
- Upgraded to use the new template.
2014-08-31 00:14:49 -04:00
Paul Beckingham
ebd7bf99f0 Portability
- Moved stdio.h to be (almost) first in the include order, to prevent and other
  include from in turn including stdio.h without first defining _WITH_GETLINE.
2014-08-31 00:05:08 -04:00
Paul Beckingham
60260fb813 Hooks
- Removed obsolete ::execute method, instead relying on the util.cpp variant.
2014-08-30 23:53:59 -04:00
Paul Beckingham
7a765b186e Portability
- Changed include ordering, for FreeBSD.
2014-08-30 23:44:51 -04:00
Paul Beckingham
df744d5c98 Code Cleanup
- Removed unused util.cpp ::execute variant.
2014-08-30 23:43:58 -04:00
Paul Beckingham
284146162f Portability
- Added _WITH_GETLINE for FreeBSD.
2014-08-30 23:38:11 -04:00
Paul Beckingham
b4ab5fcfac CmdCalendar
- Replaced code that tried to reuse the Context object to reparse the command
  line in order to run the calendar.details.report, with a fork/exec alternative
  that doesn't require acrobatics.
2014-08-30 23:33:47 -04:00
Paul Beckingham
07b7fe4541 Util
- Added new 'execute' function that provides input and captures output.
2014-08-30 23:31:23 -04:00
Paul Beckingham
273d9fe070 Hooks
- Code cleanup.
2014-08-30 23:29:30 -04:00
Paul Beckingham
820c327a81 Util
- Made arg vector const.
- Applied coding conventions.
2014-08-30 23:27:49 -04:00
Paul Beckingham
ff8bc79b8f Unit Tests
- Upgraded to use the new template.
2014-08-30 17:41:22 -04:00
Paul Beckingham
51aa9a5e3e Unit Tests
- Corrected test that assumed $rc was more than just basename.
2014-08-30 17:14:16 -04:00
Paul Beckingham
7862c70fa3 Unit Tests
- Upgraded to usethe new template.
2014-08-30 16:32:11 -04:00
Paul Beckingham
3e8a2c86ec Unit Tests
- Upgraded to use the new template.
2014-08-30 15:44:13 -04:00
Paul Beckingham
281ee18400 Unit Tests
- Corrected unit tests which now pass, but never did before.
2014-08-30 15:42:01 -04:00
Paul Beckingham
a503a02663 Parser
- Rewrote ::insertOr to only operate at the ORIGINAL node level, which is
  appropriate for this operation.
2014-08-30 15:36:08 -04:00
Jeremy John Reeder
a471120e18 Updated grammar in epo-RUS.h localization.
Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-08-30 15:02:26 -04:00
Paul Beckingham
02bd52d675 Unit Tests
- Test was failing to remove the rc file.
2014-08-28 17:25:52 -04:00
Paul Beckingham
40d72c3cd9 L10N
- Moved all the localizations into a subdirectory.  Because there are 7 now.
2014-08-28 17:25:10 -04:00
Paul Beckingham
d5fed80dcd Unit Tests
- Changes in debug output broke a test.  Reduced string matching to make the
  tests more durable.
2014-08-27 07:07:42 -04:00
Paul Beckingham
3a91a0d798 Unit Tests
- Upgraded to the new template.
2014-08-27 07:00:19 -04:00
Paul Beckingham
2c8d795f21 L10N
- Added completed Esperanto translation (thanks to Jeremy John Reeder).
2014-08-26 23:40:34 -04:00
Paul Beckingham
d96c79f47c L10N
- Renamed epo-EPO to epo-RUS, which is where Esperanto originated.
2014-08-26 23:39:01 -04:00
Paul Beckingham
aa156412b5 Context
- Reorganized ::inintialize sequence regarding Parser::initialize and the need
  for the rc file to be loaded (and/or overridden) before full parsing could
  proceed.
2014-08-26 23:28:04 -04:00
Paul Beckingham
f87ead8804 Parser
- Fixed bug where ::findAttribute and ::findAttributeModifier were scanning
  all nodes, but thinking that '--' was a tag, not a raw value.
2014-08-26 23:26:49 -04:00
Paul Beckingham
3f519785d8 Parser
- Added static method to scan argv[] for overrides without a parse tree, so
  that any rc:<file> arguments can be used to locate the rc file, load it, and
  proceed with command line parsing which relies on things like rc.dateformat.
2014-08-26 23:25:08 -04:00
Paul Beckingham
4077c4d605 Unit Tests
- Upgraded to use the new template.
2014-08-24 22:03:53 -04:00
Paul Beckingham
6081ba6886 Unit Tests
- Upgraded to use the new template.
2014-08-24 22:02:36 -04:00
Paul Beckingham
011e3920fa Unit Tests
- Upgraded to use the new template.
2014-08-24 22:01:35 -04:00
Paul Beckingham
88e022a8d6 Unit Tests
- Upgraded to use the new template.
2014-08-24 22:00:37 -04:00
Paul Beckingham
0ea0a3abcb Unit Tests
- Upgraded to use the new template.
2014-08-24 21:59:40 -04:00
Paul Beckingham
ab881d99fa Unit Tests
- Upgraded to use the new template.
2014-08-24 21:58:52 -04:00
Paul Beckingham
d5e8a2fa16 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:57:46 -04:00
Paul Beckingham
8a27f9e091 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:55:27 -04:00
Paul Beckingham
25be784cf5 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:53:49 -04:00
Paul Beckingham
4e57c6002e Unit Tests
- Upgraded to use the new template.
2014-08-24 21:52:51 -04:00
Paul Beckingham
1dba267120 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:51:29 -04:00
Paul Beckingham
70b80331e6 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:50:33 -04:00
Paul Beckingham
10d41796ab Unit Tests
- Upgraded to use the new template.
2014-08-24 21:47:46 -04:00
Paul Beckingham
59a5853368 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:46:07 -04:00
Paul Beckingham
f5b5439233 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:44:01 -04:00
Paul Beckingham
0b471401cb Unit Tests
- Upgraded to use the new template.
2014-08-24 21:42:42 -04:00
Paul Beckingham
333fd945f6 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:41:45 -04:00
Paul Beckingham
7488d464fc Unit Tests
- Upgraded to use the new template.
2014-08-24 21:40:21 -04:00
Paul Beckingham
038ad9aa2a Unit Tests
- Upgraded to use the new template.
2014-08-24 21:39:08 -04:00
Paul Beckingham
743d4dd155 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:38:00 -04:00
Paul Beckingham
9f934925c5 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:35:21 -04:00
Paul Beckingham
fccf30d0e3 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:32:13 -04:00
Paul Beckingham
ad267a9fd6 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:31:14 -04:00
Paul Beckingham
a0e5fb11ef Unit Tests
- Upgraded to use the new template.
2014-08-24 21:29:40 -04:00
Paul Beckingham
959d3cb07d Unit Tests
- Upgraded to use the new template.
2014-08-24 21:28:20 -04:00
Paul Beckingham
90e43fa6f8 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:27:24 -04:00
Paul Beckingham
6be552939a Unit Tests
- Upgraded to use the new template.
2014-08-24 21:26:06 -04:00
Paul Beckingham
1237a4af10 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:24:41 -04:00
Paul Beckingham
5c194f4847 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:23:55 -04:00
Paul Beckingham
bd12ae96e3 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:22:57 -04:00
Paul Beckingham
e077b5bd34 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:22:04 -04:00
Paul Beckingham
f7b5ba2312 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:21:08 -04:00
Paul Beckingham
1138f6f896 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:20:03 -04:00
Paul Beckingham
82f6d82453 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:18:58 -04:00
Paul Beckingham
12b44d3b15 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:17:48 -04:00
Paul Beckingham
b2b1d82abd Unit Tests
- Upgraded to use the new template.
2014-08-24 21:16:26 -04:00
Paul Beckingham
a84b02ed8f Unit Tests
- Upgraded to use the new template.
2014-08-24 21:15:27 -04:00
Paul Beckingham
2fb2db5957 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:14:35 -04:00
Paul Beckingham
4b59bef64d Unit Tests
- Upgraded to use the new template.
2014-08-24 21:13:38 -04:00
Paul Beckingham
f05abc3ddb Unit Tests
- Upgraded to use the new template.
2014-08-24 21:12:39 -04:00
Paul Beckingham
fc14b283c5 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:11:33 -04:00
Paul Beckingham
353a972802 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:10:29 -04:00
Paul Beckingham
959d59d48d Unit Tests
- Upgraded to use the new template.
2014-08-24 21:09:19 -04:00
Paul Beckingham
f7e5653199 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:08:22 -04:00
Paul Beckingham
ba09dc3198 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:07:16 -04:00
Paul Beckingham
e1908b6714 Unit Tests
- Upgraded to use the new template.
2014-08-24 21:05:46 -04:00
Paul Beckingham
f7deb37174 Unit Tests
- Upgraded to use new template.
- Removed misleading comments.
2014-08-24 17:26:15 -04:00
Paul Beckingham
7f87ebdee8 Unit Tests
- Upgraded to use the new template.
2014-08-24 17:22:26 -04:00
Paul Beckingham
0e701fdad6 Unit Tests
- Upgraded to use the new template.
2014-08-24 17:21:24 -04:00
Paul Beckingham
bb5d0dbb73 Unit Tests
- Upgraded to use the new template.
2014-08-24 17:20:05 -04:00
Paul Beckingham
a93bc08da9 Unit Tests
- Upgraded to use the new template.
2014-08-24 17:19:10 -04:00
Paul Beckingham
e8ef317282 Unit Tests
- Upgraded to use the new template.
2014-08-24 17:18:15 -04:00
Paul Beckingham
7381710c13 Unit Tests
- Upgraded to use the new template.
2014-08-24 17:16:13 -04:00
Paul Beckingham
f0777a14ba Unit Tests
- Upgraded to use the new template.
2014-08-24 17:14:43 -04:00
Paul Beckingham
b9384be943 Unit Tests
- Upgraded to use the new template.
2014-08-24 17:12:52 -04:00
Paul Beckingham
330d27c85a Unit Tests
- Upgraded to use the new template.
2014-08-24 17:11:40 -04:00
Paul Beckingham
9db5e344ba Unit Tests
- Upgraded to use the new template.
2014-08-24 17:10:36 -04:00
Paul Beckingham
59dc22feda Unit Tests
- Upgraded to use the new template.
2014-08-24 17:09:15 -04:00
Paul Beckingham
b7e9917c1f Unit Tests
- Upgraded to use the new template.
2014-08-24 17:07:47 -04:00
Paul Beckingham
801fba4e36 Unit Tests
- Upgraded to use the new template.
2014-08-24 17:06:35 -04:00
Paul Beckingham
064044d289 Unit Tests
- Upgraded to use the new template.
2014-08-24 17:04:49 -04:00
Paul Beckingham
669bf6adbb Unit Tests
- Upgraded to use the new template.
2014-08-24 17:00:59 -04:00
Paul Beckingham
db38534940 Unit Tests
- Upgraded to use the new template.
2014-08-24 16:59:15 -04:00
Paul Beckingham
299827cfb0 Unit Tests
- Upgraded to use the new template.
2014-08-24 16:58:18 -04:00
Paul Beckingham
e93647908e Unit Tests
- Upgraded to use the new template.
2014-08-24 16:56:14 -04:00
Paul Beckingham
7e460f10d1 Parser
- Removed parser upgrade diagnostics, as tw is now stable.
2014-08-24 16:46:39 -04:00
Paul Beckingham
59ffcd858e Parser
- ::findAttribute was not considering all nodes, and failed to remove the "?" tag.
2014-08-24 16:37:17 -04:00
Paul Beckingham
8b904a57f4 Parser
- ::findPattern was performing the wrong scan, and needed branch pruning outside
  the iterator loop.
2014-08-24 16:09:30 -04:00
Paul Beckingham
ce7f6b6492 Unit Tests
- Updated to use the new template.
2014-08-24 15:57:15 -04:00
Paul Beckingham
ba72377209 Unit Tests
- feature.exit.t was not properly converting the return value from a system()
  call to an exit status.
2014-08-24 15:53:35 -04:00
Paul Beckingham
62dc276f0b Unit Tests
- Corrected tests that are no longer valid.
2014-08-24 15:35:05 -04:00
Paul Beckingham
02aed51196 Unit Tests
- Updateض to use the new template.
2014-08-24 15:29:14 -04:00
Paul Beckingham
961b4ade9b Parser
- ::findPattern now scans all nodes.
2014-08-24 15:25:10 -04:00
Paul Beckingham
dac6a9ced5 Parser
- ::resolveAliases needs to scan all nodes.
2014-08-24 15:22:10 -04:00
Paul Beckingham
c446786d46 Parser
- ::getDataLocation needs to scan all nodes.  You'd think I'd learn this by now.
2014-08-24 15:17:14 -04:00
Paul Beckingham
ae4a4e01bc Unit Tests
- Upgraded to use new template.
2014-08-24 14:07:47 -04:00
Paul Beckingham
dd9dc2e9f3 Unit Tests
- Upgraded to use new template.
2014-08-24 14:07:22 -04:00
Paul Beckingham
bf533df39c Parser
- Commented out all diagnostics, as we converge on stable.
2014-08-24 14:06:50 -04:00
Paul Beckingham
06210056f8 Parser
- Corrected comments for accuracy.
2014-08-24 13:54:00 -04:00
Paul Beckingham
a2763a275c Parser
- Code cleanup for ::findCommand.
2014-08-24 13:25:12 -04:00
Paul Beckingham
ce914a31f9 Parser
- Code cleanup of ::findTerminator.
2014-08-24 13:23:19 -04:00
Paul Beckingham
0a4dcc1a21 Parser
- Code cleanup of ::findBinary.
2014-08-24 13:21:51 -04:00
Paul Beckingham
f898953a2e Parser
- ::findIdSequence now safely removes nodes out of the iterator loop.
2014-08-24 13:14:52 -04:00
Paul Beckingham
4f1b63ff02 Documentation
- Added missing docs for deprecated fæature.
2014-08-24 13:00:32 -04:00
Paul Beckingham
df80050c13 Parser
- ::findUUIDList now safely removes nodes out of the iterator loop.
2014-08-24 12:53:50 -04:00
Paul Beckingham
f6c422385b Unit Tests
- Removed misleadign comment.
2014-08-24 12:27:38 -04:00
Paul Beckingham
94b47cddc0 Unit Tests
- Upgraded to match new template.
2014-08-24 12:19:49 -04:00
Paul Beckingham
c46f8a4626 Parser
- ::findTerminator needs to scan all nodes.
2014-08-24 12:15:15 -04:00
Paul Beckingham
bc3dc1e50e Tree
- Removed pointers from ::dumpNode, which are useful for debugging new/delete,
  but simply noise at other times.
2014-08-24 12:12:07 -04:00
Paul Beckingham
e353d8eb8b Parser
- ::findModifications code cleanup.
- ::findStrayModifications now prunes nodes out of the iterator loop.
2014-08-23 17:34:16 -04:00
Paul Beckingham
13e49f6b00 Parser
- ::findAttributeModifier now repeats without breaking the iterator.
2014-08-23 17:27:10 -04:00
Paul Beckingham
37614ac6b3 Parser
- ::findAttribute now repeats without breaking the iterator.
2014-08-23 17:26:28 -04:00
Paul Beckingham
63808b8920 Unit Tests
- Updated 'run' test script to use 'task' instead of the defunct 'args' program.
2014-08-23 17:13:42 -04:00
Paul Beckingham
7e04e307c3 Unit Tests
- Updated op_or.t to the current template.
2014-08-23 17:13:06 -04:00
Paul Beckingham
110fedb18f Parser
- Removed diagnostics from override handling.
2014-08-23 17:09:50 -04:00
Paul Beckingham
711ababc76 Parser
- ::getLimit now scans all nodes.
2014-08-23 16:01:58 -04:00
Paul Beckingham
bc17bf7cbe Parser
- ::findCommand needs to scan all nodes, to find an existing CMD.
2014-08-23 14:59:57 -04:00
Paul Beckingham
312ffe7463 Parser
- Clarified an important comment.
2014-08-23 13:32:26 -04:00
Paul Beckingham
5b5adc4240 Parser
- ::findBinary no longer requires diagnostics.
2014-08-23 13:31:48 -04:00
Paul Beckingham
af77e2e150 Parser
- Modified ::findTag to perform one action and repeat, rather than attempt
  everything at once, with an invalid iterator.
2014-08-23 13:08:52 -04:00
Paul Beckingham
2ce350b3bf AUTHORS
- Added Peter, reporter of a fixed bug.
2014-08-23 12:21:34 -04:00
Paul Beckingham
25ac584466 TW101
- Renamed bug.101.t to tw-101.t, which is basically namespace resolution.
- Typo in NEWS.
2014-08-23 12:11:03 -04:00
atomicules
87f9d548df TW-101 - New description column format: Truncated WITH annotation count
Adds a "truncated with annotation count" column style for the
description field and corresponding unit test.
2014-08-23 12:05:00 -04:00
atomicules
7c6618e50a TLSServer/Client need to include <errno.h> on NetBSD
Same fix applied as per Solaris. See TD-55 and
c60ec0b6ee
2014-08-23 12:05:00 -04:00
Paul Beckingham
0313057446 L10N
- Esperanto localization (thanks to Jeremy John Reeder).
2014-08-23 11:42:50 -04:00
Paul Beckingham
4a07f4e546 Parser
- ::findModifications moves branch pruning out of the iterated loop.
2014-08-22 23:52:24 -04:00
Paul Beckingham
d6ad010085 Parser
- ::findOperator moves brnach pruning outside the iterated loop.
2014-08-22 23:50:54 -04:00
Paul Beckingham
e26f0f0dc9 Parser
- ::findSubstitution moves branch prining out of the iterated loop.
2014-08-22 23:49:06 -04:00
Paul Beckingham
6753176d89 Parser
- ::findPattern moves branch pruning out of the iterated loop.
2014-08-22 23:47:54 -04:00
Paul Beckingham
1b39a03e96 Parser
- ::applyOverrides looks at all nodes.
2014-08-22 23:47:07 -04:00
Paul Beckingham
dbc55b5f73 Parser
- ::findOverrides moves branch pruning out of the iterated loop.
- Now scans all nodes.
2014-08-22 23:45:33 -04:00
Paul Beckingham
3fce252461 Parser
- ::findCommand moves branch pruning out of the iterated loop.
2014-08-22 23:44:18 -04:00
Paul Beckingham
6dad8ddb1b Parser
- ::findTerminator now moves branch pruning out of the iterated loop.
2014-08-22 23:42:58 -04:00
Paul Beckingham
9f9c07a955 Parser
- In ::findBinary, it is not necessary to prune branches.
2014-08-22 23:41:57 -04:00
Paul Beckingham
62725c97e4 Merge branch '2.4.0' of ssh://git.tasktools.org/tm/task into 2.4.0 2014-08-22 22:38:16 -04:00
Paul Beckingham
d4adf13b69 Parser
- Made use of the other ::collect variants.
2014-08-22 22:37:53 -04:00
Paul Beckingham
3aef4f74b9 Parser
- Rewrote ::collect to be simpler.
2014-08-22 22:36:10 -04:00
Paul Beckingham
a735c7eb63 CmdInfo
- Removed the 'total active time' display.  Should have done this a long time ago.
2014-08-22 16:08:16 -04:00
Paul Beckingham
079669e73b Parser
- Modified ::getWords to look at all nodes, including parents.
2014-08-22 16:07:31 -04:00
Paul Beckingham
8376d99e88 Tree
- Added node pointer to ::dump output.  Helps debugging.
2014-08-22 16:07:03 -04:00
Paul Beckingham
f59be41389 Unit Tests
- Updated to use new template.
2014-08-19 00:00:21 -04:00
Paul Beckingham
c371af75b2 Parser
- Fixed ::findStrayModifications to identify the right node to upgrade.
2014-08-18 23:55:48 -04:00
Paul Beckingham
a2a69e94fc Unit Tests
- Updated to use new template.
2014-08-18 23:45:08 -04:00
Paul Beckingham
e81a95c8f7 Unit Tests
- Updated to use new template.
2014-08-18 23:29:09 -04:00
Paul Beckingham
e9f71b152c Parser
- Migrated from Boolean to tristate ::collect method.
2014-08-18 23:18:41 -04:00
Paul Beckingham
4447200357 Parser
- Upgraded the 'bool all' argument to ::collect to a tri-state enum, in a
  polymorphic method.
2014-08-18 23:10:14 -04:00
Paul Beckingham
118f930fad Parser
- Improved, but did not fix, ::insertOr, regarding insertion of nodes into
  _tree and not nodes.  There is still a problem.
2014-08-17 23:39:59 -04:00
Paul Beckingham
6635cd9d84 Parser
- Corrected indirect node insertion, which must be into _tree, not into
  nodes.
2014-08-17 23:39:06 -04:00
Paul Beckingham
293f4d6258 Parser
- ::initialize now recognizes more things it should not lex.
2014-08-17 17:10:13 -04:00
Paul Beckingham
cfc5c08777 Unit Tests
- Updated add.t to the new template.
2014-08-17 16:35:08 -04:00
Paul Beckingham
f9aa34cb67 Parser
- When ::findPlainArgs promotes a WORD to a PATTERN, it needs to move the FILTER
  tag down to the child nodes.
2014-08-17 16:04:50 -04:00
Paul Beckingham
37bf45b696 Parser
- ::insertOr and ::insertAnd must use nodes, not _tree->_branches.
2014-08-17 15:53:49 -04:00
Paul Beckingham
a1ba3df7fb Parser
- ::getLimit does not need to manually skip TERMINATOR nodes.
2014-08-17 15:53:16 -04:00
Paul Beckingham
ea7afa112b Parser
- ::applyOverrides scans all nodes, and must manually skip TERMINATOR.
2014-08-17 15:52:42 -04:00
Paul Beckingham
e2b6e9b65e Parser
- ::getOverrides scans all nodes, and must manually skip TERMINATOR.
2014-08-17 15:51:58 -04:00
Paul Beckingham
075eb4ca74 Parser
- ::findFilter must scan all nodes.
2014-08-17 15:51:28 -04:00
Paul Beckingham
6920b022b2 Parser
- ::findMissingOperators scans all nodes.
2014-08-17 14:38:19 -04:00
Paul Beckingham
1b60478bc7 Parser
- ::findPlainArgs scans all nodes.
2014-08-17 14:37:57 -04:00
Paul Beckingham
ddb5313747 Parser
- ::findStrayModifications scans all nodes.
2014-08-17 14:37:37 -04:00
Paul Beckingham
06b41218c5 Parser
- ::findModifications scans all nodes.
2014-08-17 14:37:17 -04:00
Paul Beckingham
d9e26c3a95 Parser
- ::applyOverrides scans all nodes.
2014-08-17 14:36:55 -04:00
Paul Beckingham
a4b43c2604 Parser
- ::getOverrides scans all nodes.
2014-08-17 14:36:25 -04:00
Paul Beckingham
3eb611057d Parser
- When locating a command, all nodes must be scanned, not just the unknown ones.
2014-08-17 14:30:19 -04:00
Paul Beckingham
bea4c6fd77 Parser
- On initialization, bypass lexing for argv[0] (program name) and any
  'rc:' and 'rc.' arguments.
2014-08-17 14:29:25 -04:00
Paul Beckingham
a3d2750f40 Parser
- Converted all remaining methods to use collect.  Now there is full recursion
  everywhere, which means the parse tree can be arbitrarily deep.
2014-08-17 13:41:17 -04:00
Paul Beckingham
dff7dae3bc Parser
- Modified ::findMissingOperators to use collect.
2014-08-17 13:31:49 -04:00
Paul Beckingham
f4807db6d9 Parser
- Modified ::findPlainArgs to use collect.
2014-08-17 13:27:46 -04:00
Paul Beckingham
1f0ce08042 Parser
- Modified ::findStrayModifications to use collect.
2014-08-17 13:24:31 -04:00
Paul Beckingham
d7ba49084b Parser
- Modified ::findModifications to use collect.
2014-08-17 13:22:25 -04:00
Paul Beckingham
4425f5e142 Parser
- Modified ::findFilter to use collect.
2014-08-17 13:20:56 -04:00
Paul Beckingham
eb00230840 Parser
- Modified ::findIdSequence to use collect.
2014-08-17 13:17:43 -04:00
Paul Beckingham
9111866f80 Parser
- Modified ::findUUIDList to use collect.
2014-08-17 13:15:57 -04:00
Paul Beckingham
2018eae295 Parser
- Removed now-unused ::scan method, as this is no longer used.
2014-08-17 13:06:50 -04:00
Paul Beckingham
ca3b5c9a4d Parser
- Modified ::findOperator to use collect.
2014-08-17 12:40:14 -04:00
Paul Beckingham
a13c816919 Parser
- Modified ::findAttributeModifier to use collect.
2014-08-17 12:33:30 -04:00
Paul Beckingham
56ab8e7920 Parser
- Modified ::findAttribute to use collect.
2014-08-17 12:28:40 -04:00
Paul Beckingham
ed07e47135 Parser
- Modified ::findTag to use collect.
2014-08-17 12:25:08 -04:00
Paul Beckingham
6dd359e900 Parser
- Modified ::findPattern to use collect.
2014-08-17 12:22:03 -04:00
Paul Beckingham
a4f558ee1c Parser
- Converted ::findSubstitution to use collect.
2014-08-17 12:18:35 -04:00
Paul Beckingham
50ac189693 Parser
- Converted ::applyOverrides to use collect.
2014-08-17 12:18:01 -04:00
Paul Beckingham
bbff0123b0 Parser
- Modified ::resolveAliases to use collect.
2014-08-17 12:12:11 -04:00
Paul Beckingham
4645bbc85d Parser
- Modified ::findOverrides to use collect.
2014-08-17 12:10:51 -04:00
Paul Beckingham
f1a61aaeb6 Parser
- Modified ::findCommand to use collect.
2014-08-17 12:10:08 -04:00
Paul Beckingham
4ef7d9c7fb Parser
- Modified ::findTerminator to look at all nodes.
2014-08-17 12:08:56 -04:00
Paul Beckingham
fbf8550274 Parser
- ::findBinary diagnostics.
2014-08-17 12:07:31 -04:00
Paul Beckingham
d1e38a7843 Parser
- Converted ::findTerminator to use collect.
2014-08-17 11:56:34 -04:00
Paul Beckingham
b84736a05f Parser
- Added ::collect method for recursive node gathering that needs some local
  persistence.
2014-08-17 11:37:08 -04:00
Paul Beckingham
6a9cca82d7 Parser
- Converted ::findOperator to use recursive scan.
2014-08-17 01:33:41 -04:00
Paul Beckingham
34215449a8 Parser
- Converted ::findTag to use recursive scan.
2014-08-17 01:20:10 -04:00
Paul Beckingham
c681017961 Parser
- Converted ::findSubstitution to use recursive scan.
2014-08-17 01:17:05 -04:00
Paul Beckingham
0e86233a0a Parser
- Converted ::findPattern to use recursive scan.
2014-08-17 01:13:01 -04:00
Paul Beckingham
4b47229e8f Parser
- Marked ::resolveAliases as needing recursion.
2014-08-17 01:07:27 -04:00
Paul Beckingham
989c503446 Parser
- Converted ::findAttribute to use recusive ::scan.
2014-08-17 01:04:08 -04:00
Paul Beckingham
3a8d42dae7 Parser
- Converted ::findAttributeModifier to use the recursive scanner.
2014-08-17 00:49:20 -04:00
Paul Beckingham
24c2c0cbee Parser
- ::scan should skip nodes tagged with both TERMINATOR and TERMINATED.
2014-08-17 00:43:26 -04:00
Paul Beckingham
ccecec6895 Parser
- Lexemes not immediately recognized in ::initialize MUST be tagged with "?".
2014-08-17 00:42:23 -04:00
Paul Beckingham
3c612a8551 Parser
- Converted ::findTerminator to use the recursive scanner.
2014-08-17 00:41:11 -04:00
Paul Beckingham
fb32b160b8 Parser
- Corrected comment regarding instantly recognized lexemes in ::initialize.
2014-08-17 00:31:45 -04:00
Paul Beckingham
7848b9284d Parser
- Modified ::scan to be recursive, which will now allow arbitrary parse tree
  depth.
2014-08-17 00:26:41 -04:00
Paul Beckingham
3145134953 Parser
- Improved comment. It's an important comment.
2014-08-16 23:53:56 -04:00
Paul Beckingham
314ac28a0f Parser
- Implemented ::scan, which iterates over parse tree nodes and calls back.
  This method skips parent nodes, terminated nodes, and nodes without the '?'
  tag.
2014-08-16 23:53:22 -04:00
Paul Beckingham
1a17aac77b TW-1377
- TW-1377 Tags in default.command are treated as "operator text".
2014-08-16 16:38:04 -04:00
Paul Beckingham
b540257a34 Config
- The 'blocking' report has no business reporting a 'parent' column.
2014-08-16 16:20:14 -04:00
Paul Beckingham
5c6c14e21b TW-1381
- TW-1381 blocking report exits with "Unknown error" and exit code 3.
2014-08-16 16:14:28 -04:00
Paul Beckingham
77047cf07c Column
- Added a missing method to access Column::_name.
2014-08-16 16:12:46 -04:00
Paul Beckingham
b235b6ca60 Config
- Consistent ordering, for readability and easy comparison.
2014-08-16 14:44:56 -04:00
Paul Beckingham
69eb9e8df1 CmdDuplicate
- When duplicating a task, reset the ID, so that TDB2::add can set it properly.
2014-08-16 14:26:05 -04:00
Paul Beckingham
6faf6bb678 TDB2
- Now updates the task ID of any new task, therefore avoiding off-by-one
  errors that occur when code calls TDB2::next_id.
2014-08-16 14:20:00 -04:00
Paul Beckingham
45e6512c02 Unit Tests
- Updated uda_value.t to the new template.
2014-08-16 14:05:37 -04:00
Paul Beckingham
9551a3c554 Documentation
- Cleaned up ChangeLog errors.
2014-08-16 11:52:11 -04:00
Paul Beckingham
fa4fba6573 Code Cleanup
- Corrected comment which was saying the opposite of what happens.
2014-08-16 10:50:05 -04:00
Paul Beckingham
ce07b9ba7b Code Cleanup
- Removed unused attribute lookup from Task::validate.
2014-08-16 10:46:55 -04:00
Paul Beckingham
e91a6a1897 Color
- Removed obsolete second index for color.
2014-08-16 10:40:18 -04:00
Paul Beckingham
55fddd66d1 Unit Tests
- Updated uda_defaults to the new template.
2014-08-16 10:17:01 -04:00
Paul Beckingham
05b1d30c0a Unit Tests
- Removed unnecessary REPO_DIR.
2014-08-11 13:10:29 -04:00
Paul Beckingham
7adadc6d12 Unit Tests
- Added filter-empty.t to test the safety valve overrides.
2014-08-11 12:33:21 -04:00
Paul Beckingham
1ccc284cc7 Safety Valve Override
- Support 'allow.empty.filter', defaulting to 'yes', but if 'no' disallows the
  combination of a write command and an empty filter.  Ordinarily this is just
  a warning that requires confirmation (thanks to Lee Lieske).
2014-08-11 12:32:11 -04:00
Paul Beckingham
c2ffee1352 Config
- Corrected typo in config.
- Added example values for taskd.trust.
2014-08-11 11:34:24 -04:00
Renato Alves
8a4b33b0e3 Unittest - Say where taskd couldn't be found 2014-08-11 11:12:08 +01:00
Paul Beckingham
8ee02c8bac Context
- If Hooks::onExit indicates changes, TDB2::commit is called.
2014-08-09 21:06:58 -04:00
Paul Beckingham
4ef189d7b6 Hooks
- ::onExit now indicates whether changes were made.
2014-08-09 21:06:16 -04:00
Paul Beckingham
3136fa1746 Context
- Added clarifying comment to the strange test in ::verbose.
2014-08-09 20:39:18 -04:00
Paul Beckingham
6209529aaa TDB2
- In debug mode, if any TF2 objects are dirty, they speak up.
2014-08-09 20:26:51 -04:00
Paul Beckingham
9996e5adef Hooks
- Correct handling for JSON and non-JSON output.
2014-08-09 20:19:02 -04:00
Paul Beckingham
2ea9b8786e Hooks
- It is safe to call free() with a null pointer.
2014-08-07 07:51:22 -04:00
Paul Beckingham
0825ce3c56 TDB2
- Updated ID:UUID mapping on ::add, which is the first part of the fix for
  TW-1389.
2014-08-06 10:45:15 -04:00
Paul Beckingham
882ea8102f Unit Tests
- Upgraded tests to newer format.
2014-08-06 10:39:15 -04:00
Renato Alves
b49360c240 Unittest - Notes on env vars that affect test execution 2014-07-31 17:07:14 +01:00
Renato Alves
d9d3b47c31 Unittest - default to ../src/ as location for task/taskd binaries 2014-07-31 17:03:49 +01:00
Renato Alves
16af4d088c Unittest - Add test for TW-262 2014-07-30 17:16:51 +01:00
Paul Beckingham
cb2b1b1e37 Bug
- The 'diagnostics' command obeys color settings.
2014-07-28 00:59:22 -04:00
Paul Beckingham
4f30dce20a TW-1383
- TW-1383 Segmentation fault running import-yaml.pl with included example
          (thanks to Markus Beppler).
2014-07-28 00:21:59 -04:00
Markus Beppler
80b15e5f12 TW-1383
- Segmentation fault running import-yaml.pl with included example

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-07-28 00:21:44 -04:00
Markus Beppler
865bee5f11 TW-1383
- Segmentation fault running import-yaml.pl with included example

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-07-28 00:21:30 -04:00
Paul Beckingham
2f65b23af1 Merge pull request #14 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit '07cd033cbc6d54e1bee6b3044e17fef5ce87d236':
  Unittest - Readability and information improvements with test failures
2014-07-24 17:15:19 +00:00
Renato Alves
07cd033cbc Unittest - Readability and information improvements with test failures 2014-07-24 16:07:58 +01:00
Paul Beckingham
e070500d26 Merge pull request #13 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit '22efbe3f74ee7ef01e982454e2dfceaf407c33d5':
  Unittest - Testcase for bug TW-1381
  Unittest - Testcase for bug TW-1379
  No-color theme / Template theme
  Unittest - Fix newlines should be interpreted in printed output
2014-07-24 14:15:13 +00:00
Renato Alves
22efbe3f74 Unittest - Testcase for bug TW-1381 2014-07-24 15:06:34 +01:00
Renato Alves
d15c98deda Unittest - Testcase for bug TW-1379 2014-07-24 15:04:34 +01:00
Renato Alves
02935726ba No-color theme / Template theme
* This theme is meant to be used while testing colorsthough users may
find it useful as a blank template for their own themes
2014-07-24 13:24:22 +01:00
Renato Alves
f39617a753 Unittest - Fix newlines should be interpreted in printed output 2014-07-24 13:10:44 +01:00
Paul Beckingham
f5b778b800 Merge pull request #12 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit '4a305d5e51c4cccbc99b9ed41476a82966891461':
  Unittest - Fix path to user tx.data
  Unittest - Helper code to easily parse tx.data
  Unittest - Make client credentials available as a dictionary
  Unittest - Make taskd the first argument of Task()
2014-07-19 14:33:49 +00:00
Renato Alves
4a305d5e51 Unittest - Fix path to user tx.data 2014-07-19 02:55:49 +01:00
Renato Alves
974045da7a Unittest - Helper code to easily parse tx.data 2014-07-19 02:28:52 +01:00
Renato Alves
b58c6566af Unittest - Make client credentials available as a dictionary 2014-07-19 02:06:21 +01:00
Renato Alves
4c88726dab Unittest - Make taskd the first argument of Task()
* The most common case is to bind a client to a server and not
customizing the location of the task binary
2014-07-19 00:45:17 +01:00
Paul Beckingham
f9c1e33824 Merge pull request #11 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit 'c5d4efd4d2cdc48489193eee45c2a9566dc6b2fd':
  Unittest - No longer necessary to prefix strings with hash
  Unittest - Buffer stdout/stderr until after test status is printed
  Unittest - Use stderr for diagnostics too
  Unittest - Memoize utils.which for faketime speedups
  Unittest - Add a memoize function for caching of function results
  Unittest - Skip tests that use faketime if not available
  Unittest - Add test example using libfaketime
  Unittest - Implement faketime for use in taskw
  Unittest - Make is easier to reset env vars of task and taskd
  Unittest - Add mechanism to skip task and taskd tests
  Unittest - Add prefixes to task and taskd temporary folders
2014-07-18 19:19:00 +00:00
Renato Alves
c5d4efd4d2 Unittest - No longer necessary to prefix strings with hash 2014-07-18 20:07:02 +01:00
Renato Alves
3fd06257b7 Unittest - Buffer stdout/stderr until after test status is printed 2014-07-18 20:06:29 +01:00
Renato Alves
97d490e0fd Unittest - Use stderr for diagnostics too 2014-07-18 19:22:48 +01:00
Renato Alves
a88b3be093 Unittest - Memoize utils.which for faketime speedups 2014-07-18 17:23:19 +01:00
Renato Alves
d69533add1 Unittest - Add a memoize function for caching of function results 2014-07-18 17:22:17 +01:00
Renato Alves
00ee5b2289 Unittest - Skip tests that use faketime if not available 2014-07-18 17:20:27 +01:00
Renato Alves
fdbb8e02f0 Unittest - Add test example using libfaketime 2014-07-18 17:12:28 +01:00
Renato Alves
15795e514d Unittest - Implement faketime for use in taskw 2014-07-18 17:12:28 +01:00
Renato Alves
02683aecd7 Unittest - Make is easier to reset env vars of task and taskd 2014-07-18 14:01:04 +01:00
Renato Alves
2a198d59fe Unittest - Add mechanism to skip task and taskd tests
* When testing multiple clients vs server versions, repeating client
tests is unnecessary. By setting the env variables TASKW_SKIP and
TASKD_SKIP it will now be possible to skip all task (client only) and
taskd (client + server) tests, respectively.
2014-07-18 13:33:51 +01:00
Renato Alves
72e8a73ae0 Unittest - Add prefixes to task and taskd temporary folders 2014-07-18 13:20:06 +01:00
Paul Beckingham
86dd05c51d Merge pull request #10 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit 'f585bdcdf599973fd2e1d2a86b7b05fbc1800d8c':
  Unittest - Test for task diag always displaying bold
  Unittest - Properly comment output lines in TAP format
  Unittest - Test that the task binary used matches the current commit
2014-07-15 17:12:41 +00:00
Renato Alves
f585bdcdf5 Unittest - Test for task diag always displaying bold 2014-07-15 16:01:00 +01:00
Renato Alves
7cc4775060 Unittest - Properly comment output lines in TAP format 2014-07-15 15:56:26 +01:00
Renato Alves
d65e9b2594 Unittest - Test that the task binary used matches the current commit 2014-07-15 15:39:23 +01:00
Paul Beckingham
f24db73a55 Merge pull request #9 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit '6007da7218719826446af65affdfb93407cae995':
  Unittest - Renumber bug 1377 and strip leftover comments
  Unittest - No need to check for exit code as it's already implicit
2014-07-15 13:59:05 +00:00
Renato Alves
6007da7218 Unittest - Renumber bug 1377 and strip leftover comments 2014-07-15 14:34:04 +01:00
Renato Alves
6fc907ffd5 Unittest - No need to check for exit code as it's already implicit 2014-07-15 14:33:23 +01:00
Paul Beckingham
1abd5460d7 Merge pull request #8 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit '1f279ffde8e838a9cc34e2ebaa71200f0e0bb386':
  Unittest - Try to avoid racing conditions failures when capturing stdout/stderr
2014-07-15 11:17:21 +00:00
Paul Beckingham
b02fc28466 Unit Tests
- Added tw-268.t
2014-07-14 22:39:06 -04:00
Paul Beckingham
34df9633ff Unit Tests
- Added tw-1377.t from Jira (thanks to Renato Alves).
2014-07-14 22:35:31 -04:00
Paul Beckingham
cd89800e56 Unit Tests
- Improved test by checking error codes.
2014-07-14 22:33:51 -04:00
Renato Alves
1f279ffde8 Unittest - Try to avoid racing conditions failures when capturing stdout/stderr
* The new unblocking strategy for subprocesses involves timeouts and
waiting periods. If the timeout is too short (or absent) tests may show
intermittent failure.
* Increasing the timeout may make tests a bit slower but more reliable.
2014-07-15 03:29:49 +01:00
Paul Beckingham
76998987c5 Unit Tests
- Added tw-1359.t
2014-07-14 22:18:04 -04:00
Paul Beckingham
9b6b1cf5f8 Merge pull request #7 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit '9bd7b336f94805982e81192b6a94f840391f1606':
  Unittest - Don't use unittest.TestCase use basetest.TestCase instead
  Unittest - Example of TAP diag use in template.t
  Unittest - Stream blocking tests can now be safely performed
  Unittest - CommandError exception treats SIGABRT specially
  Unittest - exit code may be None if process failed to finish
  Unittest - Add example of skipping taskd test on template.t
  Unittest - Add code to check if taskd is available
  Unittest - Add which() backported from py3.3
  Unittest - Don't display "task diag" by default on error
  Unittest - Don't escape new-line characters in TAP output
  Unittest - Bring back diag() for generating TAP output
2014-07-15 02:05:53 +00:00
Renato Alves
9bd7b336f9 Unittest - Don't use unittest.TestCase use basetest.TestCase instead 2014-07-15 03:04:17 +01:00
Renato Alves
ea5186716e Unittest - Example of TAP diag use in template.t
* Also prettify its output with the amazing whitespace
2014-07-15 03:02:47 +01:00
Renato Alves
e3d0d2ff34 Unittest - Stream blocking tests can now be safely performed
* Processes that blocked waiting for stdin data will now be aborted
after a 1 second timeout.
* As a side-effect any process that takes longer than 1 second to
finish will also be aborted.
2014-07-15 02:43:57 +01:00
Renato Alves
7f9148efb4 Unittest - CommandError exception treats SIGABRT specially
* SIGABRT will be used to signal processes that failed to finish after
the process assigned time (default 1 second).
2014-07-15 02:40:56 +01:00
Renato Alves
04f5f7e2a8 Unittest - exit code may be None if process failed to finish 2014-07-15 01:37:17 +01:00
Renato Alves
5f50c44041 Unittest - Add example of skipping taskd test on template.t 2014-07-15 00:51:29 +01:00
Renato Alves
45c73fc473 Unittest - Add code to check if taskd is available 2014-07-15 00:50:58 +01:00
Renato Alves
b77dfc6312 Unittest - Add which() backported from py3.3 2014-07-15 00:49:50 +01:00
Renato Alves
617183612c Unittest - Don't display "task diag" by default on error 2014-07-14 16:10:44 +01:00
Renato Alves
d419fb9560 Unittest - Don't escape new-line characters in TAP output 2014-07-14 11:44:28 +01:00
Renato Alves
d354d13263 Unittest - Bring back diag() for generating TAP output
* Still needs work to make sure output is displayed after the test
status (not ok ...) and not before.
2014-07-14 11:38:04 +01:00
Paul Beckingham
75fe62149d TW-1359
- TW-1359 "one-two-three" in description triggers Malformed ID error.
2014-07-13 23:40:40 -04:00
Paul Beckingham
aca193799a Merge pull request #6 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit '4ae56838e4a9ec2b8892295d1ea9a1f89e4b7f6c':
  Unittest - Include "task diag" output on error
2014-07-13 23:23:31 +00:00
Renato Alves
4ae56838e4 Unittest - Include "task diag" output on error
* If any command passed to runSuccess or runError returns an unexpected
exit code, the output of 'task diag' will be added to stdout/stderr.
2014-07-14 00:25:43 +01:00
Paul Beckingham
10a64d694e Merge pull request #5 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit '47c113bf8a612544dc882eab13285bf5368cdc31':
  Unittest - Don't run template.t as a regular test
  Unittest - docstring clarification
  Unittest - Replacing old basetest framework
  UnitTest - Alias for runSuccess
  Unittest - Add a line break on last line of initial config
2014-07-13 22:16:27 +00:00
Renato Alves
47c113bf8a Unittest - Don't run template.t as a regular test 2014-07-13 23:14:46 +01:00
Renato Alves
906ca1a4aa Unittest - docstring clarification
* Clarify how the alias is supposed to work in case readers are not
familiar with what __call__ does.
2014-07-13 23:10:16 +01:00
Renato Alves
42cfda704f Unittest - Replacing old basetest framework
* Adapt bugs to work with the newer testing framework
2014-07-13 23:09:53 +01:00
Renato Alves
6a28c2d175 UnitTest - Alias for runSuccess
* Use t() (given t = Task()) as an alias to t.runSuccess()
2014-07-13 23:09:23 +01:00
Renato Alves
ceaf9d3462 Unittest - Add a line break on last line of initial config 2014-07-13 23:09:00 +01:00
Richard Boß
f998037086 Typo
- Fixed typo in 'newest' and 'oldest' report definitions.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-07-13 14:24:24 -04:00
lolilolicon
c92139389a taskdata.vim fixes; ftdetect backlog.data as JSON 2014-07-11 20:13:16 -04:00
lolilolicon
722cc9b300 Update taskedit.vim for multiline values
Commit 0c1fa8b enables multiline value for "Description:". Update
taskedit.vim syntax file for this:

  1) Now all keys are required to be indented exactly 2 spaces.
  2) We treat all keys equally, allowing all values to span multiple
lines, up until the next key.
2014-07-11 20:13:13 -04:00
lolilolicon
09ea21ef7b Update taskrc VIM syntax file for 2.4.0 2014-07-11 20:13:10 -04:00
Paul Beckingham
e8cd1c8eb0 Config
- Updated report titles.
2014-07-10 23:57:39 -04:00
Paul Beckingham
fae31e5e4d Merge branch '2.4.0' of ssh://git.tasktools.org/tm/task into 2.4.0 2014-07-10 23:00:17 -04:00
Paul Beckingham
c57a1dbc6f TW-1373
- TW-1373 taskrc.vim VIM syntax file updated (thanks to lolilolicon).
2014-07-10 22:58:59 -04:00
Paul Beckingham
4a81dc89f2 Config
- Added listing breaks on the 'project' columns, for the 'list' and 'minimal'
  reports.
2014-07-10 22:56:07 -04:00
Paul Beckingham
ab3935ac85 TW-193
- TW-193 Support listing breaks.
2014-07-10 22:48:17 -04:00
Paul Beckingham
bd7e66a939 Context
- Improved sort column parsing to include an optional trailing solidus, in
  addition to the +/- sort direction.
2014-07-10 22:14:35 -04:00
Paul Beckingham
9c2aea6d62 ViewTask
- When supplied with a vector of attribute names, can insert spacing into the
  rendered output when values change.  These we call listing breaks.
2014-07-10 21:34:17 -04:00
Leo
284ad21466 French (fra-FRA) Localization
- The latest translation update from leowzukw.
2014-07-10 18:18:03 -04:00
Paul Beckingham
32566c9844 Bug
- Segfault when 'project:android' is split into 'and' and 'roid' (thanks to
  Richard Boß).
2014-07-07 21:43:09 -04:00
Paul Beckingham
af75fa8b05 TW-296
- TW-296 urgency of blocked task should affect urgency of blocking task (thanks
         to Sitaram Chamarty).
2014-07-06 17:19:29 -04:00
Wilhelm Schuermann
7548ce662a TW-296
- TW-296 urgency of blocked task should affect urgency of blocking task

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-07-06 14:11:10 -04:00
Paul Beckingham
0c1fa8b20e TW-288
- TW-288 `task edit` mangles descriptions with embedded newlines (thanks to
         Kevin Ballard).
2014-07-06 12:14:44 -04:00
Paul Beckingham
68ceea953a TW-1293, TW-1294
- TW-1293 Modifying or deleting a child task does not propagate if there are no
          siblings (thanks to darkfeline).
- TW-1294 Modifying a child task does not propagate to parent (thanks to
          darkfeline).
2014-07-06 09:55:59 -04:00
Paul Beckingham
e3d7479211 CmdUrgency
- Removed unnecessary variable.
2014-07-06 09:30:00 -04:00
Paul Beckingham
2e27ed0268 Code Cleanup
- Removed unnecessary include.
- Removed extra whitespace.
2014-07-06 09:29:32 -04:00
Paul Beckingham
6fb1cbdc7f CMake
- Removed 'args' binary, which is no longer needed.
2014-07-06 09:24:14 -04:00
Paul Beckingham
4f9503421b TW-1334
- TW-1334 task mod description:"word1 word2" fails to handle space (thanks to
          Benjamin Weber).
2014-07-06 00:58:31 -04:00
Paul Beckingham
5697270ecf TW-252
- TW-252 task done - Doesn't stop task before marking complete (thanks to
         Renato Alves).
2014-07-06 00:47:53 -04:00
Paul Beckingham
75af8d6ca4 Task
- The ::remove method only needs to set ::recalc_urgency if the attribute was
  actually removed.
2014-07-06 00:36:16 -04:00
Paul Beckingham
c54a17089a Dates
- Converted ::isDay to use Date::dayOfWeek.
2014-07-06 00:20:25 -04:00
Paul Beckingham
d5919d9608 Dates
- Removed unused ::leapYear function.
2014-07-06 00:10:48 -04:00
Paul Beckingham
23e3499244 Merge pull request #4 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit '715a414abd1d2dcd9ee83cd535656b95d0245733':
  UnitTests
  PKI
  Make wait time configurable. Could be needed in slower machines.
  Prevent reuse of Taskd after being destroyed
2014-07-06 01:29:40 +00:00
Renato Alves
715a414abd UnitTests
* Taskd and Taskw classes for testing are now available
 * Testing of server and client can now be performed.
 * The newer test wrappers will eventually replace the BaseTest class
2014-07-06 02:03:04 +01:00
Renato Alves
733561863e PKI
* Working certificates with taskd-1.0.0 and taskw-2.3.0
2014-07-06 01:35:09 +01:00
Renato Alves
b60682a1e4 Make wait time configurable. Could be needed in slower machines. 2014-07-06 01:03:32 +01:00
Renato Alves
c1dbe4fc3c Prevent reuse of Taskd after being destroyed 2014-07-06 01:03:32 +01:00
Paul Beckingham
e615d449ac Revert "PKI"
This reverts commit 6399460559.
2014-07-05 20:01:31 -04:00
Paul Beckingham
6399460559 PKI
- Regenerated set of certs/keys.
- Added README.
2014-07-05 19:47:30 -04:00
Paul Beckingham
fb48177e90 Dates
- Eliminated redundant implementations of daysInMonth().
2014-07-05 13:02:01 -04:00
Paul Beckingham
8861193999 Date
- Simplified ::daysInMonth.
2014-07-05 12:53:31 -04:00
Paul Beckingham
4a931868c1 Date
- Removed unused list of obsolete relative dates.
2014-07-05 12:03:29 -04:00
Paul Beckingham
79fd38d3a8 L10N
- Removed oddly broken strings.
2014-07-05 11:46:01 -04:00
Paul Beckingham
57e63dfeb2 L10N
- Localized Dates.
2014-07-05 11:39:22 -04:00
Paul Beckingham
4996576d64 Dates
- Removed unused constants.
2014-07-05 11:30:04 -04:00
Paul Beckingham
ffd9a96ae6 Code Cleanup
- Removed unused strings.
2014-07-05 11:22:03 -04:00
Paul Beckingham
d6c6245ca9 L10N
- Bug in l10n utility where it only searched for used strings in src/??-??.h
  files instead of src/???-???.h
2014-07-05 11:21:10 -04:00
Paul Beckingham
3716e61259 L10N
- Localized Lexer.
2014-07-05 11:11:19 -04:00
Paul Beckingham
beb2ee4d66 L10N
- Localized Variant.
2014-07-05 10:45:40 -04:00
Paul Beckingham
5da1d4471e Code Cleanup
- Marked legacy items, formatting cleanup.
2014-07-05 09:39:26 -04:00
Paul Beckingham
4dd57a01bb ISO8601
- Removed debugging code.
2014-07-05 09:38:52 -04:00
Paul Beckingham
7957ce3e09 TW-43
- TW-43 Better error handling than: "Found extra operands." (thanks to Benjamin
        Weber).
2014-07-04 18:05:19 -04:00
Paul Beckingham
378799e27d L10N
- Localized Parser.
2014-07-04 18:03:25 -04:00
Paul Beckingham
70156d3c3d L10N
- Localized Eval.
2014-07-04 17:40:11 -04:00
Scott Kostyshak
6eee9e0544 Bash Completion
- Improved bash completion when TASKRC is exported.
- Added a unit test.

Description of previous behavior:

  $ export TASKRC=/tmp/.taskrc
  $ task ad<TAB><TAB>

lead to the following output:

  $ task adTASKRC override: /tmp/.taskrc
  dTASKRC override: /tmp/.taskrc
  TASKRC override: /tmp/.taskrc

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-07-04 16:35:15 -04:00
Paul Beckingham
222c357c0a TW-257
- TW-257 limit: not working properly (thanks to Aikido Guy).
2014-07-04 11:26:49 -04:00
Paul Beckingham
7ac533a82d CmdCustom
- Removed unused local ::getLimits method, in favor of Context::getLimits.
2014-07-04 11:11:15 -04:00
Paul Beckingham
0cd56932a5 Context
- Added ::getLimits, copied from CmdCustom, for more general use.
2014-07-04 11:03:23 -04:00
Paul Beckingham
fa58c24c66 Deprecation
- Removed deprecated 'report.X.limit' feature.
2014-07-04 11:02:10 -04:00
Paul Beckingham
ca9683d912 Unit Tests
- After renaming 'template.py' to 'template.t', the failing and skipped tests
  within as examples are now affecting the totals because all *.t files are
  run. Commented out tests.
2014-07-04 11:00:44 -04:00
Paul Beckingham
0f38f1decd Verbosity
- Made 'new-id' and 'new-uuid' mutually exclusive.
2014-07-04 10:41:49 -04:00
Paul Beckingham
f9ab71685d Unit Tests
- Eliminated the Perl template, overwriting it with the Python template.
2014-07-04 10:25:41 -04:00
Paul Beckingham
560f41a930 Documentation
- Updated developer documentation for 2.4.0.
2014-07-04 10:24:31 -04:00
Paul Beckingham
1ac7dc0d5d TW-1360
- TW-1360 color.until directive missing.
2014-07-04 10:00:26 -04:00
Paul Beckingham
5a6f81a1fd Unit Tests
- Removed unnecessary code.  Thanks Renato.
2014-07-04 09:45:32 -04:00
Paul Beckingham
726214adca Documentation
- Updated man page to include new verbosity token.
2014-07-04 09:26:18 -04:00
Paul Beckingham
b60a4aff22 TW-294
- TW-294 Display UUID of task created by add (thanks to John West).
2014-07-04 09:24:55 -04:00
Paul Beckingham
949c7bba06 TW-259
- TW-259 Hyphenated words are split when added (thanks to Ben Boeckel).
2014-07-04 01:28:43 -04:00
Paul Beckingham
c65b30fbba Parser
- Implemented ::resolveAliases to expand them.
2014-07-03 22:40:43 -04:00
Paul Beckingham
4a063843b1 Parser
- Only lex arguments into sub-branches if there is more than one lexeme per
  argument.  Of course, you have to do the lex first, otherwise you don't
  know.
2014-07-03 22:39:27 -04:00
Paul Beckingham
531e490e44 Context
- Properly extract alias 'from' from the configuration variable name.
2014-07-03 22:34:05 -04:00
Paul Beckingham
a91d6227f8 Alias
- Removed last traces of Alias object.
2014-07-03 20:47:28 -04:00
Paul Beckingham
bc24d107d5 Context
- Stuffs parser with alias definitions, from Context::loadAliases.  This keeps
  the configuration settings apart from the Parser implementation.
2014-07-03 19:09:24 -04:00
Paul Beckingham
08b0d573e8 Parser
- Stubbed ::resolveAliases.
2014-07-03 19:07:29 -04:00
Paul Beckingham
29604d0626 Context
- Stubbed a ::loadAliases method to stuff the Parser with alias defs.
2014-07-03 19:06:05 -04:00
Paul Beckingham
5b9413b02c Alias
- Removal of alias load/resolve code, which (1) needs a rewrite, and (2) belongs
  in the Parser.
2014-07-03 19:04:48 -04:00
Paul Beckingham
6145869f43 Parser
- Added alias collection methods.
2014-07-03 18:49:32 -04:00
Paul Beckingham
468da9dcde Parser
- Sets proper ambiguity required during Parser::initialize.
2014-07-03 18:17:35 -04:00
Paul Beckingham
a04df10d11 TW-1267
- TW-1267 If default.project is defined it's not possible to add a task without
          a project (thanks to Renato Alves).
2014-07-03 17:41:39 -04:00
Paul Beckingham
5e1f596200 Unit Tests
- Added a 'diag' method to the Python test class.
2014-07-03 17:38:41 -04:00
Paul Beckingham
7a37317526 Unit Tests
- Corrected mistake made earlier when assuming the first test was a 'control'.
  It was not.
2014-07-03 17:37:30 -04:00
Paul Beckingham
c8f2b5a858 Unit Tests
- Fixed flapping in bug.932.t. The problem was a regex that assumeѕ the age of
  the task was < 1second, but sometimes, when the creation of a task and the
  reporting of a task crossed a 1-second boundary, the age shows up as '1s'.
  With the regex now more permissive, the problem is gone.
2014-07-03 17:19:36 -04:00
Paul Beckingham
58c46bc292 Task
- Now that ::composeF4 guarantees not to write out attributes with blank values,
  we can use blank values to indicate that blanks were specified on the command
  line, and avoid apllication of defaults.
2014-07-03 17:13:26 -04:00
Paul Beckingham
a969d34d21 Unit Tests
- Corrected unit test, which had the wrong expected output.
2014-07-03 16:53:07 -04:00
Paul Beckingham
c5dacd7d78 Legacy
- Addded 'm' to the list of legacy duration formats, for mapping into 'months'.
2014-07-03 16:42:51 -04:00
Paul Beckingham
a46b778101 Unit Tests
- Old unit test was escaping quotes, which is no longer necessary.
2014-07-03 16:36:54 -04:00
Paul Beckingham
9778100d29 Lexer
- When parsing two-character operators ('or') from a string ('ordinary'), the
  lack of boundary between the 'r' and the 'd' now prevents the operator 'or'
  from being recognized.
2014-07-03 16:26:17 -04:00
Paul Beckingham
b6fee35213 Unit Tests
- Corrected bug.calc.t to match current calc debug output.
2014-07-03 15:51:02 -04:00
Paul Beckingham
843f7ce704 Unit Tests
- Corrected Lexer test to use a supported duration.
2014-07-03 15:39:50 -04:00
Paul Beckingham
a3cfc2de7f Filter
- The 'ambiguity' control for Eval was being set *after* the expression was
  parsed, which was useless and misleading.
2014-07-03 15:27:00 -04:00
Paul Beckingham
43daabdb9a Unit Tests
- Modfiied bug.485.t to use supported recurrence period values.
2014-07-03 13:43:14 -04:00
Paul Beckingham
b7c2fd0d9c Legacy
- Now maps unsupported duration values to supported values.
2014-07-03 13:38:18 -04:00
Paul Beckingham
140757cfe1 Unit Tests
- Modified test to account for non-standalone status of certain duration
  values.
2014-07-03 11:44:50 -04:00
Paul Beckingham
fe31d4ee71 Unit Tests
- Added tests for TW-1306.
2014-07-03 11:04:34 -04:00
Paul Beckingham
e5834c8a4f TW-1306
- TW-1306 Arguments before 'add' are ignored.
2014-07-03 10:50:25 -04:00
Paul Beckingham
d6e734b57d TW-128
- TW-128 new helper command; _envs. Actually no, not a new command, but the
  $TASKRC and $TASKDATA environment variables are now show in the 'diag'
  command output.
2014-07-02 00:17:51 -04:00
Paul Beckingham
5413d3172b TW-230, TW-1329
- TW-230 Filter tasks on partial UUIDs (thanks to Paul Kishimoto).
- TW-1329 Short UUIDs (thanks to Benjamin Weber).
2014-07-01 23:56:53 -04:00
Paul Beckingham
e663072088 TW-1336
- TW-1336 Project attribute does not allow whitespace (thanks to Benjamin Weber).
2014-07-01 21:26:13 -04:00
Paul Beckingham
dfe857d5a7 TW-276
- TW-276 Path is wrongly added when using annotate (thanks to Jostein Berntsen).
2014-07-01 21:14:37 -04:00
Paul Beckingham
d850510375 TW-1366
- TW-1366 In diagnostics it's called 'Cert', and in config it's called
  'certificate' (thanks to Jack).
2014-07-01 20:58:15 -04:00
Paul Beckingham
e7c8c0ca2a L10N
- Localized backlog/sync feedback string.
2014-07-01 20:25:33 -04:00
Paul Beckingham
4c65bc049b TW-44
- TW-44 Space handling in dateformat (thanks to Louis-Claude Canon).
2014-07-01 20:17:07 -04:00
Paul Beckingham
82e14c30bc TW-1341
- TW-1341 confirmation config setting should apply to config command as well
  (thanks to Charles Ulrich).
2014-07-01 20:10:45 -04:00
Paul Beckingham
f2a545bc25 Hooks
- First pass at a portable 'popen' implementation.  Thanks to Wim.
2014-07-01 20:02:27 -04:00
Paul Beckingham
b989da7259 TW-1361
- TW-1361 Strange results with complex filter (thanks to Jim B).
2014-07-01 18:02:31 -04:00
Paul Beckingham
e9e93bd92b Unit Tests
- Corrected tests to differentiate between standalone durations and numeric
  leader durations.
2014-07-01 17:23:07 -04:00
Paul Beckingham
5170a842d6 Duration
- Distinguishes between a 'standalone' duration like 'year', and one that
  requires a numeric leader, '2 weeks'.
2014-07-01 17:22:20 -04:00
Leo
9095f47ff3 L10N
- The latest translation update from leowzukw.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-07-01 07:12:28 -04:00
Paul Beckingham
91670e9cb5 Dates
- Named dates now store the raw form as the source, to assist parsing.
2014-06-29 22:18:43 -04:00
Paul Beckingham
c5bde168c4 Unit Tests
- Fixed typo in test.
2014-06-29 22:18:23 -04:00
Paul Beckingham
e17dd13afd Unit Tests
- Added tests for date parsing with and without depletion.
2014-06-29 22:17:52 -04:00
Paul Beckingham
0c0e36993d Date
- Added a new date parse method that indicates the length of the parsed item,
  and does not require Nibbler::depletion.
2014-06-29 22:16:44 -04:00
Paul Beckingham
17ffe3d222 L10N
- French localization (thanks to leowzukw).
2014-06-29 12:35:39 -04:00
Leo
fe02466100 French (fra-FRA) Localization
- The latest translation update from leowzukw.
2014-06-29 12:32:30 -04:00
Paul Beckingham
be6ec99fcb Lexer
- Shut off the depletion requiremeent for lexed dates.
2014-06-29 11:36:51 -04:00
Paul Beckingham
3639226233 Unit Tests
- Added tests for date parsing without the depletion requirement.
2014-06-29 11:12:35 -04:00
Paul Beckingham
3d10dee67d Date
- Formatting for readability.
2014-06-29 11:12:08 -04:00
Paul Beckingham
ecb6adbbeb Date
- Made the buffer depletion requirement optional for dateformat and ISO date
  parsing.
2014-06-29 10:31:52 -04:00
Paul Beckingham
5150e49f67 Lexer
- Legacy date parsing should not permis ISO and epoch inputs.
2014-06-29 09:55:31 -04:00
Paul Beckingham
9b03e8f9f7 Date
- Correctly performs Nibbler save/restore for parse attempts.
2014-06-29 09:54:43 -04:00
Paul Beckingham
92b91a3141 Unit Tests
- Corrected calc output expectations.
2014-06-29 09:37:19 -04:00
Paul Beckingham
65f979cb4f Lexer
- Refactored (step 1) the ISO and Legacy date/duration parsing for lexer state
  machine breakout.
2014-06-29 09:36:27 -04:00
Paul Beckingham
d54afc844c Eval
- Improved formatting for diagnostics.
2014-06-28 12:40:27 -04:00
Paul Beckingham
0c4c665653 Eval
- Diagnostics now represent correct stack size.
2014-06-28 12:35:43 -04:00
Paul Beckingham
80c8daff08 Eval
- Removed Eval diagnostics that dispalyed the wrong type.
2014-06-28 12:33:22 -04:00
Paul Beckingham
d787e1b969 Unit Test
- Removed character (!) from task project name that was causing a _neg_ operator
  to be invoked.
2014-06-27 19:11:02 -04:00
Paul Beckingham
28ed6ae74d Task
- Now recognizeѕ '', "" and <blank> as examples of an attribute values that
  should be cleared.
2014-06-27 19:09:26 -04:00
Paul Beckingham
74b4684d40 Duration
- Now distinguishes between duration that require prefix quantities ('days') and
  those that do not ('annual').
2014-06-27 19:08:29 -04:00
Paul Beckingham
92f74fc664 Task
- Quotes arguments for readability.
2014-06-27 19:07:39 -04:00
Paul Beckingham
46c9ddc91f Parser
- Now tags ORIGINAL arguments that were quoted or escaped with QUOTED.
2014-06-27 19:06:35 -04:00
Paul Beckingham
9dd7acac0b Task
- Simplified dependency modification hnadling.
2014-06-26 23:55:50 -04:00
Paul Beckingham
e688176310 Parser
- Plain arguments may only be upgraded to search patterns if they cannot be
  split into multiple lexemes, and do not canonicalize to an attribute name.
2014-06-25 22:04:56 -04:00
Paul Beckingham
8bad1591dc Parser
- Rewrote ::findIdSequence to be more exacting in the definition of an ID.
  The previous implementation considered '1.2' to be an ID.
2014-06-25 21:42:00 -04:00
Paul Beckingham
d4a003f121 TW-1324
- TW-1324 Numeric UDAs are compared as strings (thanks to Ben Boeckel).
2014-06-24 23:26:41 -04:00
Paul Beckingham
525f3cda75 TW-266
- TW-266 Allow project auto-completion to search completed tasks (thanks to
         Kosta Harlan).
2014-06-24 23:19:50 -04:00
Paul Beckingham
d29b6d5631 TW-1316
- TW-1316 Some filter expressions require space before closing paren (thanks to
          Will Dietz).
2014-06-24 22:32:56 -04:00
Paul Beckingham
7cae96a87c TW-168
- TW-168 modification of due date relative to current due date (thanks to Dirk
         Sarpe).
2014-06-24 22:30:44 -04:00
Paul Beckingham
45e4eaa780 TW-249
- TW-249 Report filters don't allow parantheses (thanks to Philipp Woelfel).
2014-06-24 22:27:55 -04:00
Paul Beckingham
c0069c8341 TW-186
- TW-186 Increase for numerical UDAs (thanks to Steffen Uhlig).
2014-06-24 22:21: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
f72aa7b02c Eval
- Updated Eval runtime diagnostics, so that all stack I/O is shown during
  evaluation.
2014-06-24 22:15:59 -04:00
Paul Beckingham
1ccbb3b43a Task
- Added ::get_float method for accessing numeric attributes.
2014-06-24 22:14:46 -04:00
Paul Beckingham
f3bdac085b TW-1345
- TW-1345 taskrc.5 manpage errors.
2014-06-21 07:36:30 -04:00
Paul Beckingham
db0a56e4f5 Variant
- Improved copy ctor.
2014-06-18 23:50:24 -04:00
Paul Beckingham
e14c867a9b Unit Tests
- Added tests for Lexer::boundary.
2014-06-18 17:46:05 -04:00
Paul Beckingham
008ba6ecab Lexer
- Implmented boundary detection hints.
2014-06-18 17:45:25 -04:00
Paul Beckingham
cbb6decf93 Unit Tests
- Added Lexer test to split 'ordinary' into 'ordinary', not 'or' and 'dinary'.
2014-06-18 00:18:18 -04:00
Paul Beckingham
1ca58fad52 Unit Tests
- Corrected verbosity settings to keep filter terms out of results, and
  affecting tests.
2014-06-17 23:20:36 -04:00
Paul Beckingham
43c097e10e Unit Tests
- Updated to conform to template.
2014-06-17 01:18:34 -04:00
Paul Beckingham
45d41bbe75 Unit Tests
- Compares to the correct error message.
- Updated to conform to template.
2014-06-17 01:14:21 -04:00
Paul Beckingham
27801c3666 Unit Tests
- Updated to conform to template.
2014-06-17 01:10:59 -04:00
Paul Beckingham
13bbcba3f9 Variant
- ::operator== uses a caseless compare for the status attribute.
2014-06-17 01:10:16 -04:00
Paul Beckingham
2a3c5e59c7 Variant
- Corrected handling for ::operator_partial when one of the operands is
  trivial.
2014-06-17 01:00:51 -04:00
Paul Beckingham
adb5f2b4bd Unit Tests
- Updated to conform to template.
2014-06-17 00:59:59 -04:00
Paul Beckingham
5f61c55b83 Unit Tests
- Corrected tests to use 3-letter day abbreviation, and look for the correct
  error message.
- Updated to conform to template.
2014-06-16 21:44:30 -04:00
Paul Beckingham
8ec5533d39 Parser
- Removed unused constant.
2014-06-16 19:50:00 -04:00
Paul Beckingham
6a4a046b1a Variant
- Updated operator%= to handle trivial values.
2014-06-16 18:44:37 -04:00
Paul Beckingham
74af53cb4f Variant
- Updated operator/= to handle trivial values.
2014-06-16 18:43:44 -04:00
Paul Beckingham
a7cc2a594a Variant
- Updated operator*= to handle trivial values.
2014-06-16 18:43:11 -04:00
Paul Beckingham
2a552d4fc0 Variant
- Updated operator+= to handle trivial values.
2014-06-16 18:42:53 -04:00
Paul Beckingham
5dbbca882f Variant
- Updated operator-= to handle trivial values.
2014-06-16 18:42:31 -04:00
Paul Beckingham
e0bca6c4ad Variant
- Updated operator_partial to handle trivial values.
2014-06-16 18:42:11 -04:00
Paul Beckingham
c1a9e1e452 Variant
- Updated operator== to handle trivial values.
2014-06-16 18:41:36 -04:00
Paul Beckingham
5e9229db76 Variant
- Updated operator>= to handle trivial values.
2014-06-16 18:41:04 -04:00
Paul Beckingham
fc3688ea70 Variant
- Updated operator> to handle trivial values.
2014-06-16 18:40:34 -04:00
Paul Beckingham
78a748e865 Variant
- Updated operator<= to handle trivial values.
2014-06-16 18:40:00 -04:00
Paul Beckingham
7484b5a22f Variant
- Updated operator< to handle trivial values.
2014-06-16 18:38:43 -04:00
Paul Beckingham
8e16a3e0e4 Variant
- Implemented ::trivial to faclitate operator shortcuts.
2014-06-16 17:25:48 -04:00
Paul Beckingham
841c78768c Unit Tests
- Removed invliad test.
2014-06-15 23:54:14 -04:00
Paul Beckingham
392c9971f5 Unit Tests
- Corrected expectation that assumeѕ all duration fields are in ISO format.
2014-06-15 23:42:16 -04:00
Paul Beckingham
ef3deaad4a Task
- When a duration fails to parse during ::modify, it must raise an exception,
  and not silently skip the attribute.
2014-06-15 23:34:43 -04:00
Paul Beckingham
64c9cbe943 Task
- Å duration field is stored in raw form, but must still be parseable.
2014-06-15 23:21:54 -04:00
Paul Beckingham
d2a5a89bcf Unit Tests
- Now conform to template.
2014-06-15 23:21:30 -04:00
Paul Beckingham
8c34d46687 Unit Tests
- Corrected unit tests that assume 'sod' and 'eod' are the same day.
2014-06-15 23:10:47 -04:00
Paul Beckingham
464d0ec690 Unit Tests
- Corrected test to expect an ISO date instead of an epoch.
2014-06-15 23:09:05 -04:00
Paul Beckingham
ffb201a068 Parser
- Pruned the unnecessary filter sub branches off the parse tree for branches
  tagged with MODIFICATION.
2014-06-15 23:04:29 -04:00
Paul Beckingham
b9fd2560eb Parser
- Removed warning about compounded plain args, which are now handled early in
  Parser::initialize, where new args are immediately lexed.
2014-06-15 22:59:14 -04:00
Paul Beckingham
5901a245f1 Unit Tests
- Removed obsolete test ('1ST' --> not a date).
2014-06-15 22:47:30 -04:00
Paul Beckingham
d1f5020fab Task
- Improved implementation of is_duemonth and is_dueweek.
2014-06-15 22:37:56 -04:00
Paul Beckingham
3116ddcd6d Dates
- Fixed problem with eoy, where is was YYYY-12-31T00:00:00, which is
  24 hours earlier than actual eoy. Other 'eo*' names were also wrong.
  So much for unit tests.
2014-06-15 22:34:16 -04:00
Paul Beckingham
cfb7fdc987 Date
- Uses mk_wcwidth to calculate the printed width of a character in a date
  format that is not recognized, instead of simply assuming '1'.
2014-06-15 22:31:13 -04:00
Paul Beckingham
ea2405330f Date
- Removed ::isRelativeDate and instead used namedDates. Which is better.
2014-06-15 22:28:46 -04:00
Paul Beckingham
67d85b484b Unit Tests
- Removed diagnostic output that is no longer needed.
2014-06-15 22:22:02 -04:00
Paul Beckingham
877c6fae9e Dates
- 'eom' and 'eocm' are not on YYYY-MM-{28,30,31}T00:00:00, they are
  one day later.
2014-06-15 19:14:24 -04:00
Paul Beckingham
20de57e87c Dates
- 'eoy' is not YYYY-12-31T00:00:00, it's one day later.
2014-06-15 19:13:48 -04:00
Paul Beckingham
d2685a8212 Task
- If the a numeric attribute is modified with a result that is not readily
  convertible to a numeric value, then this is an error.
2014-06-15 10:15:23 -04:00
Paul Beckingham
222c20f161 Unit Tests
- Tests now conform to template.
2014-06-15 10:14:14 -04:00
Paul Beckingham
9d727a73d2 ColUrgency
- Now uses the standard type 'numeric', instead of 'number'.
2014-06-15 09:49:26 -04:00
Paul Beckingham
6b6e9a6b15 ColIMask
- Now uses the standard type 'numeric', instead of 'number'.
2014-06-15 09:48:54 -04:00
Paul Beckingham
d557c20782 ColID
- Now uses the standard type 'numeric', instead of 'number'.
2014-06-15 09:48:05 -04:00
Paul Beckingham
65890bc8d4 Task
- All attribute types (number, string, date, duration) are ѕpecifically
  handled, with no default cases.
2014-06-15 09:36:35 -04:00
Paul Beckingham
518f56b499 Task
- Durations are now stored as-is, with no evaluation.
2014-06-15 09:34:21 -04:00
Paul Beckingham
b7d668fb7d Eval
- Raises an exception if an expression evaluation yields an unexpected
  stack size at the end. This indicates that an expression like 'one two'
  was evaluated. Note that string field updates require evaluation, but
  this case occurs frequently.
2014-06-15 09:32:17 -04:00
Paul Beckingham
5b2505f6da Unit Tests
- Tests now conform to template.
2014-06-15 09:30:46 -04:00
Paul Beckingham
784b14c69a Unit Tests
- Corrected test to expect durations in ISO8601 format.
2014-06-15 08:38:51 -04:00
Paul Beckingham
b4510e9f48 Unit Tests
- Corrected unit test that relied on old behavior, namely 'due.before:1d',
  which is like specifying '1403007839 < 86400'. Taskwarrior always assumed
  that whenever a duration was specified, such as '1d', it really meant
  'now + 1d'. With full algebraic expression support, this can no longer be
  the case and now we need 'due.before:now+1d'.
2014-06-15 08:33:52 -04:00
Paul Beckingham
dc53d9c60e Unit Tests
- Tests now conform to template.
2014-06-14 16:13:39 -04:00
Paul Beckingham
a2936c045c Lexer
- Now recognized the exact inequality operator !==.
2014-06-14 16:03:07 -04:00
Paul Beckingham
9318dced5a Eval
- Eval maps '!==' to Variant::operator!=, '!=' to Variant::operator_nopartial,
  '==' to Variant::operator== and '=' to Variant::operator_partial.
2014-06-14 15:59:31 -04:00
Paul Beckingham
855de25e0d Unit Tests
- Corrected test that assumed completed.data was created, which is not
  always the case now.
2014-06-14 15:38:51 -04:00
Paul Beckingham
dbe38f2747 Parser
- ::findOperator removes unnecessarily lexed sub-branches.
2014-06-14 15:24:34 -04:00
Paul Beckingham
da1dbb5666 Parser
- ::findUUIDList removes unnecessarily lexed sub-branches.
2014-06-14 15:24:23 -04:00
Paul Beckingham
5199554811 Parser
- ::findIdSequence removes unnecessarily lexed sub-branches.
2014-06-14 15:24:11 -04:00
Paul Beckingham
ebaca3607d Parser
- ::findAttributeModifier removes unnecessarily lexed sub-branches.
2014-06-14 15:23:49 -04:00
Paul Beckingham
ad28d34b7e Parser
- ::findAttribute removes unnecessarily lexed sub-branches.
2014-06-14 15:23:38 -04:00
Paul Beckingham
64df32baff Parser
- ::findTag removes unnecessarily lexed sub-branches.
2014-06-14 15:22:51 -04:00
Paul Beckingham
18662b0307 Parser
- ::findSubstitution removes unnecessarily lexed sub-branches.
2014-06-14 15:22:23 -04:00
Paul Beckingham
587113e5cf Parser
- ::findPattern removes unnecessarily lexed sub-branches.
2014-06-14 15:22:06 -04:00
Paul Beckingham
91263ca28a Parser
- ::findOverrides removes unnecessarily lexed sub-branches.
2014-06-14 15:21:49 -04:00
Paul Beckingham
8ed1206f41 Parser
- ::findCommand removes unnecessarily lexed sub-branches.
2014-06-14 15:20:56 -04:00
Paul Beckingham
8f5e386ab0 Parser
- ::findTerminator removes unnecessarily lexed sub-branches.
2014-06-14 15:20:25 -04:00
Paul Beckingham
3f6ad23578 Parser
- ::findBinary removes unnecessarily lexed sub-branches.
2014-06-14 15:19:31 -04:00
Paul Beckingham
0500649992 Parser
- ::initialize now lexes all args up front.
2014-06-14 15:18:31 -04:00
Paul Beckingham
1b8671b58e Tree
- Implemented ::removeAllBranches.
2014-06-14 14:19:49 -04:00
Paul Beckingham
fb4bf3efba Tree
- After removing a branch, free the memory.
2014-06-14 14:13:34 -04:00
Paul Beckingham
7d4e166277 Lexer
- Implemented an overload of ::token_split that preserveѕ types.
2014-06-14 13:46:10 -04:00
Paul Beckingham
a892abf366 CmdCustom
- Added placeholder for problematic parenthesis injection for report filters.
2014-06-14 12:42:07 -04:00
Paul Beckingham
4bf3364bb7 DOM
- Preserves more original types.
2014-06-11 23:13:37 -04:00
Paul Beckingham
39c9f54d16 Unit Tests
- Upgraded tests to use new template.
2014-06-11 22:26:28 -04:00
Paul Beckingham
a77e4292ab Unit Tests
- Removed obsolete tests.
2014-06-11 21:57:17 -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
e8474fc145 Unit Tests
- Removed obsolete tests.
2014-06-11 06:39:11 -04:00
Paul Beckingham
699d85be29 Unit Tests
- Removed obsolete tests.
2014-06-11 06:37:37 -04:00
Paul Beckingham
f7a68df299 Unit Tests
- Removed obsolete tests.
2014-06-11 06:35:03 -04:00
Paul Beckingham
39da3d68ca Unit Tests
- Removed obsolete tests.
2014-06-11 06:33:44 -04:00
Paul Beckingham
ccc0fa7c30 Unit Tests
- Removed obsolete tests.
2014-06-11 06:31:33 -04:00
Paul Beckingham
a76614aabb Unit Tests
- Removed obsolete tests.
2014-06-11 06:28:56 -04:00
Paul Beckingham
50a12d3598 Unit Tests
- Removed obsolete tests.
2014-06-11 06:26:25 -04:00
Paul Beckingham
1cf79ffda7 Unit Test
- Removed obsolete test.
2014-06-11 06:23:13 -04:00
Paul Beckingham
110592da8c Unit Tests
- Removed obsolete test.
2014-06-11 06:22:30 -04:00
Paul Beckingham
a011800764 Unit Tests
- Upgraded disabled test to active.
2014-06-11 06:22:06 -04:00
Paul Beckingham
a93ae1ca07 Unit Tests
- Removed obsolete test.
2014-06-11 06:21:16 -04:00
Paul Beckingham
7512dd21aa Unit Tests
- Removed obsolete test.
2014-06-11 06:20:36 -04:00
Paul Beckingham
6ae40dbc57 Unit Tests
- Removed oboslete test.
2014-06-11 06:20:02 -04:00
Paul Beckingham
9a74fbe4a9 Variant
- ISO8601 periods contain uppercase characters.
2014-06-10 23:09:41 -04:00
Paul Beckingham
bd53dd2aeb Variant
- Rewrite ::operator std::string to yield more accurate duration renditions.
2014-06-10 22:34:52 -04:00
Paul Beckingham
3727d2f09c Task
- The 'recur' attribute should be stored in raw form.
2014-06-10 20:05:50 -04:00
Paul Beckingham
24e2f24301 Unit Tests
- Corrected urgency unit tests that had been disabled and had rotted.
2014-06-10 15:53:05 -04:00
Paul Beckingham
2554b29041 Lexer
- Needed a shift counter, rather than a read counter, as ::token was
  lexing '-10d' into '-' and '-10d', which when evaluated is '--10d',
  which yields 10d.
2014-06-10 15:42:21 -04:00
Paul Beckingham
3c0a17c195 Task
- Removed urgency diagnostics, now that the 'info' command displays them.
2014-06-09 23:11:47 -04:00
Paul Beckingham
0a67913b48 Dates
- Fixed a loose, ill-defined, poorly constructed excuse for a detector
  of date ordinals ("1st, "22nd", "3rd" and "6th").
2014-06-09 22:19:41 -04:00
Paul Beckingham
43d953094b Unit Tests
- Corrected test count, which was artificially low, hiding some failing tests.
2014-06-09 20:47:19 -04:00
Paul Beckingham
310cafcc7d Unit Tests
- Enabled all urgency unit tests, even though many fail. Time to fix them.
2014-06-09 19:43:46 -04:00
Paul Beckingham
c9ba7ae301 Unit Tests
- Corrected Lexer tests that used obsolete duration forms.
- Added more duration test parses.
2014-06-09 18:03:36 -04:00
Paul Beckingham
11a4c58735 Lexer
- Factored out an invariant.
2014-06-09 18:02:34 -04:00
Paul Beckingham
05d4ac16a3 Eval
- Now prints the evaluated form, instead of the input form in debug mode, after
  successful source lookup.
2014-06-09 18:01:45 -04:00
Paul Beckingham
d0d8d5eece Duration
- Dropped support for parsing many intermediate representations. For example,
  this list:

   monthly, months, month, mnths, mths, mth, mos, mo

  is now reduced to:

    monthly, months, month, mo
2014-06-09 17:14:32 -04:00
Paul Beckingham
ff966c069c Tasksh
- Took the broken tasksh program out back behind the barn and shot it.
  It will be rewritten as a separate project, and extension.
2014-06-08 18:24:30 -04:00
Paul Beckingham
63eb32d177 Task
- Disabled ambiguous date parsing. Ain't nobody got time for that.
2014-06-08 16:20:31 -04:00
Paul Beckingham
20d4e37b40 Dates
- Corrected implementation of all named dates. There were ... issues.
2014-06-08 15:02:08 -04:00
Paul Beckingham
22f1bf709e CmdCalc
- Set ambiguity to false, thus disabling recognition of certain date forms.
2014-06-08 14:18:34 -04:00
Paul Beckingham
ddcadb35f7 Filter
- Set ambiguity to false, thus disabling recognition of certain date forms.
2014-06-08 14:17:50 -04:00
Paul Beckingham
0aa323164a Unit Tests
- Added Lexer tests to make sure '9th' and '10th' are recognized as identifiers.
2014-06-08 14:16:46 -04:00
Paul Beckingham
4041639e36 Lexer
- Added downgrade from typeNumber to typeIdentifer if a number is followed by a
  letter, thus supporting "9th" as an identifier. This causes much breakage.
2014-06-08 14:15:07 -04:00
Paul Beckingham
f316413139 CmdCalc
- The 'calc' command (and only the 'calc' command) propagates the rc.debug
  setting to Eval.  This provides the means to debug expression problems.
2014-06-08 13:10:20 -04:00
Paul Beckingham
9390e17871 Documentation
- Removed obsolete task-tutorial.5 man page. Tutorials will now only
  reside online. This represents a gradual move towards single-source
  documentation.
2014-06-08 11:19:11 -04:00
Paul Beckingham
93de3e3bb0 TW-244
- TW-244 task add "Description (Information)" results in
         "Description ( Information)".
2014-06-08 10:34:45 -04:00
Paul Beckingham
7ba99d6100 TW-250
- TW-250 Opening parenthesis in description gets padded in task 2.0.0 bet 2
         (thanks to Michelle Crane).
2014-06-08 10:05:07 -04:00
Paul Beckingham
46a42847b0 Tw-251
- TW-251 extra spaces added after ( and / (thanks to Andy Spiegl).
2014-06-08 10:02:51 -04:00
Paul Beckingham
e6ba46b9fe TW-1273
- TW-1273 Words in task descriptions and annotations are cut-off after a hyphen
          (thanks to Elias Probst).
2014-06-08 09:05:53 -04:00
Paul Beckingham
b9b5338b67 TW-242
- TW-242 extra Space when annotating a path/filename, taskopen can not open the
         file (thanks to Andreas Kalex).
2014-06-08 08:37:23 -04:00
Paul Beckingham
eae72915f2 TW-221
- TW-221 Migrate task-faq man page to the Wiki.
  [Note: task-faq.5 man page obsolete, replaced by answers.tasktools.org]
2014-06-08 08:31:36 -04:00
Paul Beckingham
bf5db2acfc TW-218
- TW-218 Reveal terms of urgency calculation for a given task (thanks to Max
         Muller).
2014-06-08 08:28:05 -04:00
Paul Beckingham
e0917f4397 Documentation
- Removed obsolete task-faq.5 man page.
2014-06-07 13:06:19 -04:00
Paul Beckingham
dcab169987 CmdDenotate
- Corrected use of command line arguments for a pattern - now uses
  modification args instead of all words.
2014-06-07 12:50:39 -04:00
Paul Beckingham
85481e3e69 Diagnostics
- Consolidated two debug lines into one, so that ViewTask::render now
  reports available width, and Context::getWidth does not.
2014-06-07 09:54:22 -04:00
Paul Beckingham
9537a91e89 Text
- Added another format overload. Time for variadics?
2014-06-07 09:52:01 -04:00
Paul Beckingham
4d4e740f5c Unit Tests
- Added ANNOTATED tests.
2014-06-07 09:45:58 -04:00
Paul Beckingham
c89e8eda0e Unit Tests
- Added first batch of virtual tag tests.
2014-06-07 09:05:32 -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
4c3a59a333 Unit Tests
- Removed obsolete tests.
2014-06-06 17:07:19 -04:00
Paul Beckingham
61dab3eeb9 DOM
- Extended DOM.
2014-06-05 17:55:24 -04:00
Paul Beckingham
117c31b322 Unit Tests
- Added tests for blank values from missing DOM lookups.
2014-06-04 19:00:01 -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
850dbb36f0 Context
- ::clear now calls Parser::clear, which prevents the parse tree from growing
  with every shell command.
2014-06-03 01:31:25 -04:00
Paul Beckingham
512fe2f6c7 Variant
- ::operator_match and ::operator_nomatch now take a 'const Task&' argument to
  use for description/annotation matching.
- Updated unit tests.
2014-06-03 01:27:02 -04:00
Paul Beckingham
ca6940ba2e Variant
::operator_hastag now uses contextTask for resolution.
2014-06-03 01:10:58 -04:00
Paul Beckingham
56a70b00c4 Context
- No longer segfaults when ::initialize (argç, argv) is called with zero
  arguments, which is what the shell is doing.
2014-06-03 00:55:18 -04:00
Paul Beckingham
cd837a006c Task
- ::modify was not casting strings to dates for date types.
2014-06-03 00:42:21 -04:00
Paul Beckingham
1cd09bc87b Alias
- Implemented simple word substitution aliases. This is not the ultimate form
  which will involve the ability to insert arbitrary constructs.  Later.
2014-06-03 00:11:42 -04:00
Paul Beckingham
a470e50ee6 Variant
- Attempts legacy date conversion ahead of ISO.
2014-06-02 23:30:40 -04:00
Paul Beckingham
7196ac8554 Variant
- ::operator_match disobeyed rc.search.case.sensitive.
2014-06-02 23:15:25 -04:00
Paul Beckingham
ac07189941 Task
- ::modify was setting the wrong attribute value, namely the original, not the
  one that had passed through the expression evaluator's intestines.
2014-06-02 22:22:39 -04:00
Paul Beckingham
870e45be0d Lexer
- Extended Lexer to consider forms like '123.abc' as identifiers. This is
  essential to recignizing and extending DOM support.
2014-06-02 22:19:38 -04:00
Paul Beckingham
43718cbce5 Task
- Evaluates attribute values on modify.
2014-06-01 22:50:33 -04:00
Paul Beckingham
05d46b8345 TW-1331
- TW-1331 date more than 5 years away is faulty (thanks to Onion).
2014-06-01 20:08:32 -04:00
Paul Beckingham
6a0c61ad27 Portability
- Fixed wcwidth error in the #ifdef CYGWIN.
2014-06-01 19:39:28 -04:00
Paul Beckingham
55b5149be0 TW-72
- TW-72 extend info report with urgency column
2014-06-01 16:33:14 -04:00
Paul Beckingham
a1ba10d820 Unit Tests
- qw is not qq.  Cleanup now happens properly.
2014-06-01 13:25:29 -04:00
Paul Beckingham
91523b3574 Unit Tests
- Removed 'sleep' commands that slow down the test suite unnecessarily,
  by replacing them with specific timestamps in pending.data.
2014-06-01 13:16:39 -04:00
Paul Beckingham
7b3acbb81b Unit Tests
- Removed 'sleep' commands that slow down the test suite unnecessarily,
  by replacing them with specific timestamps in pending.data.
2014-06-01 13:00:04 -04:00
Paul Beckingham
eef39c3355 Unit Tests
- Removed sleep commands from wait.t, using specific timestamps in pending.data
  to speed up tests.
2014-06-01 12:30:19 -04:00
Paul Beckingham
c01d15d3b8 Unit Tests
- Replaced 'sleep' commands in the unit test (which slow things down too much)
  with pending.data lines with modified timestamps.
2014-06-01 11:39:03 -04:00
Paul Beckingham
92ba0055fb Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:38:51 -04:00
Paul Beckingham
e1602057dd Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:36:42 -04:00
Paul Beckingham
e70ec9f967 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:34:24 -04:00
Paul Beckingham
e1d6b84dcd Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:32:38 -04:00
Paul Beckingham
ab7370a2eb Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:30:29 -04:00
Paul Beckingham
e3e21b72a9 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:28:24 -04:00
Paul Beckingham
1c5a9f70cb Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:25:30 -04:00
Paul Beckingham
fbdceac548 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:24:43 -04:00
Paul Beckingham
ca06927eea Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:23:19 -04:00
Paul Beckingham
abb663fae3 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:22:05 -04:00
Paul Beckingham
7f08ec5a63 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:20:43 -04:00
Paul Beckingham
fb11379630 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:20:00 -04:00
Paul Beckingham
f85ff7bde1 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:05:10 -04:00
Paul Beckingham
307ea1c857 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:02:53 -04:00
Paul Beckingham
eaffa392f9 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 10:00:45 -04:00
Paul Beckingham
8eef295bea Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 09:57:59 -04:00
Paul Beckingham
bdad6642c8 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 09:56:14 -04:00
Paul Beckingham
0a1bcbd48d Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 09:51:25 -04:00
Paul Beckingham
7ab8d4db6d Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 09:49:57 -04:00
Paul Beckingham
a59f8644f1 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 09:48:19 -04:00
Paul Beckingham
102792e425 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 09:45:46 -04:00
Paul Beckingham
c0f4baa8d9 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 09:44:18 -04:00
Paul Beckingham
77d93ef631 Unit Tests
- Removed useless setup/teardown tests, improving the signal to noise ratio.
2014-06-01 09:43:00 -04:00
Paul Beckingham
6706d1b955 Date/ISO8601
- Changed the order of parsing from ISO, Date to Date, ISO. This favors the
  old dateformat mechanism more than the new one. One day this will flip.
2014-06-01 00:10:16 -04:00
Paul Beckingham
483c1b5787 Unit tests
- Test relied on an error message that no longer applies.
2014-06-01 00:00:09 -04:00
Paul Beckingham
f524bd38e4 Unit Tests
- Converted test to use a better value than a hard-coded date.
- Removed useless setup/teardown tests.
2014-05-31 23:07:49 -04:00
Paul Beckingham
eae398f203 Unit Tests
- Converted test to use a better value than a hard-coded date.
- Removed useless setup/teardown tests.
2014-05-31 23:05:55 -04:00
Paul Beckingham
48e2e19ae1 Unit Tests
- Used command at least rc.abbreviation.minimum in length.
- Removed useless setup/teardown tests.
2014-05-31 22:39:37 -04:00
Paul Beckingham
9303bfb26a Unit Tests
- Used command at least rc.abbreviation.minimum in length.
- Removed useless setup/teardown tests.
2014-05-31 22:35:26 -04:00
Paul Beckingham
5315196175 Unit Tests
- Updated recurrence period to an ISO8601 value.
- Removed useless setup/teardown tests.
2014-05-31 22:31:29 -04:00
Paul Beckingham
d69d38c7d2 Unit Tests
- Removed useless setup/teardown tests.
2014-05-31 22:29:49 -04:00
Paul Beckingham
8d0f1f6990 Unit Tests
- Removed useless setup/teardown tests.
2014-05-31 22:28:37 -04:00
Paul Beckingham
5df49ec5e3 Parser
- ::findAttributeModifier now tolerates missing values and generates the
  correct expression term.
2014-05-31 22:26:44 -04:00
Paul Beckingham
fc5dad7a9a Parser
- Now that all (?) Parser methods for tree scanning can be called more than
  once, move all methods into the ::parse method.
2014-05-31 22:17:56 -04:00
Paul Beckingham
a86408c5a3 Unit Tests
- Updated a test to use a command of length >= rc.abbreviation.minimum.
- Removed useless setup/teardown tests.
2014-05-31 22:04:17 -04:00
Paul Beckingham
37acb90579 Unit Tests
- Updated a test to use a command of length >= rc.abbreviation.minimum.
- Removed useless setup/teardown tests.
2014-05-31 21:42:51 -04:00
Paul Beckingham
72ceee198a Unit Tests
- Updated a test to use a command of length >= rc.abbreviation.minimum.
- Removed useless setup/teardown tests.
2014-05-31 21:41:18 -04:00
Paul Beckingham
622532c38e Unit Tests
- Uncommented some old tests that pass, but obviously once did not.
- Removed useless setup/teardown tests.
2014-05-31 18:18:58 -04:00
Paul Beckingham
5b8aef5463 Parser
- ::findAttribute now tolerates missing values, as it should if I'd written
  it properly in the first place.
2014-05-31 18:18:20 -04:00
Paul Beckingham
2da3258dd0 Unit Tests
- Corrected one time stamp, but not all.
- Removed useless setup/teardown tests.
2014-05-31 18:02:13 -04:00
Paul Beckingham
afd948167f Unit Tests
- Removed useless setup/teardown tests.
- Increased command length to match rc.abbreviation.minimum.
2014-05-31 17:55:15 -04:00
Paul Beckingham
4f8d6c877d Variant
- Implemented an (unused) operator_nopartial for the sake of symmetry.
2014-05-31 17:54:43 -04:00
Paul Beckingham
b272513747 Unit Tests
- Modified test to use a command that exceeded the rc.abbreviation.minuіmum
  length.
2014-05-31 17:30:20 -04:00
Paul Beckingham
a799b54ad4 Unit Tests
- Modified test to use a command that exceeded the rc.abbreviation.minuіmum
  length.
2014-05-31 17:24:29 -04:00
Paul Beckingham
cefbaf779b Parser
- ::initialize only overrides Parser::minimumMatchLength when
  rc.abbreviation.minimum is non-zero.
2014-05-31 17:23:00 -04:00
Paul Beckingham
68555315e0 Parser
- Scans the tree to find the binary, after the calendar report runs the main
  report and prepares to run the detail report. Now I think about it, this
  feature could be implemented vai hooks.
2014-05-31 15:36:12 -04:00
Paul Beckingham
382881c0e1 CmdCustom
- Filter args must contain spaces between them.  Splitting on token boundaries
  goes too far and separates '-' from 'tag'.
2014-05-31 15:11:24 -04:00
Paul Beckingham
a1ee44ac17 Parser
- ::findPlainArgs will now only upgrade an arg to a search if the arg itself
  cannot be lexed into subtokens.
2014-05-31 14:11:53 -04:00
Paul Beckingham
cf5eb73f04 CmdCustom
- Now places ( ) around the custom report filter. This gives it a chance at
  allowing 'or' and 'xor' operators when combined with a command lne filter.
2014-05-31 13:58:40 -04:00
Paul Beckingham
5ac3db3168 Parser
- Modified ::injectDefault to use Lexer::token_split instead of
  Lexer::word_split which allows stranger default commands. Not sure if this
  is necessary, but it seems like the right thing.
2014-05-31 13:54:56 -04:00
Paul Beckingham
f4605a1bc7 Parser
- Implemented ::capture_last, so that new args can be injected at either end
  of the command line.
2014-05-31 13:52:59 -04:00
Paul Beckingham
7598997e70 Lexer
- Implemented ::token_split, which performs a full lex, and doesn't require
  white space like ::word_split does.
- Added unit tests.
2014-05-31 13:51:10 -04:00
Paul Beckingham
0af9bbdc03 Lexer
- Renamed ::split to ::word_split, for clarity and because of the need for a
  full token split, coming next.
2014-05-31 13:48:52 -04:00
Paul Beckingham
e753473dc4 Documentation
- Updated DEVELOPER docs regarding unit tests and the use of the 'needsTest'
  label in the bug database.
2014-05-31 13:46:00 -04:00
Paul Beckingham
30fee92914 Parser
- ::findPlainArgs was only being run in debug mode. Not a good idea.
2014-05-31 12:27:56 -04:00
Paul Beckingham
190b6fe635 Diagnostics
- Display debug/release build type in the diagnostics command.
2014-05-31 12:12:40 -04:00
Paul Beckingham
744f0f55ac Unit Tests
- Removed obsolete references to 'synch.key'.
2014-05-31 11:53:17 -04:00
Paul Beckingham
6514bdfc4d TW-28, TW-271, TW-277, TW-752, TW-1265
- TW-1265 cannot add UDA with underscore (thanks to Jakub Wilk).
- Added unit tests for TW-1265.
- Added ChangeLog and AUTHOR entries for other fixed issues.
2014-05-31 11:11:53 -04:00
Paul Beckingham
4694cfe0fe Variant
- Added specialized handling for 'priority' attributes when compared using the
  <, <=, > or >= operators.
2014-05-31 10:02:50 -04:00
Paul Beckingham
ba8c007ace Filter
- When a filter resolves an identifier through a DOM reference, it records
  the source. In other words, when 'priority' is resolved to 'H', the source
  reference ('priority') is stored in the variant. This is because different
  data attributes behave differently when compared.
2014-05-31 10:01:00 -04:00
Paul Beckingham
3bc44681a5 Variant
- A variant now contains a source reference, which indicates where it came
  from.  This is used to determine whether 'H' is a priority or just a word.
2014-05-31 09:59:18 -04:00
Paul Beckingham
6bcb9e4bf3 Parser
- Plain words found in filters are now upgraded to search terms.
2014-05-31 08:50:52 -04:00
Paul Beckingham
6ccca32434 Unit Tests
- Downgraded bash constructs to sh, reducing the requirements from bash to sh.
2014-05-30 21:39:55 -04:00
Paul Beckingham
87dcbd556e Recurrence
- Task::validate and getNextRecurrence needed to consider both Duration and
  ISO8601p.
2014-05-30 21:29:42 -04:00
Paul Beckingham
6d5d93d753 Task
- Added diagnostics for date assignments. Only duration assignment diagnostics
  were present.
2014-05-30 18:14:33 -04:00
Paul Beckingham
f2a8e22866 Unit Tests
- Uses full duration names '9months' rather than abbreviations '9mo'.
  This is in anticipation of reduced flexibility.
2014-05-30 18:13:33 -04:00
Paul Beckingham
9f6e37fa06 Portability
- Reordered includes to allow build on FreeBSD (thanks to Pietro Cerutti).
2014-05-30 15:25:34 -04:00
Paul Beckingham
688dcb6cd3 Filter
- Fixed ::pendingOnly, which now has a clearly-defined set of rules.
2014-05-30 00:39:38 -04:00
Paul Beckingham
da95c16da9 Unit Tests
- Modified a test that relies on an obsolete message.
2014-05-29 23:17:02 -04:00
Paul Beckingham
5baa999459 Build
- Added missing define for FreeBSD.
2014-05-29 20:21:34 -04:00
Paul Beckingham
46d1f2c679 Build
- Added missing include for FreeBSD.
2014-05-29 20:05:29 -04:00
Paul Beckingham
3e34679f4a Build
- Added missing include for FreeBSD.
2014-05-29 19:39:30 -04:00
Paul Beckingham
592a3bb60f Lexer
- Lexer now makes a speculative legacy dateformat parse whenever it encounters
  a decimal digit.  This assumes that rc.dateformat begins with a numeric date
  element, which is a restriction, but not a big one.
2014-05-29 18:09:11 -04:00
Paul Beckingham
79576819c3 Date
- Added the ability to suppres ISO (fixed) and epoch date parsing.
2014-05-29 18:06:52 -04:00
Paul Beckingham
52eaf3f9c2 Variant
- Can now convert type_string to type_date via legacy dateformat, provided
  that Context transmits the format.
2014-05-29 00:43:39 -04:00
Paul Beckingham
f585f31d69 OldDuration
- Removed obsolete OldDuration object, replaced by Duration.
2014-05-28 23:59:16 -04:00
Paul Beckingham
9693a724f2 CmdEdit
- Converted from OldDuration to Duration.
2014-05-28 23:55:20 -04:00
Paul Beckingham
e73d19152e ColScheduled
- Converted from OldDuration to Duration.
2014-05-28 23:51:49 -04:00
Paul Beckingham
05be2c2fc4 ColDate
- Converted from OldDuration to Duration.
2014-05-28 23:50:32 -04:00
Paul Beckingham
f36ffd91e3 ColDue
- Converted from OldDuration to Duration.
2014-05-28 23:49:32 -04:00
Paul Beckingham
5ee040f3a3 CmdBurndown
- Converted from OldDuration to Duration.
2014-05-28 23:48:35 -04:00
Paul Beckingham
3302707768 CmdSummary
- Converted from OldDuration to Duration.
2014-05-28 23:47:14 -04:00
Paul Beckingham
0fba1957c2 CmdInfo
- Converted from OldDuration to Duration.
2014-05-28 23:46:09 -04:00
Paul Beckingham
c103f22513 ColRecur
- Converted from OldDuration to Duration.
2014-05-28 23:43:48 -04:00
Paul Beckingham
ea2efe4c93 ColUDA
- Converted from OldDuration to Duration.
2014-05-28 23:42:54 -04:00
Paul Beckingham
9412f685dd CmdStats
- Converted from OldDuration to Duration.
2014-05-28 23:42:03 -04:00
Paul Beckingham
0238d36143 feedback
- Converted from OldDuration to Duration.
2014-05-28 23:40:09 -04:00
Paul Beckingham
07282d2343 Duration
- Missing include.
2014-05-28 23:36:59 -04:00
Paul Beckingham
117ade1609 Duration
- Duration inherits all of OldDuration's formatting capabilities.
- ::formatISO adds support for ISO8601 desginated period type.
2014-05-28 23:28:56 -04:00
Paul Beckingham
29d3fa9c55 sort
- Converted from OldDuration to Duration.
2014-05-28 22:43:24 -04:00
Paul Beckingham
965284875c Duration
- Migrated methods and unit tests from OldDuration to Duration.
2014-05-28 22:41:29 -04:00
Paul Beckingham
f77074785b recur
- Converted from OldDuration to Duration.
2014-05-28 22:23:40 -04:00
Paul Beckingham
9c5222be8f Task
- Converted from OldDuration to Duration.
2014-05-28 21:03:59 -04:00
Paul Beckingham
dead140c74 Code Cleanup
- Removed unnecessary includes.
- Added comment for Date integration.
2014-05-28 21:03:03 -04:00
Paul Beckingham
dbbbeb102e Date
- Uses a simpler contructor.
2014-05-28 20:59:30 -04:00
Paul Beckingham
67d42b5241 CmdTags
- Uses the correct filter.
2014-05-27 22:43:58 -04:00
Paul Beckingham
50bfb6881a Context
- Captures argv[0] for us in the shadow command.
2014-05-27 21:23:33 -04:00
Paul Beckingham
ebca8e1282 Parser
- Made 'plain args' diagnostics debug-only.
2014-05-27 16:31:55 -04:00
Paul Beckingham
84b95ce06d Unit Tests
- Corrected assumptions in a unit test about the circumstances of file creation.
2014-05-27 16:14:32 -04:00
Paul Beckingham
c5cf4de4a0 Parser
- Multiple -- terminators are considered to be a single terminator followed
  by words that are not terminators. There can be only one!
2014-05-27 15:50:59 -04:00
Paul Beckingham
7f56187748 Variant
- The partial match operator now expects length(left) > length(right).
2014-05-27 15:33:58 -04:00
Paul Beckingham
ef412d0588 CmdAnnotate
- Now specifies that text modifications are required.
2014-05-27 00:50:18 -04:00
Paul Beckingham
4ff9550580 Unit Tests
- Removed unnecessary quotes.
2014-05-27 00:45:28 -04:00
Paul Beckingham
c39285b61c Task
- Renamed 'mods_required' argument to the more accurate 'text_required' in the
  ::modify method.
2014-05-27 00:37:31 -04:00
Paul Beckingham
f3bc606344 Cmd{Add,Append,Log,Prepend}
- The commands specify that description changes are required.
2014-05-27 00:35:52 -04:00
Paul Beckingham
b4539a9df9 Task
- ::modify now assumes that it is not mandatory that there be a non-trivial set
  of changes.  This can be overridden.
2014-05-27 00:34:48 -04:00
Paul Beckingham
1f253f7fc8 Variant
- ::operator_partial should fail for strings if either operand is of zero
  length.
2014-05-27 00:16:40 -04:00
Paul Beckingham
3c72e87d70 Unit Tests
- Made tests explicit about search terms.
2014-05-27 00:08:33 -04:00
Paul Beckingham
0b160292c0 Variant
- Implemented partial match for strings.
2014-05-27 00:08:07 -04:00
Paul Beckingham
0664cb5689 Unit Tests
- Updated tests to be explicit about plain args being search terms.
2014-05-26 23:44:09 -04:00
Paul Beckingham
f9d534939d Parser
- When a filter contains "uuid:<value>" this is matched using the partial
  match operator, which will allow use of abbreviated UUIDs.
2014-05-26 23:25:33 -04:00
Paul Beckingham
398bc9c824 Task
- If a date attribute is eval'ed and the result is a duration, add the value
  of 'now' to it, and store the result.  So '2wks' as a due date is interpreted
  as 'now + 2ks'.
2014-05-26 23:18:20 -04:00
Paul Beckingham
a32f2f991a Context
- A helper command (e.g. _ids) should be considered a "cmd", "readcmd" and
  "helper" entity.
2014-05-26 23:06:32 -04:00
Paul Beckingham
38fdbdaa50 Parser
- defaultCommand may contains multiple arguments, and so Lexer::split is used
  to properly split it into arguments.
2014-05-26 22:53:52 -04:00
Paul Beckingham
7d69c687b2 Parser
- ::findCommand failed to sport readcmd and helper commands because of a
  copy/paste error.
2014-05-26 21:55:02 -04:00
Paul Beckingham
9106780260 Parser
- Special handling for "project:<value>" where the partial match operator
  is used, instead of the usual exact match operator.
2014-05-26 21:06:45 -04:00
Paul Beckingham
e88ccee1e6 Eval
- Added the new Variant::operator_hastag and Variant::operator_notag operators
  to the expression evaluator. All operators now implemented, at least in
  stubbed form.
2014-05-26 21:05:38 -04:00
Paul Beckingham
ae356a1d32 Variant
- Implemented ::operator_hastag and ::operator_notag.
2014-05-26 21:04:47 -04:00
Paul Beckingham
b06ac68248 Lexer
- When a Lexer::typeIdentifier is found, it can be compared to a list of
  other tokens, with the possibility of changing the type. This applies to
  tokens that are longer than the four-character lookahead in the Lexer.
  With this change, the Lexer can now identify all operators supported by Eval,
  and therefore the Lexer can be used on all Eval input expressions. This is
  because all the evaluator needs to know is the distinction between operators
  and operands.
2014-05-26 20:58:10 -04:00
Paul Beckingham
261f86c134 Task
- Marked areas where eval expansion is likey required.
2014-05-26 20:55:37 -04:00
Paul Beckingham
a119b4c7c3 Task
- When no modifications are provided, but are expected, complain.
2014-05-26 15:18:30 -04:00
Paul Beckingham
bc1c7a6695 args
- Entered a complete and current entity set, for testing.
2014-05-26 15:07:21 -04:00
Paul Beckingham
1b19414178 Parser
- ::findCommand now checks for any abbreviated command.  If it finds either an
  exact match, or no ambiguity, it checks again to determine READCMD, WRITECMD
  or HELPER.
2014-05-26 15:05:56 -04:00
Paul Beckingham
a4d908d8b2 Parser
- Added exact match shortcut.
- Changed order of command matching to reduce changes of the log/logo problem.
- Corrected logic where an "else if" should have been an "if".
- Removed commented-out diagnostics.
2014-05-26 14:18:26 -04:00
Paul Beckingham
4ada2e2c43 Task
- Tag add/remove details improved.
2014-05-26 13:50:56 -04:00
Paul Beckingham
c342159369 Unit Tests
- calc.t was not up to date regarding the form of the diagnostic output.
2014-05-26 13:22:51 -04:00
Paul Beckingham
70620366c4 Eval
- Filter token diagnostics are color coded.
2014-05-26 12:55:22 -04:00
Paul Beckingham
410ca4bcba Context
- Removed uninteresting debug diagnostic.
2014-05-26 12:40:55 -04:00
Paul Beckingham
0857b82618 Task
- Added detailed modification pipeline diagnostics.
2014-05-26 12:18:11 -04:00
Paul Beckingham
bba0b75a3b Eval
- Cleaned up debug FILTER diagnostics.
2014-05-26 12:16:44 -04:00
Paul Beckingham
2030df8563 Task
- Task modifications that involved no 'words' were clobbering the description
  unnecessarily.
2014-05-26 11:02:24 -04:00
Paul Beckingham
0047bb7325 Task
- Date attributes were being saved as strings, which means a default format of
  YYYY-MM-DDThh:mm:ss, and it should have been epoch.
2014-05-26 10:31:43 -04:00
Paul Beckingham
a559890368 CmdPrepend
- Was appending, not prepending.  Duh.
2014-05-25 23:10:54 -04:00
Paul Beckingham
e5e0ac8ba3 CmdCustom
- Captured args do not need additional tags.
2014-05-25 23:03:43 -04:00
Paul Beckingham
904c42fcbe Parser
- ::getCommand should return the canonical form of the command, not the raw
  input.
2014-05-25 22:45:00 -04:00
Paul Beckingham
e2aacb87f9 Arg
- Removed obsolete Arg.
2014-05-25 22:08:04 -04:00
Paul Beckingham
c40cb97cfb A3
- Removed all obsolete A3 code. Onward and upward.
2014-05-25 21:35:33 -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
afe4b6883f Context
- Removed all A3 references.
2014-05-25 20:02:26 -04:00
Paul Beckingham
4b12c87c40 Context
- Eliminated call to A3::list.
2014-05-25 19:50:50 -04:00
Paul Beckingham
f87d7bd94a Context
- Converted from A3::find_command to Parser::getCommand.
2014-05-25 19:41:02 -04:00
Paul Beckingham
ce7506f4fc Parser
- Implemented ::getCommand.
2014-05-25 19:32:35 -04:00
Paul Beckingham
f908e2ae02 E9
- Removed obsolete E9, and remaining references.
2014-05-25 19:08:52 -04:00
Paul Beckingham
f495e7c385 A3
- Removed obsolete ::which_operator.
2014-05-25 19:02:44 -04:00
Paul Beckingham
3abff20a46 Code Cleanup
- Removed obsolete A3::postfix, Task::modify, Task::next_mod_group,
  Command::modify_task*.
2014-05-25 18:53:30 -04:00
Paul Beckingham
e7d733881a A3
- Removed obsolete ::extract_modifications method.
2014-05-25 18:00:44 -04:00
Paul Beckingham
fb639496d3 CmdDenotate
- Converted from A3 modifications to Task::modify.
2014-05-25 17:58:12 -04:00
Paul Beckingham
bbbe690307 CmdDelete
- Converted from A3 modifications to Task::modify.
2014-05-25 17:38:55 -04:00
Paul Beckingham
a1a58bdc32 CmdDone
- Converted from A3 modifications to Task::modify.
2014-05-25 17:35:06 -04:00
Paul Beckingham
03d4aacc5c CmdDuplicate
- Converted from A3 modifications to Task::modify.
2014-05-25 17:32:42 -04:00
Paul Beckingham
58bf88f425 CmdLog
- Converted from A3 modifications to Task::modify.
2014-05-25 17:30:49 -04:00
Paul Beckingham
6291f16e1d CmdAnnotate
- Converted from A3 modifications to Task::modify.
2014-05-25 17:28:56 -04:00
Paul Beckingham
969db3a9ed CmdStop
- Converted from A3 modifications to Task::modify.
2014-05-25 17:27:34 -04:00
Paul Beckingham
350b73cb8c CmdStart
- Converted from A3 modifications to Task::modify.
2014-05-25 17:24:59 -04:00
Paul Beckingham
e0e71bb065 CmdPrepend
- Converted from A3 modifications to Task::modify.
2014-05-25 17:23:32 -04:00
Paul Beckingham
0551e70967 CmdAppend
- Converted from A3 modifications to Task::modify.
2014-05-25 17:18:52 -04:00
Paul Beckingham
f2eb34d66a CmdAdd
- Converted from A3 modifications to Task::modify.
2014-05-25 17:12:32 -04:00
Paul Beckingham
3a71fac1ee Task
- Added Eval sources.
2014-05-25 17:02:55 -04:00
Paul Beckingham
79ac26cb02 Filter
- The domSource function is no longer static, and is prototyped in Filter.h
  for general use.
2014-05-25 16:57:46 -04:00
Paul Beckingham
5a0c07782e CmdModify
- Converted from A3 modifications to Task::modify.
2014-05-25 16:51:56 -04:00
Paul Beckingham
6f32fa9b54 Command
- Marked obsolete methods as such.
2014-05-25 16:51:36 -04:00
Paul Beckingham
1bdfb5d431 Task
- Implemented an overloaded ::modify method that walks the parse tree instead
  of iterating over an A3 list.
- ::modify takes a Task::modType argument, which specifieѕ how words are
  handled (replace description, prepend to description, append to description,
  add annotation), and this eliminates the need for multiple modify methods.
- Marked existing methods as obsolete.
2014-05-25 16:47:27 -04:00
Paul Beckingham
949063102a Diagnostics
- Further removal of diagnostic output.
2014-05-25 14:59:09 -04:00
Paul Beckingham
fa02eb4ed2 CmdCustom
- Eliminated A3.
2014-05-25 14:38:51 -04:00
Paul Beckingham
7688bdc6c4 Context
- Removed obsolete A3::dump call.
- Marked all a3 references as obsolete.
2014-05-25 14:33:46 -04:00
Paul Beckingham
4a4cdd6324 Eval
- Removed more diagnostics.
2014-05-25 14:30:02 -04:00
Paul Beckingham
d62c4428a9 Eval
- Removed exception handlers in ::infixParse, thereby relying on the caller to
  set up appropriate handling.
2014-05-25 14:26:20 -04:00
Paul Beckingham
d79c86ebb5 Eval
- ::dump method now colorizeѕ tokens according to a map.
2014-05-25 14:22:19 -04:00
Paul Beckingham
fee493bcc0 Eval
- Removed std::cout diagnostics, stubbed the A3::dump replacement.
2014-05-25 14:11:55 -04:00
Paul Beckingham
6b2a71770d Code Cleanup
- Removed unnecessary diagnostics.
2014-05-25 13:48:26 -04:00
Paul Beckingham
c0c1eca0fc Filter
- Filter diagnostics include which data file was loaded.
2014-05-25 13:21:36 -04:00
Paul Beckingham
f8bb948b90 Text
- Added formatter for <int, int, std::string>.  There cannot be many
  combinations remaining.
2014-05-25 13:18:30 -04:00
Paul Beckingham
9bea83c2c3 Filter
- Generates debug message about filtering process.
2014-05-25 13:07:56 -04:00
Paul Beckingham
79abddd03d Parser
- Renamed A3t to Parser.
2014-05-25 09:44:22 -04:00
Paul Beckingham
ecd64456ae A3
- Removed obsolete ::sequence method.
2014-05-25 09:26:32 -04:00
Paul Beckingham
543651055f A3
- Removed obsolete ::expand method.
2014-05-25 09:19:44 -04:00
Paul Beckingham
1a75039cf7 A3
- Removed obsolete ::infix method.
2014-05-25 09:15:49 -04:00
Paul Beckingham
87a48ab7f5 A3
- Removed obsolete _read_only_command member.
2014-05-25 09:06:49 -04:00
Paul Beckingham
562beac12b A3
- Removed obsolete ::find_limit method and _limit member.
2014-05-25 09:04:36 -04:00
Paul Beckingham
3f8a723903 A3
- Removed obsolete ::extract_filter.
2014-05-25 08:58:24 -04:00
Paul Beckingham
f5a13e5e42 Filter
- Full transition to the new filtering mechanism, using the new expression
  evaluator. It is working well enough to start the dogfood.  Many tests
  now broken.
2014-05-25 08:51:56 -04:00
Paul Beckingham
df173d7d84 Command
- Removed unnecessary #includes.
2014-05-25 00:25:21 -04:00
Paul Beckingham
6b53cf4027 Command
- Removed obsolete ::filter, ::filter_shortcut and ::safety methods.
  These are now implemented in the Filter object, and use A3t.
2014-05-25 00:02:27 -04:00
Paul Beckingham
4ba2761aa6 CmdStop
- Converted from A3 to Filter.
2014-05-24 23:53:26 -04:00
Paul Beckingham
9f7bc7b11c CmdStart
- Converted from A3 to Filter.
2014-05-24 23:53:09 -04:00
Paul Beckingham
82ccc80e9a CmdProjects
- Converted from A3 to Filter.
2014-05-24 23:52:51 -04:00
Paul Beckingham
510be02b64 CmdPrepend
- Converted from A3 to Filter.
2014-05-24 23:52:32 -04:00
Paul Beckingham
1cbada6bc5 CmdModify
- Converted from A3 to Filter.
2014-05-24 23:52:06 -04:00
Paul Beckingham
cc5ae78f31 CmdDuplicate
- Converted from A3 to Filter.
2014-05-24 23:51:46 -04:00
Paul Beckingham
09d4941bc1 CmdDone
- Converted from A3 to Filter.
2014-05-24 23:51:25 -04:00
Paul Beckingham
1964ffc053 Filter
- Implemented the safety mechanism that checks for confirmation is a
  write command processes a filter, but the filter expression is blank.
  For example, running "task delete" would delete all tasks unless this
  safety check is in place.
2014-05-24 23:48:20 -04:00
Paul Beckingham
4e9c8ede2b CmdDenotate
- Converted from A3 to Filter.
2014-05-24 23:01:42 -04:00
Paul Beckingham
df1f571061 CmdDelete
- Converted from A3 to Filter.
2014-05-24 22:59:54 -04:00
Paul Beckingham
2495c1606a CmdAppend
- Converted from A3 to Filter.
2014-05-24 22:58:48 -04:00
Paul Beckingham
47b1321028 CmdAnnotate
- Converted from A3 to Filter.
2014-05-24 22:58:20 -04:00
Paul Beckingham
46b360beb0 CmdTags
- Converted from A3 to Filter.
2014-05-24 22:55:00 -04:00
Paul Beckingham
7a196bac9c CmdIDs
- Converted from A3 to Filter.
2014-05-24 22:52:04 -04:00
Paul Beckingham
644b1ae7ef CmdSummary
- Converted from A3 to Filter.
2014-05-24 15:18:53 -04:00
Paul Beckingham
7ac1a7d5e5 CmdStats
- Converted from A3 to Filter.
2014-05-24 15:17:00 -04:00
Paul Beckingham
6cb64e370e Filter
- Added more stubbed transition code.
2014-05-24 15:16:07 -04:00
Paul Beckingham
1561075b51 CmdHistory
- Converted from A3 to Filter.
2014-05-24 15:09:08 -04:00
Paul Beckingham
581c310631 CmdBurndown
- Converted from A3 to Filter.
2014-05-24 15:06:58 -04:00
Paul Beckingham
614331aa23 CmdInfo
- Converted from A3 to Filter.
2014-05-24 15:01:24 -04:00
Paul Beckingham
410f4a3983 CmdCustom
- Converted from A3 to Filter.
2014-05-24 14:58:13 -04:00
Paul Beckingham
3799b5dc9c A3t
- Added ::getLimit to find the 'limit:n' pseudo attribute.
2014-05-24 14:51:27 -04:00
Paul Beckingham
051a92bf91 Unit Tests
- Test was not setting proper verbosity level.
2014-05-24 14:29:09 -04:00
Paul Beckingham
7558527823 Unit Tests
- Test was looking for 'one', and found a false positive of 'none'.
2014-05-24 14:26:07 -04:00
Paul Beckingham
856e777004 Unit Tests
- Test was not specifying correct verbosity for the tests.
2014-05-24 14:23:23 -04:00
Paul Beckingham
492272dec4 CmdExport
- Converted from A3 to Filter.
2014-05-24 14:16:12 -04:00
Paul Beckingham
7e8e48ff08 Filter
- Stubbed code for eventual elimination of E9 in Filter.
2014-05-24 14:15:39 -04:00
Paul Beckingham
66d8a1267c CmdUrgency
- Converted from A3 to Filter.
2014-05-24 13:34:54 -04:00
Paul Beckingham
2a72d0f1d6 Filter
- Added a static contextTask task reference instead of an iterator that
  domSource cannot dereference.  Idiot.
2014-05-24 13:33:15 -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
a801ec2f50 CmdUDAs
- Converted from A3 to Filter.
2014-05-24 12:15:39 -04:00
Paul Beckingham
c3a759c63d Dates
- Moved an invariant to greater scope.
2014-05-24 11:37:21 -04:00
Paul Beckingham
b532b94b81 Dates
- Implemented midsommar and midsommarafton.
2014-05-24 11:34:40 -04:00
Paul Beckingham
4851e0ed2b Unit Tests
- Added TW-1267 unit tests (thank to Renato Alves).
2014-05-24 11:10:28 -04:00
Paul Beckingham
f4fc65e1ed Unit Tests
- Added DOM id --> UUID --> id round trip tests.
2014-05-24 11:04:32 -04:00
Paul Beckingham
958848656a A3t
- Uses rc.abbreviation.minimum for autocompletion.
2014-05-24 10:56:41 -04:00
Paul Beckingham
704e85fcbc TD-57
- TD-57 taskdctl script assumes /bin/sh is /bin/bash (thanks to Tatjana Heuser).
2014-05-23 16:34:08 -04:00
Paul Beckingham
30dc62703d TD-56
- TD-56 File.cpp needs to include <string.h> on Solaris (thanks to Tatjana
        Heuѕer).
2014-05-23 16:26:55 -04:00
Paul Beckingham
c60ec0b6ee TD-55
- TD-55 TLSServer/Client need to include <errno.h> on Solaris (thanks to Tatjana
        Heuser).
2014-05-23 16:23:51 -04:00
Paul Beckingham
cdf9f3c04e Eval
- Protection against array overrun.
- Typo in diagnostic output.
2014-05-23 15:49:15 -04:00
Paul Beckingham
8d45e73744 A3t
- ::findUUIDList no longer assumes success after matching the first
  UUID.
2014-05-23 15:47:38 -04:00
Paul Beckingham
42f3419bd3 Eval
- Added range checking to the while loop for the parser, to prevent
  runnig over, which caused some of the problems with segfaults on
  Debian & Ubuntu.
2014-05-22 22:52:23 -04:00
Paul Beckingham
5893bfede5 Revert "Unit Tests"
This reverts commit 93a241417e.
2014-05-22 22:48:31 -04:00
Paul Beckingham
14a74fefdc A3t
- ::getWords now only extracts original args, not synthetics.
2014-05-22 16:14:35 -04:00
Paul Beckingham
93a241417e Unit Tests
- Removed tests that are no longer relevant, and fail.
2014-05-22 16:14:05 -04:00
Paul Beckingham
213f889a55 A3t
- Removed diagnostic output.
2014-05-21 23:53:39 -04:00
Paul Beckingham
ea00f20425 A3t
- When a pattern or UUID is found, quote the literal.
2014-05-21 23:47:02 -04:00
Paul Beckingham
6a9b95079c A3t
- Inserts an 'or' between ID/UUID range/lists, and inserts an 'and' between
  consecutive non-operators.
2014-05-21 23:39:35 -04:00
Paul Beckingham
1b2b110a1c A3t
- Implemented ::insertMissingOperators.
- Eliminated unused code.
2014-05-21 23:06:14 -04:00
Paul Beckingham
5f143bee49 Context
- Found another case where an empty verbosity token list was being examined.
2014-05-21 20:22:38 -04:00
Paul Beckingham
ad0c349684 Context
- Verbose control bug fix which was caused by verbose=off due to a
  missing rc.verbose setting, then later comparison with the first
  token, which did not exist.
2014-05-21 20:11:37 -04:00
Paul Beckingham
d53c432ff9 Verbosity
- New verbosity token 'filter' shows the complete filter used by the last
  command.
2014-05-21 17:21:22 -04:00
Paul Beckingham
58d8938fda A3t
- Switch sub nodes from using 'value' to the more uniform 'raw'.
2014-05-21 00:07:50 -04:00
Paul Beckingham
2f46c5de31 A3t
- ::findMissingOperators now detects all locations where a logicl operator
  is needed.
2014-05-21 00:03:05 -04:00
Paul Beckingham
c9a94f0205 A3t
- ::findAttribute now properly inserts sub nodes.
2014-05-20 23:51:46 -04:00
Paul Beckingham
9562fad396 A3t
- Removed tag 'EXPANDED', which can be replaced by a call to node.size ().
2014-05-20 23:50:55 -04:00
Paul Beckingham
195fa20a48 A3t
- Implemented the stubbed outline of ::findMissingOperators, for injecting
  'and' or 'or' into filter expressions, where needed.
2014-05-20 23:49:41 -04:00
Paul Beckingham
10d08ad4f9 A3t
- Filter expressions are parenthesized.
2014-05-20 23:48:14 -04:00
Paul Beckingham
5aeb35663b A3t
- ::getFilterExpression now has a simplified implementation.  Sure, it
  returns bad filters, but that will change.
2014-05-20 18:29:05 -04:00
Paul Beckingham
2cd0494221 A3t
- ::findAttributeModifier now creates sub nodes.
2014-05-20 18:26:32 -04:00
Paul Beckingham
6c6c3df104 A3t
- ::findIDSequence now creates sub nodes.
2014-05-20 18:25:47 -04:00
Paul Beckingham
81614dda84 A3t
- ::findUUIDList now creates sub nodes.
2014-05-20 18:24:58 -04:00
Paul Beckingham
5f6230da3a A3t
- ::findTag now creates sub nodes.
2014-05-20 18:24:21 -04:00
Paul Beckingham
922b80a5be A3t
- ::findPattern now creates sub nodes.
2014-05-20 18:23:25 -04:00
Paul Beckingham
623b1619df Dates
- Converted atoi to strtol, and added the missing include.
2014-05-20 18:01:35 -04:00
Paul Beckingham
d9e1607f05 Eval
- Attempts named source resolution as part of primitive parsing.
2014-05-19 22:06:58 -04:00
Paul Beckingham
52edc9b7cf Dates
- Easter needs time set to 0:00:00.
2014-05-19 22:06:11 -04:00
Paul Beckingham
23f6840b95 Dates
- Supports '21st' as a date.  Theoretically.
2014-05-19 22:02:08 -04:00
Paul Beckingham
05fbdd594e CmdEdit
- Now diplays an unmodifiable 'modified' attribute.
2014-05-19 20:16:25 -04:00
Paul Beckingham
c9f6a4b9df Unit Tests
- Added Variant::operator_partial unit tests, based initially on
  ::operator==.
2014-05-19 20:15:32 -04:00
Paul Beckingham
592b3bdcb9 Eval
- Connected operator '=' to Variant::operator_partial.
2014-05-19 20:13:35 -04:00
Paul Beckingham
c74d45b15a Variant
- Added ::operator_partial.
2014-05-19 20:12:38 -04:00
Paul Beckingham
5513a0c843 Hooks
- Updated method comments.
2014-05-18 16:10:36 -04:00
Paul Beckingham
e7af475a2e Path/Directory
- Uses proper macros for st_mode inspection (thanks to Wim Schuermann).
2014-05-18 12:18:35 -04:00
Paul Beckingham
550d592abe CmdDiagnostics
- Now shows sizeof (time_t) in bits.
2014-05-17 22:16:55 -04:00
Paul Beckingham
14bfbb80b3 Merge pull request #3 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit '08c11da7022c424ce1301d2b3923b254c8e7a305':
  Testing
  Testing
  Testing certificates
  Unittesting basemodule
2014-05-18 01:35:10 +00:00
Renato Alves
08c11da702 Testing
Expose location of taskd.log and taskd.pid
2014-05-17 22:05:30 +01:00
Renato Alves
29d5de1154 Testing
Add a class to manage one or more taskd servers running on the same
machine.
2014-05-17 21:44:51 +01:00
Renato Alves
1d85416692 Testing certificates
Add certificates for use with taskd and task
2014-05-17 21:44:51 +01:00
Renato Alves
f54494d45a Unittesting basemodule
merge_streams was not having the desired effect
2014-05-17 21:44:51 +01:00
Paul Beckingham
f6607168ad Path
- Now uses 'lstat' instead of 'stat' to determine whether a path is
  a symlink. This doesn't work either.
2014-05-17 14:28:35 -04:00
Paul Beckingham
924182e12c Diagnostics
- Now displays all installed hook scripts, with executable/symlink status.
2014-05-17 14:25:02 -04:00
Paul Beckingham
92010eeb2c Path
- Implemented Path::is_link, although it doesn't work.  Why?
2014-05-17 14:21:19 -04:00
Paul Beckingham
0ffc95e312 Hooks
- Added Hooks::list method to provide a list of known hooks.
2014-05-17 14:20:46 -04:00
Paul Beckingham
e660f61cd2 Hooks
- Added 'Hooks' section to diagnostics command output.
2014-05-17 14:20:08 -04:00
Paul Beckingham
2897005e25 Documentation
- Updated developer docs.
2014-05-17 13:52:01 -04:00
Paul Beckingham
db37b0d4ed Hooks
- Corrected comment in sample hook script.
2014-05-17 11:41:32 -04:00
Paul Beckingham
11058396c8 Hooks
- Cleaned up せxample hooks, with clearer inline documentation.
2014-05-17 11:16:32 -04:00
Paul Beckingham
de34095eb5 Merge branch 'hooks' into 2.4.0 2014-05-16 19:02:53 -04:00
Paul Beckingham
9248f1569f Hooks
- Corrected check for trivial input.
2014-05-14 22:47:12 -04:00
Paul Beckingham
d70c8eef5c Hooks
- ::onLaunch now conforms to design.
2014-05-14 22:39:56 -04:00
Paul Beckingham
3010ac667b Hooks
- ::onAdd now conforms to design.
2014-05-14 22:39:35 -04:00
Paul Beckingham
0d2bc00527 Hooks
- ::onExit now comforms to design.
2014-05-14 22:10:40 -04:00
Paul Beckingham
b1c0e67581 Hooks
- ::onModify now conforms to design.
2014-05-14 21:44:22 -04:00
Paul Beckingham
0b6e94280e Hooks
- Debug diagnostics now include exit status of hook script.
2014-05-14 21:43:03 -04:00
Paul Beckingham
3f2df5a3b6 Hooks
- Added example hook scripts.
2014-05-14 20:10:37 -04:00
Paul Beckingham
8c36392fb0 Hooks
- Added diagnostics for debugging.
2014-05-14 17:47:28 -04:00
Paul Beckingham
c86853fd03 Hooks
- Added helper method ::scripts to filter by event and accessibility.
2014-05-14 17:45:42 -04:00
Paul Beckingham
dee6f3a713 Hooks
- Implemented ::onModify.
2014-05-14 00:11:13 -04:00
Paul Beckingham
0bb3be73da Hooks
- Implemented ::onAdd.
2014-05-14 00:05:47 -04:00
Paul Beckingham
8f14d83955 Hooks
- Implemented ::onExit.
2014-05-14 00:05:22 -04:00
Paul Beckingham
398bec3dbe Hooks
- Implemented ::onLaunch.
2014-05-14 00:04:51 -04:00
Paul Beckingham
ad1dc807ea Context
- Added special integer catch handler for hook terminations.
2014-05-14 00:03:56 -04:00
Paul Beckingham
d30fb54a62 Hooks
- Implemented ::execute to run a command, feed it input, read it's output and
  return the exit status.
2014-05-14 00:03:02 -04:00
Paul Beckingham
68436d0d50 TDB2
- Integrated hooks to TF2::add_task and TF2::modify_task.
2014-05-13 22:06:19 -04:00
Paul Beckingham
631e4176c7 Hooks
- Added ::onAdd.
2014-05-13 22:04:35 -04:00
Paul Beckingham
2f5435c50f Hooks
- Added ::onModify.
- Stubbed out functionality in all three hook methods.
2014-05-13 21:49:56 -04:00
Paul Beckingham
ff52a2ab59 Hooks
- Defined the interface for ::onLaunch and ::onExit.
2014-05-13 18:58:57 -04:00
Paul Beckingham
f1451b2670 Hooks
- Enumerates installed hook scripts and sorts it, thus defining the
  execution sequence.
2014-05-13 18:58:15 -04:00
Paul Beckingham
446fd88b8b Config
- When creating <rc.data.location>, also creates the hook subdirectory.
2014-05-13 18:56:13 -04:00
Paul Beckingham
12a2012f20 Hooks
- Scans <rc.data.location>/hooks for files on initialize.
2014-05-13 17:12:30 -04:00
Paul Beckingham
cc112aeec7 Context
- Relocated the hooks.onExit call to a location where it can still influence
  output.
2014-05-13 16:49:29 -04:00
Paul Beckingham
7bf2b4039e Context
- Added a hook timer.
2014-05-13 16:49:10 -04:00
Paul Beckingham
d12c519380 Hooks
- Added ::onExit.
2014-05-13 16:48:26 -04:00
Paul Beckingham
39c476134f Hooks
- Added ::onLaunch.
2014-05-13 16:34:23 -04:00
Paul Beckingham
6cff8d9ff6 Hooks
- Added ::initialize method.
2014-05-13 16:31:27 -04:00
Paul Beckingham
bfb19e0a64 Hooks
- Gutted the Hooks object.
- Commented out on-launch and on-exit triggers.
2014-05-13 16:23:50 -04:00
Paul Beckingham
e9178f6b34 TW-1264
- TW-1264 Project | Tags assigned ratio of tasks (thanks to Benjamin Weber).
2014-05-13 00:50:36 -04:00
Paul Beckingham
20fe380a5e TW-253
- TW-253 Unrecognized taskwarrior file format. in
         /Users/user/Dropbox/.task/completed.data at line 1 (thank to Kosta
         Harlan).
2014-05-13 00:40:18 -04:00
Paul Beckingham
7f3e42e4e1 TLS
- Reworded error messages for bad PEM files (thanks to catern).
2014-05-12 22:04:01 -04:00
Paul Beckingham
23f02b2268 Command
- Marked obsolete methods.
2014-05-12 00:26:41 -04:00
Paul Beckingham
8a92c36916 CmdEdit
- Converted from A3 to Filter.
2014-05-12 00:18:22 -04:00
Paul Beckingham
468e02c73b Eval
- Marked the partial match operator as needing special consideration for
  proejct and UUID.
2014-05-12 00:17:36 -04:00
Paul Beckingham
ffec82701d A3t
- Added ID and UUID sequence generation, as part of the filter expression.
  Now creates efficient filters, like '(id >= 1 and id <= 10)'
2014-05-12 00:16:32 -04:00
Paul Beckingham
9095cedd5e CLI Samples
- Added a multi-UUID sample test.
2014-05-11 23:57:51 -04:00
Paul Beckingham
454c1a5211 Documentation
- Updated DEVELOPER doc with latest branches, build instructions.
2014-05-11 18:05:04 -04:00
Paul Beckingham
73ecd13597 Code cleanup
- Tidied CMakeLists.txt to trigger a flod build as a test.
2014-05-11 16:23:56 -04:00
Paul Beckingham
4357f9c545 Unit Tests
- hyphenate.t was maing assumptions about report output that can be reduced.
2014-05-11 15:05:56 -04:00
Paul Beckingham
702e4e41fc Calendar
- Typo.
2014-05-11 14:48:32 -04:00
Paul Beckingham
7ffd391faa Filter
- Filter mismatch reports now only show in debug mode.
2014-05-11 14:46:46 -04:00
Paul Beckingham
980ab680f3 Unit Tests
- Calendar command needs to be explicit (because calendar/calc share the first
  three letters).
2014-05-11 14:33:49 -04:00
Paul Beckingham
8f02fb1b13 Filter
- Clearly marked the obsolete code.
2014-05-11 13:54:28 -04:00
Paul Beckingham
e6817033d3 TW-1321
- TW-1321 Unit test view.t fails oddly on Ubuntu 13.10 (thanks to John West).
2014-05-11 17:39:44 +00:00
Paul Beckingham
60e29f6f52 Merge branch '2.4.0' of ssh://git.tasktools.org/tm/task into 2.4.0
Conflicts:
	ChangeLog
2014-05-11 10:46:19 -04:00
Paul Beckingham
ea6ff48d58 Portability
- Attempt 4 to eliminate build warning without causing problems.
2014-05-11 10:44:51 -04:00
Paul Beckingham
a899fb941d Code Cleanup 2014-05-11 10:44:17 -04:00
Paul Beckingham
b6ca326707 TW-1320
- TW-1320 Provide output of malformed row if invalid Taskwarrior file format
          (thanks to Kost Harlan).
2014-05-11 10:20:17 -04:00
Paul Beckingham
a97ce45cdf Eval
- Debug mode can now be disabled.
2014-05-11 10:15:10 -04:00
Paul Beckingham
567f242e6d Documentation
- Typo in reference sheet (thanks to Milos Svantner).
2014-05-11 08:05:56 -04:00
Paul Beckingham
e1eb3acc1c Merge branch '2.4.0' of ssh://git.tasktools.org/tm/task into 2.4.0 2014-05-10 11:46:35 -04:00
Paul Beckingham
a5cf624ba1 TW-1263
+- TW-1263 Command Reference Redesign.
2014-05-10 11:46:16 -04:00
Paul Beckingham
25abf04fdf TW-1318
- TW-1318 creating a UDA in the wrong sequence will cripple taskwarrior (thanks
          to Onion).
2014-05-09 22:57:40 -04:00
Paul Beckingham
49d39984d9 Regex
- Regular expressions are now enabled by default.
2014-05-08 07:07:08 -04:00
Paul Beckingham
eb6c38ac17 Code Cleanup
- Removed obsolete configuration variable 'patterns', which is no longer
  used.
2014-05-08 07:05:29 -04:00
Paul Beckingham
fa2af30857 A3t
- Implemented ::findPlainArgs, for locating words that can be promoted to
  patterns.
2014-05-06 21:26:30 -04:00
Paul Beckingham
07a1f9d6b5 Unit Tests
- Added tests for Tree::countTags.
2014-05-06 21:17:09 -04:00
Paul Beckingham
d00c685699 Tree
- Added ::countTags method.
2014-05-06 21:16:30 -04:00
Paul Beckingham
9cfd3e7d34 Dcoumentation
- Flod test 2.
2014-05-04 22:18:14 -04:00
Paul Beckingham
b158b1ac06 Test
- Flod test 1.
2014-05-04 19:16:51 -04:00
Paul Beckingham
656dcde272 Filter
- Implemented ::pendingOnly (was named ::shortcut), for detecting filters
  that do not need to access completed.data.
2014-05-02 23:39:03 -04:00
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
Paul Beckingham
45453de477 TW-1309
- TW-1309 memory error, if misconfigured calendar.details.report (thanks to
          Onion).
2014-04-23 08:02:43 -04:00
Paul Beckingham
a2410bdba9 Testing
- Removed unsupported command line constructs.
2014-04-23 00:24:47 -04:00
Paul Beckingham
9d33691cab TW-253
- Added details in debug mode, for unrecognized data (thanks to Kosta H).
  Note: does not close TW-253.
2014-04-22 22:21:40 -04:00
Paul Beckingham
3786e58b88 Args
- Added a more complete set of entities.
2014-04-21 16:25:47 -04:00
Paul Beckingham
45bd916a1a Args
- Added call to A3t::getFilterExpression, for testing.
2014-04-21 16:25:09 -04:00
Paul Beckingham
997bdbdb90 A3t
- Implemented first pass as getFilterExpression.
2014-04-21 16:24:19 -04:00
Paul Beckingham
b690a8d2a3 A3t
- Renamed methods for consistency.
2014-04-21 16:23:17 -04:00
Paul Beckingham
26fb3c1686 Merge branch '2.4.0' of ssh://git.tasktools.org/tm/task into 2.4.0 2014-04-21 16:17:48 -04:00
Paul Beckingham
57b876f005 Tree
- Parse tree is now colored to match the old one, somewhat.
2014-04-21 16:17:31 -04:00
Paul Beckingham
e82cffe8ac Cleanup
- Updated comments, docs.
2014-04-21 16:04:18 -04:00
Paul Beckingham
3e5dc56773 A3t
- ::findFilter and ::findModications now remove the '?' tag.
2014-04-20 10:42:44 -04:00
Paul Beckingham
0771ee2399 A3t
- Cleaned up ::validate, added notes for further validation.
- Removed obsolete comments.
2014-04-20 10:27:47 -04:00
Paul Beckingham
e05610d1d7 A3t
- Implemented ::findModifications to identify nodes that comprise the
  task modifications.
2014-04-20 10:12:24 -04:00
Paul Beckingham
2390838894 A3t
- Implemented ::findFilter to identify nodes that comprise a filter.
2014-04-20 10:09:30 -04:00
Paul Beckingham
3d2dd05332 A3t
- Default and assumed commands are tagged accordingly.
2014-04-20 09:30:55 -04:00
Paul Beckingham
ca887131a4 CmdCustom
- Custom report filters are now tagged acordingly in the parse tree.
2014-04-20 09:30:06 -04:00
Paul Beckingham
3cb10a4850 Command
- Added a debug mode parse tree dump in Command::filter, which is the
  first opportunity to see the complete tree.  There will be other places
  where this occurs too.
2014-04-20 09:28:35 -04:00
Paul Beckingham
6f948826a7 A3t
- Combined ::findFileOverride and ::findConfigOverride into ::findOverride.
- Made ::findBinary public, and corrected comment.
2014-04-20 09:26:01 -04:00
Paul Beckingham
13c0efb178 Add-on
- Updated the import-todo.sh with the latest examples from todotxt.org, and
  tested that the import is still good.
2014-04-20 08:16:24 -04:00
Paul Beckingham
e8e25bb7c6 A3t
- The ::capture_first method now returns a pointer to the new branch.
2014-04-19 11:57:46 -04:00
Paul Beckingham
24d7411aa8 I18N
- Updated all L10N language/country references to use ISO 639-3 (language)
  and ISO 3166-1 alpha 3 (country) codes.
- Note that holiday files are not updated.
2014-04-19 09:26:22 -04:00
Paul Beckingham
ab6150c298 A3t
- Removed diagnostics.
2014-04-19 08:43:52 -04:00
Paul Beckingham
3c701c8d5b A3t
- Removed obsolete ::findAliases method.
2014-04-19 08:28:02 -04:00
Paul Beckingham
a353cbaf91 Alias
- Integrated new Alias object into new command line processing.
2014-04-19 08:22:27 -04:00
Paul Beckingham
93e28c1707 Alias
- Broke out alias handling into a separate object.
2014-04-19 08:20:03 -04:00
Paul Beckingham
c65670278c A3t
- Added tree accessor.
2014-04-19 08:19:12 -04:00
Paul Beckingham
1a731500e6 Args
- Updated 'run' script to exercise the old 2.0 command line examples, as well
  as the new 2.4.0 examples.
2014-04-18 00:07:36 -04:00
Paul Beckingham
aa9e3da77b Args
- Updated args.cpp to be at parity with Context::initialize.
2014-04-17 23:52:09 -04:00
Paul Beckingham
f439cd4813 A3t
- Renamed resolve_aliases to findAliases, for a better fit.
- Partially implemented findAliases.
2014-04-17 22:01:55 -04:00
Paul Beckingham
6ad9ef78ba TW-1307
- TW-1307 burndown is aliased to burndown.weekly (thanks to darkfeline).
2014-04-17 06:50:35 -04:00
Paul Beckingham
3afaa2fd0b A3t
- Implemented A3t::capture_first, for command injection.
2014-04-16 17:03:38 -04:00
Paul Beckingham
16fc71e2ef Code Cleanup
- Readability.
2014-04-16 16:56:45 -04:00
Paul Beckingham
43be3edb31 A3t
- Testing structㄩre of A3t::inject_defaults.
2014-04-16 16:01:42 -04:00
Paul Beckingham
b5649fca8c A3t
- Relocated calls to findCommand, findUUIDList, findIdSequence from
  A3t::parse to Context::initialize.
2014-04-16 15:59:56 -04:00
Paul Beckingham
9b0e4d6eb1 Args
- Added specific calls to locate the command, rc: an rc. overrides.
2014-04-16 15:57:12 -04:00
Paul Beckingham
ca8d22ab54 A3t
- Added stubbed A3t::inject_defaults and A¾t::resolve_aliases methods.
2014-04-16 00:51:49 -04:00
Paul Beckingham
de5204adb9 A3t
- Added operator entities.
2014-04-16 00:48:27 -04:00
Paul Beckingham
bf30fb3085 Eval
- Added Eval::getOperators to expose suported operator symbols.
2014-04-16 00:38:43 -04:00
Paul Beckingham
fff1ae2d6e A3t
- Fixed segfault caused by combined map lookup and method call.
2014-04-16 00:12:18 -04:00
Paul Beckingham
8d10d81198 Columns
- Removed ColUDA::is_uda override, because it was wrong.  Now in the base class
  a member variable is referenced.
2014-04-16 00:06:29 -04:00
Paul Beckingham
2aa224d278 TW-1298
- TW-1298 The color 'orange' is not recognized. - taskwarrior will not start
          anymore (thanks to Bernd Humpa).
2014-04-15 23:37:05 -04:00
Paul Beckingham
c03df08d1e TW-1278
- TW-1278 Next report filters tasks with due date set until due date arrives
          (thanks to Renato Alves).
2014-04-15 23:22:31 -04:00
Paul Beckingham
c0ed08e5e2 A3t
- Tags attributes as MODIFIABLE.
2014-04-15 21:14:38 -04:00
Paul Beckingham
194db8634e Columns
- The Columns::is_uda() method allows identification of UDA attributes.
2014-04-15 21:11:10 -04:00
Paul Beckingham
416b597c8a TW-1304
- TW-1304 Minor build and install fix for NetBSD (thanks to atomicules).
2014-04-15 21:06:26 -04:00
Paul Beckingham
3d79abb106 Portability
- Fixed cmake issues on NetBSD (thanks to atomicules).
2014-04-15 20:55:26 -04:00
Paul Beckingham
d0ebf4c354 Context
- Now distinguishes between readcmd and writecmd entities.
2014-04-14 01:16:54 -04:00
Paul Beckingham
a933109700 A3t
- Added 'helper' entity support.
2014-04-14 01:14:56 -04:00
Paul Beckingham
26c353dd2d Context
- Added helper, command and attribute entities.
2014-04-14 00:59:31 -04:00
Paul Beckingham
e5ceb15365 Code Cleanup
- Removed odd comment and unused member.
- Removed commented-out code.
2014-04-14 00:58:32 -04:00
Paul Beckingham
410e3890c6 Code Cleanup
- Removed redundant A3::apply_overrides call.
2014-04-14 00:44:54 -04:00
Paul Beckingham
1c24ec9c20 Context
- Merged new and old code so that A3 and A3t calls are interleaved, making
  it easier to transfer processing.
2014-04-14 00:31:26 -04:00
Paul Beckingham
5c6486427b A3t
- Implemented A3t::apply_overrides.
2014-04-14 00:24:54 -04:00
Paul Beckingham
a91101919d Code Cleanup
- Removed obsolete A3::rc_overrides and A3::get_data_location methods.
2014-04-14 00:07:40 -04:00
Paul Beckingham
ebd522dfee Context
- Enabled initial A3t setup, migrating some functionality away from A3.
- Added table of attribute modifiers, for use as parsing entities.
- Context::initialize is now a hybrid of A3 and A3t processing, with the
  transition under way.
2014-04-13 23:57:08 -04:00
Paul Beckingham
cf01cc4d02 A3t
- Added (disfunctional) A3t::append_stdin method.  Disfunctional in that
  it breaks a lot of tests because they use pipes, although it works.
- Added A3t::get_overrides to extract rc:<file>.
- Added A3t::get_data_location to extract rc.data.location:<location>.
2014-04-13 23:53:04 -04:00
Paul Beckingham
70ea3fec8c Bug
- With FEATURE_STDIN defined, iostream is required.
2014-04-13 23:50:59 -04:00
Paul Beckingham
6c698d5733 A3T
- Added TERMINATED tag to all args following the terminator.
- Added braces for clarity.
2014-04-13 22:34:49 -04:00
Paul Beckingham
9ad5502ad5 Merge branch '2.4.0' of ssh://git.tasktools.org/tm/task into 2.4.0 2014-04-13 16:43:30 -04:00
Paul Beckingham
d12a33989a Code Cleanup
- Removed unused 'locale' configuration setting.
2014-04-13 15:53:46 -04:00
Paul Beckingham
588753e2a3 Merge pull request #2 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit '13d79618136a3aa1c5e97c19af2d20100a31415e':
  Refactor some tests to avoid redoing setUp/tearDown once per test
  Refactor testing framework to allow using callTask* methods inside @classmethods
  Rename method to match the current testing API
  Tests - Include task stdout/err if exit code != 0
2014-04-13 19:51:34 +00:00
Paul Beckingham
a49d1bfbc0 Code Cleanup
- Removed unused Context::extension_dir.
2014-04-13 15:22:23 -04:00
Renato Alves
13d7961813 Refactor some tests to avoid redoing setUp/tearDown once per test 2014-04-13 20:12:55 +01:00
Renato Alves
2e64231886 Refactor testing framework to allow using callTask* methods inside @classmethods 2014-04-13 20:11:28 +01:00
Renato Alves
be59e526f1 Rename method to match the current testing API 2014-04-13 19:51:00 +01:00
Renato Alves
e0a39b0bc3 Merging in latest from upstream (TM/task:refs/heads/2.4.0)
* commit '75f938463e588b9cc3b603446d2670ef3ee44e36':
  TW-285
2014-04-13 18:45:56 +00:00
Paul Beckingham
75f938463e TW-285
- Fixed unit test structural error.
2014-04-13 14:40:11 -04:00
Renato Alves
0b1732fcef Merging in latest from upstream (TM/task:refs/heads/2.4.0)
* commit 'd8b7d914acca17f8b8850c057c29bb32b9703078': (31 commits)
  TW-5
  TW-306
  Code Cleanup
  Documentation
  TW-285
  Unit Tests
  Unit Tests
  Code Cleanup
  TW-115
  TW-1257
  TW-1300
  Code Cleanup
  Bug
  ChangeLog
  TW-1301
  Bug TW-1302
  Diagnostics
  Bug TW-1254
  Documentation
  Bug TW-1295
  ...
2014-04-13 18:23:10 +00:00
Paul Beckingham
d8b7d914ac TW-5
- TW-5 color.due.today does not work (thanks to Max Muller).
- Inadvertently fixed while addressing TW-285.
2014-04-13 12:00:17 -04:00
Paul Beckingham
fe0d03664c TW-306
- TW-306 Wrong date format in burndown view (thanks to Michele Santullo).
2014-04-13 10:34:17 -04:00
Paul Beckingham
ac45f263d8 Code Cleanup
- Modified burndown code to conform to coding convention, and be more
  readable while researching TW-306.
2014-04-13 10:26:43 -04:00
Paul Beckingham
cbb32b4747 Documentation
- Gradually replacing support email with answers.tasktools.org.
2014-04-13 09:55:25 -04:00
Paul Beckingham
3038b11780 TW-285
- TW-285 DUETODAY doesn't give any output (thanks to Jostein Berntsen).
- Added unit tests.
2014-04-13 09:18:58 -04:00
Paul Beckingham
88346f8ed3 Unit Tests
- Cleaned up unit tests.
2014-04-12 18:23:48 -04:00
Paul Beckingham
adde9eec2a Unit Tests
- Renaming new tests from bug.*.t and feature.*.t to tw-*.t. It is not
  important whether the test covers a bug or a feature.
2014-04-12 16:07:32 -04:00
Paul Beckingham
c933ed2cf7 Code Cleanup
- Migrated the recur.cpp getDueState() function into Task::getDateState(),
  which can assess any date attribute.
- Improved implementation to distinguish between:
    - not due, or not due for rc.due days
    - due after today
    - due later today
    - due earlier today
    - due before today
  This greater precision should address some outstanding issues.
2014-04-12 16:03:19 -04:00
Paul Beckingham
5706cca207 TW-115
- TW-115 allow "0day" durations for UDAs.
2014-04-12 14:12:59 -04:00
Paul Beckingham
1922c4f6a4 TW-1257
- TW-1257 The 'Syncing with <host>:<port>' message ignores verbosity tokens.
2014-04-12 14:01:48 -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
32272addd0 Code Cleanup
- Simplified leap year code.
- Began documenting date constants (eom, eow ...).
- Implemented 'soq', 'eoq'.
- Stubbed all the missing named dates.
- Removed unrelated constants.
2014-04-12 12:29:06 -04:00
Paul Beckingham
05c90b1779 Bug
- Fixed bug in named entity lookup.
- Removed obsolete failing test.
2014-04-12 12:28:48 -04:00
Paul Beckingham
62eafb6639 ChangeLog
- No longer separating bugs from features. Too difficult to keep it all
  straight. Now the ChangeLog is a sorted list of issues resolved.
2014-04-12 11:33:57 -04:00
Paul Beckingham
c6b0c0d927 TW-1301
- TW-1301 Virtual tag +PENDING (thanks to Profpatsch).
- Also added +COMPLETED and +DELETED.
2014-04-12 11:31:47 -04:00
Paul Beckingham
a49ed165c3 Bug TW-1302
- TW-1302 CmdShow.cpp:244: bad length in substr ? (thanks to David Binderman).
2014-04-12 11:12:24 -04:00
Paul Beckingham
25b8082fbd Diagnostics
- Added diagnostic token dump to 'calc' in debug mode, after token substitution
  so the new tokens can be seen.
- Added unit tests to look for parser syntax errors.
- Added test for '2--3'.
2014-04-06 23:57:15 -04:00
Paul Beckingham
70ba19fd5e Bug TW-1254
- TW-1254 Calc command can segfault on negative numbers (thanks to Renato
          Alves).
- Implemented a recursive descent parser to syntax check the expression,
  and disambiguate unary minus. The syntax checking is not generating any
  diagnostics yet.
2014-04-06 00:29:14 -04:00
Paul Beckingham
620f9b40b2 Documentation
- Added man page updates to reflect new 'taskd.trust' settings.
2014-04-05 12:13:02 -04:00
Paul Beckingham
6354bc09ab Bug TW-1295
- TW-1295 test/time.t fails on the last day of the month (thanks to Jakub
          Wilk).
2014-04-05 11:25:20 -04:00
Paul Beckingham
5965a85151 - Bug TW-1296
- TW-1296 make test/run_all exit with non-zero code if a test fail (thanks to
          Jakub Wilk).
2014-04-05 10:39:38 -04:00
Paul Beckingham
325d0d1738 Documentation
- Mentioned the hostname verification.
2014-04-05 10:37:53 -04:00
Alexander Sulfrian
7fb1487993 TLSClient: add hostname verifcation
The CN or subjectAltNames of the TLS certification is now matched with
the hostname connected to.

taskd.trust is now a tristate value (allow all, ignore hostname,
strict) to optionally disable the new hostname verification.
2014-03-22 13:17:40 -04:00
Alexander Sulfrian
fdcc04d13e TLSClient: add verify_certificate as member function
Certificate verification is now done in a member function of the
TLSClient, so that the member variables could be accessed.
2014-03-22 12:55:06 -04:00
Paul Beckingham
40dd95ddfb Code Cleanup
- Removed debugging and redundant code.
- Removed socket cast.
- Added diagnostic message on handshake fail.
2014-03-17 18:45:02 -04:00
Alexander Sulfrian
88b94ac2fc TLSClient: do certification verification with old gnutls
The automatic verification for the server certificate with
gnutls_certificate_set_verify_function does only work with gnutls
>=2.9.10. So with older versions we should call the verify function
manually after the gnutls handshake.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-03-17 14:38:42 -04:00
Paul Beckingham
5774c31dfd E9
- Removed dead code.
2014-03-14 23:50:05 -04:00
Paul Beckingham
122cc2f56d ISO8601
- Simplified and debugged ISO8601::resolve method regarding UTC, local and
  specified time offsets.
2014-03-14 23:48:56 -04:00
Paul Beckingham
f05b01f9fa Eval
- Enabled unary minus operator.
2014-03-14 23:46:14 -04:00
Paul Beckingham
065cb2ef01 Bug
- Correct a DST error in date handling.
2014-03-13 21:15:42 -04:00
Paul Beckingham
d52eebaa66 Bug TW-1288
- TW-1288 Added missing locking for task modifications (thanks to Kosta H,
          Ralph Bean, Adam Coddington).
2014-03-11 23:28:57 -04:00
Renato Alves
02d175b10b Tests - Include task stdout/err if exit code != 0 2014-03-07 01:09:23 +00:00
Jochen Sprickerhof
4ae8431f96 Bug TD-45
- TD-45 Fix preprocessor define.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-03-06 18:26:39 -05:00
Renato Alves
39efcf11bd Unit Tests TW-1254
- Added unit tests for TW-1254.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-03-06 16:40:05 -05:00
Paul Beckingham
08bead5017 Bug TW-1282
- TW-1282 incorrect URLs in man task-sync (thanks to Jeremiah Marks).
2014-03-05 23:31:04 -05:00
Paul Beckingham
ed8741e242 Bug TD-42
- TD-42 Cannot compile taskd - GNUTLS_VERSION undefined in diag.cpp (thanks
        to Michele Vetturi).
2014-03-03 21:15:02 -05:00
Paul Beckingham
26260ec44c Merge pull request #1 in TM/task from ~UNODE/task:2.4.0 to 2.4.0
* commit '08fc7c3978cdb743048c368b426219af16fb2759':
  Remove unecessary import from bug.360
2014-02-27 20:51:08 +00:00
Renato Alves
08fc7c3978 Remove unecessary import from bug.360 2014-02-27 19:40:02 +00:00
Paul Beckingham
68529d8119 Documentation
- ChangeLog cleanup, standardized form.
2014-02-22 11:57:48 -05:00
Paul Beckingham
61a9703ab4 Bug TW-1274
- TW-1274 Map 'modification' attribute to 'modified' (thanks to jck).
2014-02-22 11:57:21 -05:00
Paul Beckingham
14b1ba4151 Improvement TW-1261
- Migrated bug.360.t to the new unit test framework (thanks to Renato Alves).
2014-02-19 23:34:35 -05:00
Paul Beckingham
70f5588867 Unit Tests
- Fixed project.t tests that were broken after the projects report was
  truncated.
2014-02-19 23:26:01 -05:00
Renato Alves
3a45a2f639 Unit tests - Migrated bug.360 to python 2014-02-19 23:01:21 -05:00
Renato Alves
3c28566590 Unit tests - version.t now uses BaseTestCase 2014-02-19 23:01:18 -05:00
Renato Alves
74bca0e5bf Unit tests - Add a BaseTestCase which prepares and isolates the environment of each test 2014-02-19 23:01:16 -05:00
Renato Alves
b250ded517 Unit tests - Replace old version.t with the new python based version.py 2014-02-19 23:01:11 -05:00
Renato Alves
5daca69b4b Unit tests - Keep a template as example for the new unittesting framework 2014-02-19 23:01:07 -05:00
Paul Beckingham
132935c04e Themes
- New themes: dark-default-16.theme, dark-gray-blue-256.theme
2014-02-19 22:52:49 -05:00
Paul Beckingham
292e0fb743 Code Cleanup
- Removed priority counts from the 'projects' report.
2014-02-15 16:03:08 -05:00
Paul Beckingham
b7760dc3ef Bug TW-278
- Cygwin throws warnings building mk_wcwidth() in wcwidth6.c.
2014-02-15 15:14:08 -05:00
Paul Beckingham
5f4a5bdec7 Reports
- Modified report filters to take advantage of new virtual tags.
2014-02-15 14:43:07 -05:00
Paul Beckingham
9853fb9cb4 Report
- Restored the empty filter on the 'all' report, which is the only way
  to show all tasks.
2014-02-15 14:42:10 -05:00
Paul Beckingham
5ca55e75cf Feature TW-197
- TW-197 New virtual tag READY.
2014-02-15 14:39:46 -05:00
Paul Beckingham
b9c853fece Feature TW-1260
- TW-1260 New virtual tags YESTERDAY, TOMORROW.
2014-02-15 14:36:49 -05:00
Paul Beckingham
1170a43f6b Unit Tests
- Removed name of old module from unit tests.
2014-02-15 13:28:49 -05:00
Paul Beckingham
04a70bced8 ChangeLog
- Removed '#' from changelog entries for 2.4.0.  Trying to standardize.
2014-02-15 10:02:16 -05:00
Paul Beckingham
e90b467d42 Bug TW-261
- TW-261 Easy to create "not deletable" task (thanks to Jan Kunder).
2014-02-15 10:00:04 -05:00
Renato Alves
9846a2e3f2 Portuguese (por-PRT) localization
Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-02-14 22:49:05 -05:00
Paul Beckingham
9eaac5ccd5 Unit Tests
- Typo in test (thanks to Jakub Wilk).
2014-02-13 18:19:38 -05:00
Paul Beckingham
bf0ef119e7 Code Cleanup
- Changed .gitignore to ignore bug fix dirs in the new bug naming style.
2014-02-13 08:59:17 -05:00
Johannes Schlatow
7700bd809d Install
README has been renamed to README.md
2014-02-13 08:18:48 -05:00
Paul Beckingham
35657bc689 Migration
- Updated repository URL.
2014-02-11 21:27:26 -05:00
Paul Beckingham
14396cd305 Documentation
- Added markdown for stash overview.
2014-02-11 20:41:51 -05:00
Renato Alves
112d4bfb14 Improvement TW-1255
- #TW-1255 New testing framework (thanks to Renato Alves).

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-02-09 20:10:24 -05:00
nocejo
d83f90f82b L10N
- New strings translated from en-US to es-ES.
- Strings equal in en-US and en-ES marked with a comment: // |es-ES|==|en-US|
2014-02-09 16:22:30 -05:00
Paul Beckingham
2c95bc0701 Documentation
- Updated task-ref.  Soon to be relocated.
2014-02-09 16:18:53 -05:00
Paul Beckingham
00062f4dae Unit Tests
- Added shebang.
2014-02-09 16:18:08 -05:00
Paul Beckingham
28fe7420fc Bug #TW-255
- #TW-255 'Mask' instead of 'iMask' shown in info report (thanks to Benjamin
          Weber)
2014-02-09 13:25:36 -05:00
Paul Beckingham
41e8a8b20d Code Cleanup
- Unwritten tutorial removed.  Now taking form in the docs repo.
2014-02-08 10:44:53 -05:00
Paul Beckingham
7ec24658b5 Code Cleanup
- Removed obsolete parser info.
2014-02-08 10:42:49 -05:00
Renato Alves
93f0e14073 Initial unittest skeleton using python and TAP 2014-02-02 20:57:36 -05:00
Paul Beckingham
523dce8f32 Code Cleanup
- Standardized headers.
2014-02-01 14:33:37 -05:00
Paul Beckingham
adb0c6755e Bug #1508
- Updated ChangeLog, AUTHORS for #1508.
- Removed 'alias._query' from Config.cpp.
2014-02-01 08:10:20 -05:00
Nicolas Appriou
9c0e4053c4 bug #1508 configurable color output 2014-02-01 08:01:46 -05:00
Marton Suranyi
c7ebe6b3e2 iBug #1511
- #1511 sync init crashes if client certification file is empty or invalid
        (thanks to Marton Suranyi).

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-01-31 09:00:28 -05:00
Paul Beckingham
27d879540c Bug #1503
- #1503 build failure with musl libc due to undefined GLOB_BRACE and GLOB_TILDE
        (thanks to Natanael Copa)
2014-01-31 08:44:36 -05:00
Natanael Copa
192b905a05 Fix build with musl libc
GLOB_BRACE and GLOB_TILDE is not defined in posix and thus not implemented
in musl libc.

We fix this by defining it to 0 if its undefined.

fixes issue #1503
2014-01-31 08:26:42 -05:00
Paul Beckingham
72aa8df029 Code Cleanup
- Removed unused strings.
2014-01-30 21:41:41 -05:00
Renato Alves
c854196af0 Feature #1255
- l10n now accepts an additional --single argument to restrict
  localization comparison to reference vs specified
- 3 letter localization now also supported (ISO 639-2)
- reference (en-US.h) is now always the first column
2014-01-28 12:48:18 -05:00
Paul Beckingham
22303e8e1c Portability
- Now uses POSIX mktime instead of timelocal calls.
2014-01-27 17:24:42 -05:00
Paul Beckingham
6e1b6c8de0 Version
- Set version to 2.4.0.dev.
2014-01-26 17:34:16 -05:00
Paul Beckingham
a95ff5a165 Unit Tests
- Added a Python TAP-compliant module so that unit tests in Python are now
  supported.  Not that there are any, yet.
2014-01-26 14:04:41 -05:00
Paul Beckingham
f729c5ca80 Unit Tests
- Removed color.deprecated.t, which existed only to make sure that
  deprecated color was marked accordingly.  Now that this is removed,
  the test is moot.
2014-01-26 14:03:06 -05:00
Paul Beckingham
e435c1655b Removed Feature
- Old-style color names including underscores are no longer supported.
2014-01-26 14:01:03 -05:00
Paul Beckingham
a77c04e100 Feature Removed
- Removed version 1.x sort column support.
2014-01-26 13:52:59 -05:00
Paul Beckingham
4f86602ded Deprecation
- Removed version 1.x column name mapping support.
2014-01-26 13:51:00 -05:00
Paul Beckingham
885946a24e Unit Tests
- It is not an error to have deprecated variables in a release.  Test was bad.
2014-01-26 13:39:13 -05:00
Paul Beckingham
2036ebf03e Deprecated Feature
- Deprecated '_query' alias.
2014-01-26 13:35:47 -05:00
Paul Beckingham
38c460d713 Feature #1501
- #1501 info report streamlining - partially implemented.
2014-01-26 13:26:07 -05:00
Paul Beckingham
b354ed7bd2 Feature #1492
- #1492 task show to display default values when appropriate (thanks to Renato
        Alves).
2014-01-26 12:58:53 -05:00
Paul Beckingham
149c3c8d9e Documentation
- Updated files based on patch from Elias Probst.
2014-01-22 18:36:34 -05:00
Elias Probst
39148dbc51 Fixed the usage of TASK_RCDIR which was introduced by #1473. Until now, the content of doc/rc was still installed to TASK_DOCDIR instead of TASK_RCDIR. 2014-01-22 18:18:37 -05:00
Paul Beckingham
274ec31b6b Bug #1487
- #1487 `tasksh` segmentation fault (thanks to Hector Arciga).
2014-01-20 11:11:06 -05:00
Jakub Wilk
01a78bb4b4 Bug #1486
- #1486 Truncated sentence in task-sync(5) manpage (thank to Jakub Wilk).

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-01-20 09:52:15 -05:00
Paul Beckingham
f30a0e599b Documentation
- Updated the DEVELOPER document.
2014-01-19 13:41:04 -05:00
Paul Beckingham
aa70a14a2d Documentation
- Added comment explaining why '--version' is supported in main.cpp, as several
  questions have come up.
2014-01-19 13:40:24 -05:00
Paul Beckingham
ad3525c235 Shell
- Changed the external command from 'xc' to '!'.
2014-01-18 19:33:53 -05:00
Paul Beckingham
8b736934d7 Code Cleanup
- Removed deprecated 'push', 'pull' and 'merge' commands.
2014-01-18 19:12:48 -05:00
Paul Beckingham
341c2fb474 Bug
- Removed debugging code.
2014-01-15 23:19:41 -05:00
Paul Beckingham
cd6067a39f Merge branch 'master' into 2.4.0 2014-01-15 22:17:30 -05:00
Federico Hernandez
00204e0191 Added SHA1 of tagged release commit 2014-01-16 00:23:16 +01:00
Federico Hernandez
c4eb465070 Version number and release date for 2.3.0 2014-01-15 23:41:22 +01:00
Federico Hernandez
50dc972da1 Minor documentation updates 2014-01-15 23:28:07 +01:00
Fidel Mato
36d49cb004 taskshell
- Add external calls from taskshell
2014-01-15 16:20:33 -05:00
Paul Beckingham
6ecb984f84 Bug
- Corrected #define spelling.
2014-01-12 16:34:28 -05:00
Paul Beckingham
591ef02bbd Revert "Shell"
This reverts commit 9a2149788e.
2014-01-12 16:31:07 -05:00
Paul Beckingham
b32a846828 Code Cleanup
- Removed unnecessary cmake processing for shell.
2014-01-12 16:30:22 -05:00
Paul Beckingham
3e04ff5e44 Shell
- Coded around the absence of wordexp on some BSD systems.
2014-01-12 16:30:01 -05:00
Paul Beckingham
6018a174e0 Code Cleanup
- Removed unnecessary vector.
2014-01-12 16:03:59 -05:00
Paul Beckingham
ddbf04c4ad Documentation
- Cleaned up mixed indentation, trailing spaces in man page.
2014-01-12 15:25:14 -05:00
Paul Beckingham
9a2149788e Shell
- Removed references to the shell which does not work.
2014-01-12 15:23:21 -05:00
Paul Beckingham
9c4682fb90 Cleanup
- Removed unnecessary README_TASKD, which was for beta.
2014-01-12 15:12:42 -05:00
Paul Beckingham
f4e8fd2e47 Readline
- Moved non-wordexp substitute inside "#else".
2014-01-12 14:59:21 -05:00
Paul Beckingham
cdc0c0a01a Readline
- Made use of readline wordexp conditional upon the presence of wordexp.h,
  which is correct, but excludes certain BSDs.
2014-01-12 14:49:42 -05:00
Paul Beckingham
b81891c78f Merge branch '2.3.0' of tasktools.org:task into 2.3.0 2014-01-10 07:10:53 -05:00
Scott Kostyshak
dc2e0c1c97 Bug
- Fix a bug where CmdEdit reported modifications to a duration UDA
  when no modifications were made.
2014-01-10 07:01:37 -05:00
Scott Kostyshak
de1e413d73 Code Cleanup
- Fix style of a constructor call.
2014-01-10 07:00:25 -05:00
Paul Beckingham
af0b43a6a5 Bug #1479
- #1479 bug_annual.t failure (thanks to Jakub Wilk).
2014-01-08 06:54:03 -05:00
Paul Beckingham
f816725050 Bug #1478
- #1478 pri_sort.t failure (thanks to Jakub Wilk).
2014-01-08 06:47:54 -05:00
Paul Beckingham
1ac4ff8ac9 Merge branch '2.3.0' into 2.4.0 2014-01-08 00:10:17 -05:00
Paul Beckingham
6819c21600 Bug #1477
- Pre-compiled static library (*.a) in source tarball (thanks to Jakub Wilk).
2014-01-08 00:07:07 -05:00
Paul Beckingham
15524650d8 Portability
- Improved platform recognition (thanks to Jakub Wilk).
2014-01-07 23:47:43 -05:00
Paul Beckingham
89d536c901 Bug #1196
- Applied patch to fix the need for PATH_MAX on GNU/Hurd (thanks to Jakub
  Wilk).
2014-01-07 23:34:06 -05:00
Paul Beckingham
02116a9a93 Feature - Calc
- Gave the calc command access to DOM resolution.  Needs a Lexer change to
  recognize DOM addresses.
2014-01-07 23:32:12 -05:00
Paul Beckingham
3e4972ba4b Bug #1476
- #1476 Unicode indicators increase column width (thanks to Paul Kishimoto).
2014-01-07 22:23:39 -05:00
Paul Beckingham
9c41610f56 Merge Errors
- Fixed errors from merge mistakes.
2014-01-07 19:23:54 -05:00
Paul Beckingham
98f740e9d1 Merge branch '2.3.0' into 2.4.0
Conflicts:
	AUTHORS
	CMakeLists.txt
	NEWS
	src/A3.cpp
	src/CMakeLists.txt
	src/Config.cpp
	src/Duration.cpp
	src/Duration.h
	src/Nibbler.cpp
	src/Nibbler.h
	src/RX.cpp
	src/RX.h
	src/columns/ColDate.cpp
	src/columns/ColScheduled.cpp
	src/commands/Command.cpp
	src/legacy.cpp
	src/utf8.cpp
	src/utf8.h
	test/CMakeLists.txt
	test/bug.mergedeps.t.postponed
	test/duration.t.cpp
	test/merge.duplicates.t
	test/merge.simple_duplication.t
	test/merge.t
	test/nibbler.t.cpp
	test/roundtrip.t
	test/rx.t.cpp
	test/utf8.t.cpp
2014-01-07 19:10:03 -05:00
Paul Beckingham
ab0d929a3c Dates
- Added support for eom and eocm.
- Added more named date unit tests.
2014-01-06 23:42:02 -05:00
Paul Beckingham
55cc02bbc1 Merge branch '2.4.0' of tasktools.org:task into 2.4.0 2014-01-06 17:55:25 -05:00
Paul Beckingham
09f6160880 Unit Tests
- Updated named dates tests.
2014-01-05 21:23:34 -05:00
Paul Beckingham
76db5a45e1 Unit Tests
- Prevented test descriptions containing '*' from expanding in the shell.
2014-01-05 16:54:31 -05:00
Paul Beckingham
c4ecf613ac Bug #1474
- Typo: accomodate → accommodate (Thanks to Jakub Wilk).
2014-01-04 12:36:17 -05:00
Paul Beckingham
31c0b36b44 Feature #1473
- Make TASK_RCDIR customizable (thanks to Jakub Wilk).
2014-01-04 12:34:36 -05:00
Jakub Wilk
9e6b755cec Add TASK_RCDIR configuration variable. 2014-01-04 12:16:39 -05:00
Paul Beckingham
d12aeeca6a Unit Tests
- Migrated missing subtraction unit tests from libexpr.
2014-01-04 11:38:52 -05:00
Paul Beckingham
e78b8dc463 Documentation
- Added 'calc' utility to docs.
- Code cleanup.
2014-01-02 02:20:45 -05:00
Paul Beckingham
c52bf5cf8d Calc
- Cleaned up usage text.
2014-01-02 02:18:24 -05:00
Paul Beckingham
0dd10767ac Args Testing
- Removed parser binary from 'run' script.
2014-01-02 02:09:41 -05:00
Paul Beckingham
664eef7b42 Documentation
- Specified the version where deprecated features will be removed.
2014-01-02 02:01:36 -05:00
Paul Beckingham
93779f634f Code Cleanup
- Removed obsolete grammar file.
- Cleaned up .gitignore.
2014-01-02 02:00:06 -05:00
Paul Beckingham
5409d014c5 Code Cleanup
- Removed obsolete parser code.
2014-01-02 01:58:20 -05:00
Paul Beckingham
eb7c8e2365 Unit Tests
- Added calculator bug unit tests.
2014-01-02 01:52:38 -05:00
Paul Beckingham
409c6ddcd8 Unit Tests
- Added calculator tests.
2014-01-02 01:52:06 -05:00
Paul Beckingham
d65a844814 Calculator
- Added standalone calculator utility.
2014-01-02 01:49:37 -05:00
Paul Beckingham
fae592f921 Unit Tests
- Merged libexpr eval tests.
2014-01-02 01:28:41 -05:00
Paul Beckingham
0fd9c495bc Eval
- Merged libexpr Eval support.
2014-01-02 01:25:18 -05:00
Paul Beckingham
f6d0be24da Dates
- Merged libexpr Dates support.
2014-01-02 01:24:25 -05:00
Paul Beckingham
12520715af Unit Tests
- Merged libexpr Variant tests.
- Updated .gitignore.
2014-01-02 01:21:40 -05:00
Paul Beckingham
9b13fadba1 Variant
- Merged libexpr changes.
2014-01-02 01:15:15 -05:00
Paul Beckingham
2b747e2df2 Unit Tests
- Merged libexpr Lexer tests.
- Updated .gitignore.
2014-01-02 01:12:38 -05:00
Paul Beckingham
fae0e35241 Unit Tests
- Added libexpr Duration unit tests.
2014-01-02 01:09:42 -05:00
Paul Beckingham
18f03c25b4 Duration
- Renamed Duration object to OldDuration so that the two implementations can
  coexist in a binary.
2014-01-02 01:06:48 -05:00
Paul Beckingham
9bfe40fac7 Lexer, Duration
- Merged libexpr code.
2014-01-02 00:55:53 -05:00
Paul Beckingham
9c5adc432c Unit Tests
- Renamed duration.t.cpp to old_duration.t.cpp, ready for the new duration
  tests.
2014-01-02 00:48:55 -05:00
Paul Beckingham
712b0bb4b5 ISO8601
- Merged libexpr ISO8601 code.
2014-01-02 00:45:16 -05:00
Paul Beckingham
4cf0763845 Nibbler
- Merged libexpr changes.
2014-01-02 00:34:51 -05:00
Paul Beckingham
57106c86a9 UTF8
- Merged libexpr changes.
2014-01-02 00:26:23 -05:00
Paul Beckingham
2c2e94bb0f RX
- Merged libexpr changes.
2014-01-02 00:19:41 -05:00
Paul Beckingham
7f4c16c6f0 Copyright
- Updated (visible) copyright to 2014.
2014-01-02 00:15:04 -05:00
Paul Beckingham
2d4a1e93d9 Unit Tests
- The cal.t tests use an abbreviated 'cal' command, which is no longer unique
  given the new 'calc' command.
2014-01-02 00:13:41 -05:00
Paul Beckingham
d27451590a Duration Rename
- In preparation for a new (different) Duration object, the source files need
  to be renamed.
2014-01-02 00:12:28 -05:00
Paul Beckingham
8ed92ca498 Copyright
- Bumped copyright to 2014, ready for release.
2014-01-01 13:32:22 -05:00
Paul Beckingham
f50067dfa6 Performance
- Improved I/O performance with better buffer default sizes to reduce the
  number of reallocations.
2014-01-01 12:52:47 -05:00
Paul Beckingham
68aed90cad Merge branch '2.3.0' of tasktools.org:task into 2.3.0 2013-12-14 12:56:48 -05:00
Paul Beckingham
fa7a8389fe Unit Tests
- Corrected output for skipped, pass and fail tests.
2013-12-14 12:55:49 -05:00
Paul Beckingham
69933626aa Unit Tests
- Corrected test output for skipped, pass and fail tests.
2013-12-14 12:54:47 -05:00
Paul Beckingham
561e3b5a9b Calc command
- Added framework for new 'calc' command.
2013-12-13 22:43:02 -05:00
Paul Beckingham
26267a7473 Version
- Updated version to 2.4.0.
2013-12-13 22:38:29 -05:00
Fidel Mato
d96c7cc5a3 L10N
- Corrections and newly translated strings from en-US to es-ES.
2013-12-13 16:54:47 -05:00
Paul Beckingham
efae57d56b Merge from libexpr
- Incorporated Nibbler changes from libexpr.
2013-12-08 16:19:38 -05:00
Dirk Deimeke
d4620108ff Administration
- Ignore *.exe (Cygwin users)
2013-12-02 08:27:00 +01:00
Paul Beckingham
bde6daf441 Code Cleanup
- Removed debugging code (thanks to Kostia H).
2013-11-26 16:27:25 -05:00
Paul Beckingham
1bbee9cde0 Diagnostics
- Added more info to the sync configuration details.
2013-11-25 16:10:21 -05:00
Paul Beckingham
174066c1d6 Code Cleanup
- Found a redundant operator symbol indicator and removed it.
2013-11-22 21:12:36 -05:00
Paul Beckingham
97ef13a1b1 Bug
- Fixed Config.cpp so that it doesn't JSON encode a default rc file, and in so
  doing, bork the format.
2013-11-18 23:42:52 -05:00
Paul Beckingham
f18390ee79 Unit Tests
- Finally fixed an age-old bug in unit tests.  The bug was that whenever a test
  output contained '*', shell globbing expanded that to a list of all test
  files.  Even though it was simply diagnostic output text.
2013-11-18 17:11:19 -05:00
Paul Beckingham
6bc352f713 Documentation
- Now uses proper name 'Taskserver'.
2013-11-16 16:08:22 -05:00
Paul Beckingham
0df30a5be0 Sync
- Default TLS cipher selection, with override (thanks to Zed Jorarard).
- Updated documentation.
2013-11-16 15:07:45 -05:00
Paul Beckingham
c6032d99f9 Documentation
- Fixed rc.nag documentation (thanks to Jeroen Budts).
2013-11-16 13:22:47 -05:00
Federico Hernandez
42d0c110cf Bumped version number to beta2 prior to release 2013-11-03 22:09:22 +01:00
Paul Beckingham
d211337315 Performance
- Optimizes indexing into pending.data for direct task access.
2013-11-03 14:02:11 -05:00
Paul Beckingham
2ce8f4a416 Documentation
- Updated task-sync man page discussion of different syncing options.
2013-11-03 13:43:54 -05:00
Paul Beckingham
6c63c4a196 Documentation
- Added notes regarding the use of CA or trust override.
2013-11-03 13:37:45 -05:00
Paul Beckingham
b42ca26631 Diagnostics
- Added new server configuration settings to diagnostics output.
2013-11-03 13:21:46 -05:00
Paul Beckingham
7fa3f71575 TLS
- Connected code paths to use CA or trust.
2013-11-03 12:51:13 -05:00
Paul Beckingham
f1f93aa5d5 TLS
- If a CA is provided, it is used.
2013-11-03 12:49:56 -05:00
Paul Beckingham
8c9bc99af6 Feature #1423
- #1423 sync vs. push, pull, merge collision avoidance.
2013-11-03 12:04:21 -05:00
Paul Beckingham
56d8734e1a Documentation
- Added the taskd.key configuration setting to the task-sync man page.
- Added discussion of taskd.ca and taskd.trust options.
2013-11-03 11:46:07 -05:00
Paul Beckingham
8baaa1031c Code Cleanup
- Removed obsolete comments and code.
2013-11-03 10:43:39 -05:00
Paul Beckingham
65cf836776 Code Cleanup
- Removed dead code.
2013-11-02 12:44:16 -04:00
Paul Beckingham
8ad29bded7 Bug #1381
- #1381 Invalid JSON exported by Task 2.3.0-beta1 (thanks to Kosta H).
2013-11-01 17:35:35 -04:00
Paul Beckingham
2eac71801a Documentation
- Updated platform support, AUTHORS.
2013-10-31 21:00:50 -04:00
Paul Beckingham
ef6153334a Merge branch '2.3.0' of tasktools.org:task into 2.3.0 2013-10-31 19:18:23 -04:00
Paul Beckingham
d9d7affec0 Unit Tests
- OpenBSD has the same limitations as other BSD variants, with respect to regex
  \b support.
2013-10-31 19:17:45 -04:00
Paul Beckingham
9a7752b07a Portability
- Fixed OpenBSD build error (thanks to Aaron Bieber).
2013-10-31 19:17:06 -04:00
Paul Beckingham
9dbad51062 Portability
- Added version-specific GnuTLS calls.
2013-10-30 23:51:07 -04:00
Paul Beckingham
169cc7b5cb Code Cleanup
- Removed unused header.
- Added ctor initialization.
- Removed misleading comment.
2013-10-30 00:20:38 -04:00
Paul Beckingham
cf051ba174 Documentation
- Added recently closed bugs to ChangeLog.
2013-10-29 23:20:34 -04:00
Paul Beckingham
517e48506e TLS
- Corrected ::recv error handling.
2013-10-29 23:05:21 -04:00
Paul Beckingham
b77ac4114c Certificates
- Added feedback from GnuTLS to the handshake diagnistic message.
2013-10-29 23:04:48 -04:00
Paul Beckingham
1725460728 Certificates
- Stores the socket in the session.
2013-10-29 23:04:12 -04:00
Paul Beckingham
7c08ce749f Certificates
- Stores the host name in the session, for handѕhake validation.
2013-10-29 23:03:21 -04:00
Paul Beckingham
eda9ac56da Certificates
- Added certificate verification callback.
2013-10-29 23:02:32 -04:00
Paul Beckingham
5a0dfa634c Certificates
- Implemented TLSClient::trust, which overrides certifcate validation.
2013-10-29 22:59:04 -04:00
Paul Beckingham
d6d6a098f3 Documentation
- Added new configuration settings to 'show' command and man page.
2013-10-29 22:51:55 -04:00
Paul Beckingham
6e0603234e Documentation
- Added references to new configuration settings.
2013-10-29 22:44:59 -04:00
Paul Beckingham
6c985b76c3 L10N
- Added an error message for missing key file.
2013-10-29 21:03:39 -04:00
Paul Beckingham
02f1b90e94 Merge branch '2.3.0' of tasktools.org:task into 2.3.0 2013-10-27 16:52:43 -04:00
Paul Beckingham
f55bf67fc7 Documentation
- Corrected suported platforms.
2013-10-21 17:09:16 -04:00
Paul Beckingham
4efe5d4a52 Parser Testing
- Added helper binaries for parser testing.
2013-10-20 15:11:20 -04:00
Paul Beckingham
626f89c263 Deprecated Feature Removal
- Removed deprecated 'edit.verbose' setting, in favor of the 'edit' verbosity
  token..
2013-10-20 14:54:03 -04:00
Paul Beckingham
2cbae3fb9c Deprecated Feature Removal
- Removed deprecated 'echo.command' setting, in favor of the 'header' and
  'affected' verbosity tokens.
2013-10-20 14:40:57 -04:00
Paul Beckingham
49c07acb05 Linkage
- More build system cleanup and sync betweee 2.4 and 2.3.
2013-10-20 14:20:46 -04:00
Paul Beckingham
02aaba2f1a Linkage
- Removing last remnants of parser lib.
2013-10-19 23:27:49 -04:00
Paul Beckingham
14e017695e Linkage
- More link order changes.
2013-10-19 22:57:23 -04:00
Paul Beckingham
4941248b6f Linkage
- Changing linkage order.
2013-10-19 22:48:39 -04:00
Paul Beckingham
d27bd24355 Code Reorganization
- Eliminated the parser lib, merged into task.  Failed experiment.
2013-10-19 22:33:16 -04:00
Paul Beckingham
6f8e115c1c Reports
- New 'blocking' report.
2013-10-19 21:14:48 -04:00
Paul Beckingham
ad2255b113 Reports
- New 'unblocked' report.
2013-10-19 21:12:50 -04:00
Paul Beckingham
772627c1da Reports
- New 'ready' report.
2013-10-19 21:09:58 -04:00
Paul Beckingham
c2c2db546e Reports
- New 'next' report.
2013-10-19 21:07:51 -04:00
Paul Beckingham
55a6703ba3 Reports
- New 'waiting' report.
2013-10-19 21:04:02 -04:00
Paul Beckingham
91995a6faf Reports
- New 'recurring' report.
2013-10-19 21:02:12 -04:00
Paul Beckingham
0639180a6b Reports
- New 'completed' report.
2013-10-19 21:00:06 -04:00
Paul Beckingham
7c85bc9067 Reports
- New 'active' report.
2013-10-19 20:58:16 -04:00
Paul Beckingham
d86ad2de2c Reports
- New 'overdue' report.
2013-10-19 20:56:23 -04:00
Paul Beckingham
069a707e92 Reports
- New 'newest' report.
2013-10-19 20:54:04 -04:00
Paul Beckingham
ad98552a3b Reports
- New 'oldest' report.
2013-10-19 20:50:01 -04:00
Paul Beckingham
693c097c95 Reports
- New 'minimal' report.
2013-10-19 20:42:05 -04:00
Paul Beckingham
09fce4df46 Reports
- New 'ls' report.
2013-10-19 20:38:09 -04:00
Paul Beckingham
c8aca24e63 Reports
- New 'list' report.
2013-10-19 16:44:33 -04:00
Paul Beckingham
325c80b7e4 Reports
- New 'long' report.
2013-10-19 16:25:00 -04:00
Paul Beckingham
685c66c416 Reports
- New 'all' report.
2013-10-19 16:03:24 -04:00
Paul Beckingham
ac1d79048d Unit tests
- Removed tests for features deprecated in previous release.
2013-10-19 15:25:54 -04:00
Fidel Mato
044f830144 L10N
- Newly translated strings.
2013-10-08 07:03:51 -04:00
Paul Beckingham
7a79e3b673 Documentation
- Removed double entry in AUTHORS.
2013-10-08 07:03:06 -04:00
Rainer Müller
fa59d0d77d Unit Tests
- Set well-known umask for permissions test. When started with another
  umask value the permissions of the created directory would be
  different and the tests fail.
2013-10-07 21:18:07 -04:00
Paul Beckingham
2074a6e31b Merge branch '2.3.0' of tasktools.org:task into 2.3.0 2013-10-06 20:55:28 -04:00
Paul Beckingham
dde99939e9 L10N
- Eliminated two unused strings.
2013-10-06 20:55:09 -04:00
Paul Beckingham
1872a87838 Bug #1268
- #1268 Edit doesn't accept changes, if task has completed dependency (thanks
  to Dmitriy Matrosov, Michele Santullo).
2013-10-06 17:59:55 -04:00
Paul Beckingham
bc3bae9fd2 Bug #1410
- #1410 Incomplete Date Synonym List in man task (thanks to Benjamin Weber).
2013-10-06 16:46:41 -04:00
Paul Beckingham
c1492d8010 Bug #1273
- #1273 Query with negative relative date differs greatly from absolute date
  in past (thanks to John West).
2013-10-06 16:23:43 -04:00
Paul Beckingham
9099a353ea Bug #1286
- #1286 Cannot use "sow", "som", etc in "entry.after", "end.after" filters
  (thanks to Jake Bell).
2013-10-06 15:30:35 -04:00
Paul Beckingham
316faaa411 Bug #1388
- #1388 Updated task(1) man pages with import/export script examples (thanks to
  Benjamin Weber).
2013-10-06 14:47:08 -04:00
Paul Beckingham
b105fd8440 Feature #1297
- #1297 The task₋sync(5) man pages is rewritten with examples.
2013-10-06 14:35:00 -04:00
Paul Beckingham
2ddfed7abe Merge branch '2.3.0' of tasktools.org:task into 2.3.0
Conflicts:
	ChangeLog
2013-10-06 14:32:33 -04:00
Paul Beckingham
812459bcdc Bug #1352
- Added reference to #1352 in the NEWS file.
2013-10-06 14:31:46 -04:00
Paul Beckingham
56c85534d3 Bug #1356
- #1356 Command reference now mentions /from/to/g.
2013-10-06 14:24:07 -04:00
Paul Beckingham
69378ab099 Merge branch '2.3.0' of tasktools.org:task into 2.3.0
Conflicts:
	ChangeLog
2013-10-06 14:15:40 -04:00
Paul Beckingham
c0c935e8fa Documentation
- #1279 Assorted corrections to the task-ref.pdf document (thanks to Benjamin
  Weber).
2013-10-06 14:14:30 -04:00
Paul Beckingham
5f98e41801 Unit Tests
- Added more undo tests, to cover both cases for backlog rollback.
2013-10-06 13:55:42 -04:00
Paul Beckingham
f367989afa Bug #1270
- The 'undo' command is now properly removing backlog entries.
2013-10-06 13:43:21 -04:00
Paul Beckingham
7a6c534636 Code Cleanup
- Restructured 'undo' code to make backlog rollback more readily implementable.
2013-10-06 11:02:25 -04:00
Paul Beckingham
d5bb53d0ee Platforms
- Updated platforms list.
2013-10-06 10:38:46 -04:00
Paul Beckingham
d0776c83b5 Bug #1387
- #1387 ZSH Auto-Completion dates are not current (thanks to Benjamin Weber).
2013-09-29 11:54:52 -04:00
Paul Beckingham
2599f1a0c6 L10N
- Added new TLS error messages.
- Removed unused UUID checking strings.
2013-09-16 00:07:09 -04:00
Paul Beckingham
6fc065e03e Certificates
- CA is now checked for existence before use.
- Error messages no longer have 'ERROR:' prepended.
2013-09-16 00:06:49 -04:00
Paul Beckingham
9e7e807909 Sync
- Verifies presence of the certificate on sync, instead of blindly assuming it
  exists.
2013-09-15 23:32:31 -04:00
Paul Beckingham
27f65a821f Portability
- Removed unused compiler options for the OpenBSD port (thanks to kili, jasper).
2013-09-15 19:21:05 -04:00
Paul Beckingham
f31116f287 Portability
- Removed unused compiler options for the OpenBSD port (thanks to kili, jasper).
2013-09-15 19:20:47 -04:00
Paul Beckingham
cc5a56ebfa Portability
- Removed unused compiler options for the OpenBSD port (thanks to kili, jasper).
2013-09-15 19:19:49 -04:00
Pietro Cerutti
8455e5c250 Fix man pages destination on FreeBSD 2013-09-15 12:07:48 -04:00
Paul Beckingham
2a5bf05590 TLS
- Error strings were being constructed incorrectly.
- Client-side handshake errors were treated as recoverable.
- TLS errors were being displayed as debug messages, not errors.
2013-09-15 01:55:03 -04:00
Pietro Cerutti
10c626b18c Use the native readline library on FreeBSD as well 2013-09-14 11:54:17 -04:00
Paul Beckingham
04e0df6965 FreeBSD
- Converted __FreeBSD__ to FREEBSD for consistency.
2013-09-14 11:51:56 -04:00
Pietro Cerutti
da7cc6eed7 Fix uuid on FreeBSD
In FreeBSD, just as in DARWIN, uuid functions are in libc and no external libuuid is required.
The API is quite different from Linux's though, so a different implementation of uuid () (util.cpp) is needed.
2013-09-14 11:38:47 -04:00
Paul Beckingham
05afa911d3 Configuration
- Added taskd configuration examples to Config.cpp.
2013-09-11 01:00:19 -04:00
Paul Beckingham
55cd425ff4 Deprecation
- Properly marked more deprecated items.
2013-09-11 00:58:47 -04:00
Paul Beckingham
0f416a9f01 Documentation
- Cleaned up obsolete references.
2013-09-11 00:35:25 -04:00
Paul Beckingham
64e8f34933 Documentation
- Rewrote task-sync(5) man page.
2013-09-11 00:17:01 -04:00
Paul Beckingham
1282d545d6 Documentation
- Cleaned up a few old references.
2013-09-10 23:26:36 -04:00
Paul Beckingham
f7a6d07d71 Code Cleanup
- The 'diagnostics' command no longer generates 1000 UUIDs as a uniqueness
  test, because libuuid is now mandatory.
2013-09-10 23:16:03 -04:00
Paul Beckingham
89d1bfefe3 L10N
- Removed unused strings.
2013-09-10 23:06:48 -04:00
Paul Beckingham
e441b8ca8e Deprecated Features
- Marked the push/pull/merge features as deprecated.
2013-09-10 22:52:38 -04:00
Paul Beckingham
bcc9eb3d7a Bug
- Fixed bug where specifying an ID of 0 yielded all completed/deleted tasks
  (thanks to greenskeleton).
2013-09-10 22:00:44 -04:00
Federico Hernandez
938077115e OS versions in NEWS file 2013-09-08 21:10:04 +02:00
Paul Beckingham
26e2b17a44 Unit Tests
- Fixed bug where version.t would not run unless a .taskrc file existed.
2013-09-08 15:08:29 -04:00
Paul Beckingham
1f3230716f Unit Tests
- Added test to make sure copyright is current.
2013-09-08 01:42:47 -04:00
Paul Beckingham
7c356a943c Bug
- Running 'task sync init' was not clearing the existing backlog.data file.
2013-09-07 23:45:04 -04:00
Paul Beckingham
af38b3bb7b Documentation
- Updated docs for beta.
2013-09-07 14:42:59 -04:00
Paul Beckingham
88abd93e52 Feature
- Protects against interrupt during critical DB commit and sync operations.
2013-09-07 14:24:35 -04:00
Paul Beckingham
ada6e49dab Bug #1251
- #1251 tests should sanitize TASKDATA and TASKRC env vars (thanks to Jakub
  Wilk).
2013-09-07 13:52:16 -04:00
Paul Beckingham
a295ddce2d Feature #1339
- #1339 The configuration file now supports JSON encoding of Unicode
  characters, by specifying \uNNNN.
2013-09-07 12:49:01 -04:00
Paul Beckingham
82f4603a6b Bug #1195
- #1195 Random seed not random enough - removed all random number code (thanks
  to Jakub Wilk).
2013-09-07 12:44:57 -04:00
Paul Beckingham
ba8a3fec70 L10N
- #1226 A new French translation has begun, and will continue to be a work in
  progress for a while (thanks to YBSA R).
2013-09-07 12:40:24 -04:00
Paul Beckingham
70f4f9dbb2 Merge branch '2.3.0' of tasktools.org:task into 2.3.0 2013-09-07 12:36:20 -04:00
Paul Beckingham
1e0dfd2091 Bug #1304
- Made the 'task shell' replacement by 'taskѕh' more prominent in the NEWS file.
- Added default alias 'alias.shell=exec tasksh' for continuity.
2013-09-07 12:35:32 -04:00
Paul Beckingham
8951a79027 Bug #1248
- #1248 Merge tests no longer connect to takwarrior.org (thank to Jakub Wilk).
2013-09-07 12:24:03 -04:00
Paul Beckingham
4cc9e90362 Date Formats
- Fixed broken documentation for custom report definitions regarding column
  formats.
- Modified date access to use the more efficient Date::get_date method, which
  also shrinks the code.
- Added the 'remaining' format for all date columns.
2013-09-07 11:43:57 -04:00
Paul Beckingham
8252095174 L10N
- Localized the new _get command.
2013-09-02 15:33:52 -04:00
Paul Beckingham
3caf05b0c1 Parser Lib
- Relocated all old code into the parser lib.
2013-09-01 21:58:13 -04:00
Paul Beckingham
0bd6363e1c Linking Voodoo
- We have multiple inter-dependent libraries now, so linking is a pain.
2013-09-01 15:40:19 -04:00
Paul Beckingham
56c2326fda Unit Tests
- Disabled the new parser temporarily.  Because the test suite coverage is good,
  the new parser needs a complete set of entities, otherwise it whines too much
  during the tests.  Let's just sweep that under the rug for now.
2013-09-01 15:18:04 -04:00
Paul Beckingham
6f85dac5b8 Build Warning
- Eliminated a sign warning.
2013-09-01 15:02:31 -04:00
Paul Beckingham
94dc0c1b2d Build Error
- Fixed lib deps for one platform.
2013-09-01 14:57:57 -04:00
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
Paul Beckingham
bc41e7378a Feature
- New virtual tags (WEEK, MONTH, YEAR, PARENT).
2013-08-26 09:25:29 -07:00
Paul Beckingham
3a8a513d17 Date Support
- Added Date::week helper method.
2013-08-26 09:15:48 -07: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
06d905b633 Unit Tests
- Corrected two broken DOM unit tests.
2013-08-26 02:47:31 -04:00
Paul Beckingham
166723e632 Feature
- New '_get' is a DOM accessor helper command.
2013-08-25 23:35:32 -07:00
Ben Armstrong
ac811c6930 Initial support for context and focus (see Issue #218). 2013-08-21 17:34:19 -04:00
Paul Beckingham
b09d928da9 Documentation
- Fixed mis-formatted text.
2013-08-19 07:37:00 -04:00
Paul Beckingham
74bbd6cefe Unicode
- The configuration file now supports JSON encoding of Unicode characters, by
  specifying \uNNNN.
2013-08-18 00:00:46 -04:00
Paul Beckingham
67f20d96bc Code Cleanup
- Fixed typo, for consistency.
2013-08-04 15:56:17 -04:00
Scott Kostyshak
38bba72001 Documentation
- Fix typos (thanks to Ben Armstrong).
2013-08-01 20:29:13 -04:00
Paul Beckingham
4b574c5de4 Build Warning
- Fixed FreeBSD build warning.
2013-07-26 19:45:53 -04:00
Paul Beckingham
235fb9f054 Command Line Grammar
- Updated documentation.
2013-07-22 20:31:09 -04:00
Martin Natano
4d10afbb08 remove missing imports
- time.h was included for random seed
2013-07-21 11:27:41 -04:00
Paul Beckingham
c92631b4b0 Code Cleanup
- One less include needed.
2013-07-20 16:45:01 -04:00
Paul Beckingham
bda3674578 Code Cleanup
- Removed the rand/random/srand/srandom calls that are no longer used.
2013-07-20 16:07:25 -04:00
Martin Natano
fcfd50bd25 require libuuid
- require libuuid at build time and remove insufficiently seeded
  replacement for uuid()
2013-07-20 15:52:42 -04:00
Paul Beckingham
779e32540a Portability
- Included the wrong errno.h (thanks to natano).
2013-07-20 09:17:19 -04:00
Paul Beckingham
dd14388b1b Sync
- Implemented (weak) handling for a 310 "Redirect" server response.
2013-07-14 12:25:31 -04:00
Paul Beckingham
a5a38a1137 Bug #1305
- Updated ChangeLog.
2013-07-13 21:39:29 -04:00
Ben Boeckel
6a9f6a9c82 Guard COMMIT and commit.h usage behind HAVE_COMMIT 2013-07-13 21:24:43 -04:00
Paul Beckingham
12809fd0bf Message Format
- Relaxed message parsing slightly.
2013-07-07 14:57:02 -04:00
Paul Beckingham
82c4b05fe4 File, Directory Permissions
- Added default and override permissions for files and directories.
2013-07-07 13:04:19 -04:00
Paul Beckingham
061bf4882e Bug #1300
- Encode/decode pairing is now properly balanced.
2013-07-07 09:07:10 -04:00
Paul Beckingham
d4fabba8ee Performance
- Now detects whether any sync merging needs to happen, and if not, skips the
  loading of all data.
2013-07-06 14:44:55 -04:00
Paul Beckingham
ba1e318d7e Alpha Docs
- Improved instructions for sync setup.
2013-07-05 09:17:17 -04:00
Paul Beckingham
2aadf445bc Code Cleanup
- Removed unused timing from the sync command.
2013-07-05 08:58:05 -04:00
Paul Beckingham
16c5314cfa Feedback
- Restored 'sync needed' feedback for when backlog contains data, and the 'sync'
  verbosity token is present (which it is by default).
2013-07-05 08:04:37 -04:00
Paul Beckingham
6aa5e0824d L10N
- Removed '?' from STRING_CMD_SYNC_INIT.  Thanks to Fidel Mato.
2013-07-04 23:09:40 -04:00
Fidel Mato
132d6d0c74 L10N
- Newly translated strings.
2013-07-04 23:08:45 -04:00
Paul Beckingham
8851bec3fa Alpha
- Preparation for alpha.
2013-06-16 10:23:27 -04:00
Thomas
f39120dd73 Integrated Priority column modification to the ColPriority object, from Task core. 2013-06-14 22:44:49 -04:00
Thomas
55a8b157b1 Migrated core task modification code to the Task object, leaving wrappers behind for legacy usage. 2013-06-10 17:18:33 -04:00
Paul Beckingham
1072852ca8 Bug
- #1263 The 'waiting' report properly lists only pending tasks with a wait date
  (thanks to Fidel Mato).
2013-06-09 16:09:24 -04:00
Paul Beckingham
11051fbf61 Build
- Eliminated build warnings.
2013-06-09 00:55:18 -04:00
Paul Beckingham
19077f76df Bug
- Fixed bug with backlog parsing.
2013-06-09 00:44:59 -04:00
Paul Beckingham
8e5b57954d TLS
- Fixed loop termination bug.
- Chose a better default buffer size.
2013-06-08 23:34:06 -04:00
Paul Beckingham
907862b741 Bug
- Shortcut for counting backlog transactions was wrong.
2013-06-08 18:18:03 -04:00
Paul Beckingham
14d3fd00e3 Sync
- Adds a new 'initialize' synchronize command argument that uploads all pending
  tasks for first-time initialization.
2013-06-08 18:00:50 -04:00
Paul Beckingham
f13208479d Unit Tests
- Modified 'version' to 'client' in the msg.t tests.
2013-06-08 15:56:10 -04:00
Paul Beckingham
d9676aefd4 Task Server
- The old 'version' message header is now the 'client' message header.
2013-06-08 15:08:02 -04:00
Paul Beckingham
8c11c6c895 Unit Tests
- Added unit test to ensure correct F4 and JSON parse/compose.
2013-06-03 00:44:25 -04:00
Paul Beckingham
58084f6d7a Sync
- Modifed the column 0 task indicator from '[' to '{', for backlog.data lines.
2013-06-02 22:38:20 -04:00
Paul Beckingham
4133d29cca FF4/JSON Interop
- Removed the \n characters from Task::composeFF4 and Task::ComposeJSON.
- Tasks in backlog.data file are now written as JSON.
- Tasks are recognized in FF4 or JSON format.
2013-06-02 20:38:58 -04:00
Paul Beckingham
29e9dbcea6 Convergence
- Task.{h,cpp} code is converging on a shared taskwarrior/task server version.
2013-06-02 17:46:34 -04:00
Paul Beckingham
dd0b01e487 Code Sharing
- Cleaned up the #ifdef in Task.cpp for sharing with taskd.

(cherry picked from commit af94ac2e12d84fddb735d6931aaf2c46176c794c)
2013-06-02 13:58:21 -04:00
Paul Beckingham
530e9c0118 Unit Tests
- Corrected unit tests due to rc.print.empty.columns.

(cherry picked from commit af12285d4585c1274d8d005ba042f31158527e3e)
2013-06-02 13:58:09 -04: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
7b89bc92e1 Performance
- It it not necessary to make a copy of all configuration variable names, if the
  Config::const_iterator is sufficient.

(cherry picked from commit 5708cb90780f1f6c8f58f5b549796c4af612b1ab)
2013-06-02 13:56:00 -04:00
Paul Beckingham
c16a735040 Decoupling
- Eliminated some calls to context.config from Task‥cpp, reducing the coupling.
  If context can be eliminated from Task.cpp, via statically initialized
  variables, then Taskwarrior and the task server can share Task.{ḩ,cpp} which
  would be an enormous saving in effort.

(cherry picked from commit 215b03b1a7f47299a0d3e64331c7e3c962b4caf0)
2013-06-02 13:55:45 -04:00
Paul Beckingham
a3f158d399 Diagnostics
- Added GC setting to the diagnostics output.
2013-05-24 16:27:55 -04:00
Frédéric Mangano
ea6861e7f0 fr-FR: column labels 2013-05-23 16:13:53 -04:00
Paul Beckingham
85341d521e Build Error
- Missing include.  What do ya know.
2013-05-20 20:47:13 -04:00
Paul Beckingham
a340528de8 Performance Testing
- Added import and export to the testing.  As an extension mechanism, it needs
  to perform well.
2013-05-20 20:35:40 -04:00
Paul Beckingham
4672d16091 Shared Code
- Added '#ifdef PRODUCT_TASKWARRIOR' in enough places that taskd can now share an
  identical copy of Task.{h,cpp}.
2013-05-20 18:17:05 -04:00
Paul Beckingham
222cd9a8d7 Unit Tests
- Added a non-trivial JSON task to parse.
2013-05-20 16:35:42 -04:00
Paul Beckingham
b408458439 Import
- The import command now uses the built-in Task::parseJSON method.
- Began t3.t.cpp for JSON parsing tests.
2013-05-20 16:31:57 -04:00
Paul Beckingham
6a97017c79 File Format
- File format 2 (used in version 0.9.3 - 1.5.0) is no longer supported.
- Task::parseJSON implemented.
- PRODUCT_TASKWARRIOR defined, to facilitate code sharing.
- Strings renamed for sharing purposes.
2013-05-20 16:14:34 -04:00
Paul Beckingham
00f8f56c00 TLS
- Associated debugging output with log level > 0.
- Fixed bug where TLSClient::_limit was uninitialized.
2013-05-19 20:04:19 -04:00
Paul Beckingham
adf374eb06 Build Warnings
- Eliminated warnings in TLS code.
2013-05-15 00:44:52 -04:00
Paul Beckingham
39228808eb Build Error
- More missing/wrong includes.
2013-05-12 15:43:03 -04:00
Paul Beckingham
2db34640a6 Build Error
- Missing include.
2013-05-12 12:19:36 -04:00
Paul Beckingham
dcc9554da8 Build Errors
- Added missing includes.
2013-05-12 12:15:15 -04:00
Paul Beckingham
51c339e49f Documentation
- Documented the new configuration settings for task server communication.
2013-05-12 01:21:24 -04:00
Paul Beckingham
1e9fb8eebc Sync
- Implemented sync over TLS.
- Obsoleted the Socket code, replacing it with TLSClient, TLSServer.
- Added task server details to the 'diagnostics' command output.
- 'rc.debug.tls' controls the GnuTLS log level.
- Removed redundant cmake diagnostics.
2013-05-12 01:05:58 -04:00
Paul Beckingham
f15c9a1b7e Documentation
- Added missing dateformat components 'j' and 'J' to the man page.
2013-05-11 18:05:28 -04:00
Paul Beckingham
6d2cbd77f8 Sync
- Added task server details to the 'diagnostics' command output.
- Added new configuration variables to the 'show' command.
- rc.taskd.server specifies host:port of the task server.
- rc.taskd.credentials specifies user credentials for the task server.
- rc.taskd.certificate specifies the task server certificate.
- rc.debug.tls shows TLS log information, for debugging.
2013-05-11 16:49:39 -04:00
Paul Beckingham
a973ccf8f2 Sync
- When taskwarrior is built without GnuTLS, there will be a message to that
  effect.
- Stubbed the TLSClient calling code.  The current Socket code will become
  obsolete soon.
2013-05-11 13:07:14 -04:00
Paul Beckingham
157699cbde Feature #1256 Follow-up
- Extended unit tests to cover 'add' failures.
- Removed whitespace at EOL.
- Updated ChangeLog, AUTHORS, NEWS.
- Updated taskrc.5.in.
- Updated CmdShow to allow new config settings.
2013-05-07 16:26:58 -04:00
Thomas
56eab7da0d Added ability for UDAs to have a default value. 2013-05-07 16:07:20 -04:00
Paul Beckingham
a1132f0028 Code Cleanup
- Cmake was not updating HAVE_ST_BIRTHTIME.
- NIBBLER_FEATURE_DATE was not properly applied everywhere.
- FEATURE_COLOR was not properly set.
- Some source files failed to include cmake.h, and therefore were not properly
- Removed inefficient use of std::string::substr for guaranteed single character
  strings.
- Integrated Directory::cd.
- Integrated File::ctime, ::btime.
- Integrated Path::operator+.
- Integrated Nibbler::getDigit{2,4,6}.
- Integrated HighResTimer.
  enabling/disabling code.
- All Path objects now expanded internally to absolute form.
- Modified unit tests to accomodate absolute paths.
- Merged new nibbler.t.cpp tests.
- Made various methods const.
- Includes removed from some files, added to others.
2013-05-05 08:33:52 -04:00
Paul Beckingham
ebaf09cbe0 Enhancement
- The 'due' urgency component is now calculated at a higher resolution.
2013-05-04 07:36:53 -04:00
Paul Beckingham
bc49cb8e77 Documentation
- Added it-IT translation details.
2013-05-02 17:58:57 -04:00
Tullio Facchinetti
c00d49e233 Fixed some few inconsistencies in IT translation strings (removed old strings). 2013-05-02 17:55:00 -04:00
Tullio Facchinetti
1b405e4975 Italian translation. 2013-05-02 06:24:07 -04:00
Haitham Gad
6981893a2e Disallowing tasksh to start in interactive mode (not in batch mode) if no ~/.taskrc exists 2013-04-28 22:51:16 -04:00
Fidel Mato
f6ef9249b8 L10N translated new (in 2.3.0) es-ES.h STRING_s
- Translated 17 strings, mostly STRING_CMD_SYNC_*
 - Also new strings from tasksh, usage message included.
2013-04-28 14:56:18 -04:00
YBSAR
fefe944246 Translated date-related strings into French. 2013-04-18 06:59:31 -04:00
Paul Beckingham
2232ff7a21 Documentation
- Started the new parser documentation.
2013-04-16 01:23:32 -04:00
Paul Beckingham
8a3b1e207b Merge branch '2.3.0' of tasktools.org:task into 2.3.0 2013-04-16 00:12:17 -04:00
Paul Beckingham
f0048395fb L10N Utility
- Combined three l10n utiity scripts into one, which can now do the following:
  - Automatically locate all the localized string files.
  - Look for missing strings in the localized string files.
  - Point out strings that are not used in the code.
  - Count strings.
  - Warn when strings are unchanged across languages.
  - Exit with a status code, so it can be used in unit tests.
- Thanks to Wim Schuermann and Fidel Mato for providing code and ideas.
2013-04-16 00:11:07 -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
Federico Hernandez
0fb9a4e979 Added SHA1 of tagged release commit 2013-04-07 22:36:17 +02:00
Federico Hernandez
05f7948f7e Version number and release date for 2.2.0 2013-04-07 22:11:26 +02:00
Paul Beckingham
066d2a54ad Unit Tests
- Modifed the color.duetoday.t test to look for 'red', which for some reason
  fails on Ubuntu 12.10, *sometimes*.  This change removes the red/rgb400
  duality, which was wrong anyway.  We'll call this 'cleanup'.
2013-04-07 15:08:54 -04:00
Paul Beckingham
e746a95969 L10N
- A new 'verify_l10n' utility ensures the localizations are in sync (thanks to
  Wim Schuermann).
2013-04-07 15:05:21 -04:00
Paul Beckingham
daae1749bc L10N
- Removed unnecessary es-ES.h entries for STRING_COLUMN_LABEL_FG and
  STRING_COLUMN_LABEL_BG that have been deprecated (thank to Wim Schuermann).
2013-04-07 13:56:07 -04:00
Fidel Mato
dbabeef54c Typo in several tips.something files: 'task edit 1' changed to 'task 1 edit'. 2013-04-07 12:56:35 -04:00
Paul Beckingham
168027cb9a Unit Tests
- Any test that contains a '*' in the description output has a chance of failing
  because that '*' gets expanded by the shell, somewhere in the run_all script.
  While I can't find that problem (yet) and fix it, I can remove the '*' from
  the output.
2013-04-07 11:38:42 -04:00
Fidel Mato
d1cac8c958 L10N
- Translated STRING_LABEL_COLUMN_MOD .
2013-04-07 09:52:18 -04:00
Paul Beckingham
66996b5eab L10N
- Added tips.es-ES (thanks to Fidel Mato).
2013-04-07 09:51:37 -04:00
Paul Beckingham
61fdc0da52 Unit Tests
- Updated test class to conform to coding standards.
- Implemented TAP.py to allow Python unit tests.
2013-04-07 00:09:16 -04:00
Paul Beckingham
d72c6567b0 Bug #1222
- #1222 The 'summary' report now obeys the 'color.label' setting (thanks to
  Steve Rader).
2013-04-06 17:18:17 -04:00
Paul Beckingham
3606b6ab65 Bug #1211
- #1211 The 'dateformat' settings now default to the ISO-8601 standard of
  'Y-M-D' (thanks to Robin Björklin).
2013-04-06 14:09:23 -04:00
Russell Steicke
51fd11a535 Adjust performance script for POSIX /bin/sh.
- Don't use brace expansion.
- Add the -f flag so we don't get errors on the first run.

Signed-Off-By: Russell Steicke <russells@adelie.cx>
2013-04-03 17:35:47 -04:00
YBSAR
be7628449a Added French translation of the tips file. 2013-04-03 17:34:36 -04:00
Paul Beckingham
b99834e130 Merge branch '2.3.0' of tasktools.org:task into 2.3.0 2013-04-02 23:46:36 -04:00
Paul Beckingham
bc94816184 Performance
- Removed Context::timer_sync, as it makes no sense now that sync is not an
  automatic operation like gc.
2013-04-02 23:45:34 -04:00
Paul Beckingham
2b8cb3e251 Bug
- Fixed a bug so that the report filter order is preserved, to enable an
  optimization that was being skipped.
2013-04-02 17:41:13 -04:00
Paul Beckingham
f420fb434e Code Cleanup
- Removed unused L10N string.
2013-04-02 16:35:18 -04:00
Federico Hernandez
d99e0db108 cmake
- removed the obsolete extensions directory from the
  install target
2013-04-02 22:18:17 +02:00
Federico Hernandez
7db5377d3b Removed the incomplete support for the Lua extensions. 2013-04-02 21:52:13 +02:00
Federico Hernandez
c7df1f7acc Bumping to 2.2.0.beta3 2013-04-02 17:51:06 +02:00
Fidel Mato
3cfd57b46f L10N
- Translated STRING_VIEW_TOO_SMALL .
2013-04-02 06:43:11 -04:00
Paul Beckingham
7e4adbc091 Build Warnings
- Eliminated a build warning.
2013-04-01 21:05:50 -04:00
Paul Beckingham
656e350291 Date Formatting
- Some bad inefficiencies in date formatting were noticed, and when addressed,
  caused a bug to surface.  The length of a formatted date can be calculated
  from the dateformat, but was done incorrectly.  Very, very incorrectly.
- Added unit tests.
- Promoted date column-specific "countdown" size measurements up to the ColDate
  base class.  This neatly falls out from work on #1218.
- Noted a potential I18N problem in Date.cpp.
2013-04-01 20:01:54 -04:00
Paul Beckingham
d895c4a249 Bug #1218
- Fixed bug #1218 so that description columns minimum width is calculated
  correctly.
2013-04-01 18:07:25 -04:00
Paul Beckingham
d14a9cacec Text Formatting
- Added a format overload for three integers.
2013-04-01 15:50:16 -04:00
Paul Beckingham
1de2f9e6f1 Virtual Tag
- Added 'ANNOTATED' virtual tag.  This fell out of a change mandated by #1218.
2013-04-01 15:47:51 -04:00
Paul Beckingham
e4d641c701 Merge branch '2.3.0' of tasktools.org:task into 2.3.0 2013-04-01 08:26:06 -04:00
Paul Beckingham
9e9f90343b Tutorial
- NN_configuration describes rc settings, overrides and the show and config
  commands.
2013-03-31 21:43:48 -04:00
Paul Beckingham
b9a21f1092 Tutorial
- Broke out 02_help section from the 01_intro section.
2013-03-31 19:54:24 -04:00
Paul Beckingham
dea3fd1551 Tutorial
- 01_intro written.  The first of many mini tutorials.
- README added.
2013-03-31 18:49:02 -04:00
Paul Beckingham
6824fb1527 Doc, Unit Tests
- Updated DEVELOPER file to be accurate once 2.2.0 is released.
- Added unit test for utf8_codepoint.  The tests have been siting there for a
  while, and may as well be committed.  Low risk.
2013-03-31 17:30:43 -04:00
Federico Hernandez
baeee7566d Bumping to 2.2.0.beta2 2013-03-31 14:51:08 +02:00
Paul Beckingham
03cb5af7be Defaults
- The 'dateformat' settings now default to the ISO-8601 standard of 'Y-M-D'.
2013-03-30 17:42:45 -04:00
Fidel Mato
16635a4262 L10N
- Translated STRING_TRANSPORT_SHELL_NOPATH .
- Translated STRING_SHELL_FAIL .
- Changed (to plural) STRING_CMD_HISTORY_ADDED, _COMP, _DEL, and _NET .
2013-03-30 16:19:23 -04:00
Russell Steicke
e4da3aca0d Expand braces internally, as POSIX /bin/sh does not do {} expansion.
Signed-off-by: Russell Steicke <russells@adelie.cx>
2013-03-30 14:15:33 -04:00
Russell Steicke
0cc7bc337d Test for bug 1192 - brace expansion.
Commit 968d1c3 (Portability) introduced a bug with some very POSIX
compliant shells (eg dash), which don't do brace expansion.  So add a
test for that.

The test runs by adding a new protocol in Uri, sh+cp://path/.  This
protocol is not intended to be used normally, but is only for testing
the push and pull code.

Signed-off-by: Russell Steicke <russells@adelie.cx>
2013-03-30 14:08:50 -04:00
Paul Beckingham
983e07ab01 Feature
- Added some more low-effort, low-risk virutal tags.  Why not.
- Updated man page.
2013-03-30 13:06:06 -04:00
Paul Beckingham
a7b06bd0ee Bug #1199
- Fixed bug #1199, where 'stat' was used instead of 'lstat' (thanks to Jakub
  Wilk).
2013-03-30 12:43:29 -04:00
Paul Beckingham
6d852a96ca Bug #1200
- Fixed bug #1200, where directory removal didn't handle d_type==DT_UNKNOWN
  (thanks to Jakub Wilk).
2013-03-30 10:56:04 -04:00
Paul Beckingham
0fd3ddbe57 Bug #1197
- Fixed bug #1197 so that 'tasksh' now recognized Ctrl-D to exit (thanks to
  Haitham Gad).
2013-03-26 23:25:18 -04:00
Haitham Gad
e6b7445788 - Changed FindReadline.cmake to search for Readline in macports paths before system paths. - Fixed CTRL-D. Now it exits tasksh. - Fixed a crash when a task description had any special characters. 2013-03-26 23:19:34 -04:00
Scott Kostyshak
6c0561cb4d Bug #1210
- Fixed bug #1210 so that widths are taken from localized strings
  instead of hardcoded.
2013-03-26 22:37:05 -04:00
Paul Beckingham
e88b52b67d Documentation
- Updated AUTHORS.
2013-03-26 22:21:53 -04:00
Federico Hernandez
4afcc14ca4 Update Changelog with bug fix #1209 2013-03-19 20:49:21 +01:00
Federico Hernandez
9fea189d25 Bug #1209
- fixed bug #1209, spelling mistake in reference page.
2013-03-19 20:47:19 +01:00
Johannes Schlatow
168266febf Documentation 2013-03-12 07:40:46 +01:00
Johannes Schlatow
0a8c54ae57 Bug (missing quotes in execute command)
Fixed a bug where special characters within arguments passed to the
"execute" command needed to be escaped twice.
2013-03-12 07:34:38 +01:00
Paul Beckingham
e3afa04e2d Performance Testing
- Added 'performance' make target that constructs an 8,000+ task database and
  runs benchmark queries against it.
2013-03-11 23:55:17 -04:00
Paul Beckingham
9ed67f1a45 Documentation
- Updated the developer information.
2013-03-11 23:34:02 -04:00
Paul Beckingham
864b46a1b1 Unit Tests
- Improved two tests that always fail around summer time clock changes, by
  eliminating the dependence on 86,400.
- Fixed feature.891.t tests that fail on certain fortuitous random UUID
  permutations.  Now hard-coded UUID.
2013-03-11 23:05:30 -04:00
Paul Beckingham
da8258256d Documentation
- Updated docs to highly recommend libuuid.
2013-03-11 22:45:19 -04:00
Fidel Mato
14b7e9ff6e L10N
- Translated new error.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2013-03-11 22:40:02 -04:00
Paul Beckingham
e15859b6e2 Cleanup
- Updated .gitignore with correct paths, new stuff.
2013-03-10 16:39:37 -04:00
Paul Beckingham
2a7c8c2aad Feature #328
- #328 Replaced the 'shell' command with a standalone 'tasksh' binary, which
  includes GNU readline support (thanks to Haitham Gad).
2013-03-10 15:23:06 -04:00
Haitham Gad
881e4995e0 Fixing some style issues. 2013-03-10 12:38:15 -04:00
Haitham Gad
50d201a7f0 Porting on Ubuntu 2013-03-10 12:38:15 -04:00
Haitham Gad
1ebc802a89 Adding a man page and refering to it from other man pages 2013-03-10 12:38:14 -04:00
Haitham Gad
a5f55bf2f4 Putting Readline code inside #ifdefs 2013-03-10 12:38:14 -04:00
Haitham Gad
60a7d2128e Fixing tests and updating documentation. 2013-03-10 12:38:14 -04:00
Haitham Gad
f5d6da2a7b Separating the 'task shell' command in a separate executable 'tasksh' and enabling command history traversal using GNU Readline 2013-03-10 12:38:14 -04:00
Haitham Gad
69a23b05a9 Separating the 'task shell' command in a separate executable 'tasksh' and enabling command history traversal using GNU Readline 2013-03-10 12:38:14 -04:00
Haitham Gad
b6ac337828 Finding Readline. 2013-03-10 12:38:14 -04:00
Haitham Gad
14717cb2da Adding a Readline finder CMake module because Readline is not in the default CMake module list. 2013-03-10 12:38:13 -04:00
Haitham Gad
5a360ef208 Adding shell module. 2013-03-10 12:38:13 -04:00
Haitham Gad
c801380f42 Adding shell module 2013-03-10 12:38:13 -04:00
Paul Beckingham
82bd13bc7a Bug #1194
- Fixed bug #1194, so that $HOME has precedence over the passwd db when looking
  for the user's home directory (thanks to Jakub Wilk).
2013-03-09 17:36:48 -05:00
Paul Beckingham
a790cce6f6 Unit Tests
- Fixed hook tests to work on released code (thanks to Jakub Wilk).
2013-03-09 17:05:34 -05:00
Paul Beckingham
a40f424dad Documentation
- Documented virtual tags.
2013-03-09 16:53:43 -05:00
Paul Beckingham
88968ac36c Bug #1191
+ The 'execute' command should not be considered a 'write' command.
2013-03-06 21:04:46 -05:00
Paul Beckingham
08b959aafc Merge branch '2.2.0' of tasktools.org:task into 2.2.0 2013-03-06 20:53:34 -05:00
Johannes Schlatow
d4fee2b799 Merge branch '2.2.0' of tasktools.org:task into 2.2.0 2013-03-07 02:47:04 +01:00
Johannes Schlatow
7388cec75e Bug #1191
Added missing close().
2013-03-07 02:46:37 +01:00
Rainer Müller
48b9fdc152 [PATCH] Bug
- Do not print xterm titles without a tty. Writing escape sequences for xterm
  titles is unnecessary when the output is piped into another tool.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2013-03-05 21:15:51 -05:00
Rainer Müller
631d03ce38 [PATCH] Documentation
- Update the default value of rule.precedence.color in task-color.5 and taskrc.5
  manual pages.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2013-03-05 20:58:11 -05:00
Paul Beckingham
f3967e7d97 Revert "Fix: manpages were not installed when running an out-of-source build"
This reverts commit 9395a4d112.
2013-03-04 20:20:18 -05:00
Paul Beckingham
bcd414aad7 Unit Test
- Unfixed a unit test that got its date bumped along with the copyright.
2013-03-04 18:13:02 -05:00
Federico Hernandez
a409923916 Further date changes to 2013 2013-03-05 00:02:48 +01:00
Federico Hernandez
c2c4152669 Bumped 2012 to 2013 in doc/man 2013-03-04 23:54:23 +01:00
Federico Hernandez
699852b43b Merge branch '2.2.0' of git://tasktools.org/task into 2.2.0 2013-03-04 23:49:05 +01:00
Federico Hernandez
39dbbbda35 Bumped OS in NEWS file 2013-03-04 23:47:25 +01:00
Paul Beckingham
1dccd29643 Copyright 2013
- Updated copyright notices.
2013-03-04 17:47:12 -05:00
Federico Hernandez
430acab7ea Bumping version number 2.2.0.beta1
- Releasing first beta of 2.2.0
2013-03-04 23:03:10 +01:00
Paul Beckingham
c978b2b65a Transport Errors
- The 'push' and 'pull' commands now properly distinguish between a missing
  transport utility and other errors (thanks to Russell Steicke).
2013-03-03 09:34:54 -05:00
Russell Steicke
1428a4135b Clean up Transport::execute() and callers.
- Ensure that the real exit code of the child program is retrieved
  using WEXITSTATUS().

- Centralise the handling of code 127, which means that the child
  shell process could not execute its child (ssh, rsync, or curl.)

Signed-off-by: Russell Steicke <russells@adelie.cx>
2013-03-03 09:00:48 -05:00
Paul Beckingham
3dab5a1cb1 Bug #1181, #1087
- Fixed bug #1181, probably a result of other compounded fixes (thanks to Max
  Muller).
- Fixed bug #1087, forgot to update changelog.
2013-03-02 23:40:31 -05:00
Paul Beckingham
1b3165a18f Bug #1185
- Fixed bug #1185, correcting man page install location for out-of-tree
  builds (thanks to Jakub Wilk).
2013-03-02 18:39:53 -05:00
Paul Beckingham
6aa0277749 Bug #1189
- Fixed bug #1189, which caused wide Asian UTF8 characters to be measured as
  narrow characters (thanks to Roy Zuo).
2013-03-02 18:22:21 -05:00
Paul Beckingham
914447c885 UTF8
- Added more UTF8 unit tests for calculating string length, string width,
  formatted string length, formatted string width.
- Implemented UTF8 text width method for symmetry.
2013-03-02 18:14:56 -05:00
Paul Beckingham
551b4dbe90 UTF8
- Added UTF8 string width calculation.
2013-03-02 17:15:28 -05:00
Paul Beckingham
8e536fa4a8 Merge branch '2.2.0' of tasktools.org:task into 2.2.0 2013-03-02 10:59:46 -05:00
Paul Beckingham
fcf9ba983c Unit Tests
- Added unit tests for specific character width calculations.
2013-03-02 10:47:43 -05:00
Paul Beckingham
7327b0d537 Bug #1184
- Fixed bug #1184, correcting man page formatting (thanks to Jakub Wilk).
2013-02-26 16:37:57 -05:00
Paul Beckingham
7fc7093f68 Bug #1183
- Fixed bug #1183, correcting error message typos (thanks to Jakub Wilk).
2013-02-26 16:34:59 -05:00
Paul Beckingham
3d4bad3034 Horizontal Space
- Modified default report definitions to use shorter column labels, namely
  'Proj' and 'Urg'.  This results in less horizontal space use.
- Adjusted unit tests accordingly.
2013-02-24 16:31:31 -05:00
Paul Beckingham
330761e997 Blank Durations
- Instead of dispalying '-' for a zero-length duration, nothing is ('') is
  displayed instead.  This allows a completely empty duration column to be
  culled by the rc.print.empty.columns=no feature.
- Unit tests updated accordingly.
2013-02-24 14:26:52 -05:00
Scott Kostyshak
089b3e7d66 Enhancement
- 'print.empty.columns' now defaults to 'no'.
- Unit tests are updated accordingly.
2013-02-21 17:53:56 -05:00
Rainer Müller
0bcb22f8e4 Bug
- Do not print new line after xterm title.
  With xterm.title=on, each command displayed an empty line on the
  terminal, which is not only unnecessary but also changes output format
  for the helper subcommands starting with an underscore.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2013-02-19 22:19:47 -05:00
Rainer Müller
2bb601e6f2 Bug
- Match localized answers for confirmation

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2013-02-19 22:17:08 -05:00
Paul Beckingham
f9d74c9bed Documentation
- Forgot to update AUTHORS file.
2013-02-18 09:24:58 -05:00
Paul Beckingham
62dcd6398c Documentation
- Updated ChangeLog for prior commit.
2013-02-18 09:22:45 -05:00
Vincent Petithory
9395a4d112 Fix: manpages were not installed when running an out-of-source build 2013-02-18 09:19:43 -05:00
Paul Beckingham
ca330dc05d Unit Tests
- Corrected test count.
2013-02-18 08:40:26 -05:00
Scott Kostyshak
c68b2a149f Bug
- The bash completion script no longer expands IDs after 'depends:'.
  (Such expansion required running gc() which is not correct.)
- The unit tests for expanding 'depends:' were commented out (and not
  removed) in the case that someday we implement a command to list IDs
  without running gc().
- Unit tests to check that gc() is not run after 'depends:' were added.
2013-02-18 08:39:17 -05:00
Paul Beckingham
c87ce366a9 Documentation
- Added missing bug fix.
2013-02-18 08:38:29 -05:00
Paul Beckingham
2be52e1be2 Bug #1137
- Fixed bug #1137, which caused file locks to be non-blocking (thanks to Steve
  Rader).
2013-02-10 23:25:27 -05:00
Paul Beckingham
adacb96581 Bug #1047
- Fixed bug #1047, which caused extra commas in exported JSON when UDA orphans
  were present (thanks to Thomas Sullivan).
2013-02-10 22:39:01 -05:00
Paul Beckingham
36e371c5c0 Documentation
- Updated ChangeLog to reflect the completion of Bug #1177.
2013-02-10 22:23:05 -05:00
Paul Beckingham
aca76da3e5 Bug #642
- Fixed bug #642, so that the default 'data.location=~/.task' preserves the
  '~', leading to more portable .taskrc files (thanks to alparo).
2013-02-10 18:00:30 -05:00
Paul Beckingham
b6c28ecb7a Bug #1136
- Fixed bug #1136, which incorrectly line-wrapped tasks with annotations
  (thanks to Steve Rader).
2013-02-10 16:08:45 -05:00
Paul Beckingham
509f818b91 Merge branch '2.2.0' of tasktools.org:task into 2.2.0 2013-02-10 15:39:46 -05:00
Paul Beckingham
e6804a1679 UTF8 Line Extraction
- Minor efficiency modification, made while fixing a bug.
2013-02-10 08:46:19 -05:00
Paul Beckingham
09683f0bb9 Unit Tests
- Added confirmation to prevent hang on various platforms.
2013-02-08 15:15:01 -05:00
Federico Hernandez
f2ae8a13fa Bug #1178
- Fixed bug #1178, which inlcuded binary libraries in the source
  package.
2013-02-07 22:28:15 +01:00
Johannes Schlatow
b230da75e6 Feature #1054
Require confirmation for replacing the entire description of a single task.
2013-01-25 00:15:00 +01:00
Paul Beckingham
c6c99c2e38 Unit Tests
- Added template.t as an example for all new unit tests.
2013-01-19 15:47:41 -05:00
Paul Beckingham
e180dce1bc Bug #1063
- Fixed bug #1063, so that numeric UDA fields are now sortable (thanks to Max
  Muller).
2013-01-19 15:45:58 -05:00
Paul Beckingham
7e3ee1b284 Portability
- Fixed compiler error for new unit tests.
2013-01-19 13:45:58 -05:00
Louis-Claude Canon
a0d6b3198e Unit Tests
- More robust tests strategy: captured outputs are always compared to some
  expected result.
- Clearer and more consistent test.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2013-01-19 12:38:25 -05:00
Paul Beckingham
ee7fd7add0 Unit Tests
- Added more utf8 tests.
2013-01-17 06:11:28 -05:00
Paul Beckingham
01e589a172 I18N
- One does not simply std::string::substr a UTF8 string, like a bloody caveman.
  Implemented utf8_substr, and added unit tests.
2013-01-16 18:36:54 -05:00
Fidel Mato
ae58b85339 L10N - Error message
- Corrected error message in es-ES.h.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2013-01-16 16:06:06 -05:00
Scott Kostyshak
45202c292b Bug
- Fix regression introduced in 73043b86 where UDA edits
  were not detected for non-date types.
2013-01-15 07:55:03 -05:00
Johannes Schlatow
55813b6a09 Bug
- Colons are evil, fixed ZSH completion commands.
2013-01-15 01:05:28 +01:00
Paul Beckingham
26dbd8e790 Code Cleanup
- Made code more compact and consistent while reviewing sorting for UDAs.
2013-01-13 16:52:57 -05:00
Paul Beckingham
8271e973d8 Bug #1118
- Fixed bug #1118, which dropped changes after edits were rejected (thanks to
  Ben Boeckel).
2013-01-12 17:30:28 -05:00
Paul Beckingham
dd1f154376 Bug #1091
- Fixed bug #1091, allowing filters to use 'urgency.over:4.5'.
2013-01-12 16:49:48 -05:00
Paul Beckingham
76468f3ddd Code Cleanup
- Removed unused, untested DOM cache.
2013-01-12 14:47:34 -05:00
Paul Beckingham
19cdf25a8f Extension Mechanism Cleanup
- Cleaned up existing extension debris, in anticipation of the new mechanisms to
  be included in future releases.  This includes install/uninstall and a full
  set of triggers.
2013-01-12 14:47:14 -05:00
Paul Beckingham
30072cb75b UTF8
- Integrated latest UTF8 character width calculations from Markus Kuhn.
2013-01-12 13:54:49 -05:00
Paul Beckingham
46d5b34091 Unit Tests
- Fixed test with ambiguous Test::is signature.
2013-01-12 13:43:17 -05:00
Scott Kostyshak
19cc9177b9 Code Cleanup
- 'measure' now accepts unsigned ints for 'minimum' and 'maximum' args.
2013-01-09 17:37:49 -05:00
Paul Beckingham
40f2afeb8e Add-ons
- Suppressed output using rc.verbose=nothing.
- Removed [...] from output with rc.json.array=no.
2013-01-08 16:13:40 -05:00
Fidel Mato
d60af770a3 es-ES L10N
- Changed every occurrence of 'límite' to 'vencimiento'
2013-01-08 07:08:51 -05:00
Scott Kostyshak
3583e2ff58 Code Cleanup
- 'uft8_length' and 'utf8_text_length' now return unsigned ints.
2013-01-07 06:40:57 -05:00
Scott Kostyshak
4ca5c85054 Bug
- Fix a bug where 'print.empty.columns=no' resulted in never printing the
  project column because ColProject::measure did not take into account
  the length of the last word of the project name.
- Unit tests.
2013-01-03 23:43:16 -05:00
Paul Beckingham
21704e6705 Bug #1154
- Fixed bug #1154, which now allows priorities to be specified in any case.
2013-01-01 14:18:09 -05:00
Paul Beckingham
650c6cf6bb Documentation
- Updated NEWS file to include new config setting.
- Updated 'show' command so it knows about the new setting.
2013-01-01 10:13:09 -05:00
Scott Kostyshak
d7c225c87b Feature
- 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.
2013-01-01 10:08:44 -05:00
Paul Beckingham
a7b20b7a4e Unit Tests
- Fixed some tests so they no longer fail at EOM, by using "30d" to project into
  the future, instead of just "eom".
- The count.t test script has 4 tests still failing at EOM, but warnings are now
  emitted until we figure out how to improve them.
- Added a test to bug.1110.t.
2012-12-31 10:07:48 -05:00
Paul Beckingham
cfac0c42e8 Dates
+ Fixed bug with 'socm' date calculation that failed on some days, by
  simplifying the implementation.
2012-12-31 08:48:57 -05:00
Paul Beckingham
b0bb56cfa8 Documentation
- Restored missing bug fix log entry.
2012-12-31 08:41:42 -05:00
Scott Kostyshak
0f4a366752 Bug #1110
- Fixed bug #1110, which did not treat 'status:Completed' the same
  as 'status:completed' (thanks to Aikido Guy).
2012-12-31 08:40:28 -05:00
Paul Beckingham
28523e97c6 Unit Tests
- Added unit tests to illustrate bug #1136.
2012-12-30 14:44:15 -05:00
Fidel Mato
5ec68d3e0c L10N
- Newly translated string.
2012-12-27 12:01:53 -05:00
Scott Kostyshak
73043b868e Bug
- Fix a bug where CmdEdit reported modifications to a date UDA when no
  modifications were made.
2012-12-27 11:46:45 -05:00
Paul Beckingham
eeb4cf3dd8 Bug #1053
- Fixed bug #1053, where ' characters were not escaped by export-csv.pl (thanks
  to John Florian).
2012-12-22 18:38:46 -05:00
Paul Beckingham
9b63fd6068 Bug #1128
- Fixed bug #1128, which caused 'age' columns to be right-justified instead of
  left-justified (thanks to Steve Rader).
2012-12-22 11:06:38 -05:00
Paul Beckingham
5d0e4249e3 Bug #1150
- Fixed bug #1150, which referenced deprecated features in the tutorial man
  page (thanks to Benjamin Weber).
2012-12-22 10:46:13 -05:00
Paul Beckingham
b515111f2b Code Cleanup
- Style: cuddled braces
- Style: one declaration per line
- Omission: ChangeLog not updated
- Omission: AUTHORS not updated
- Omission: en-US.h change not propagated to es-ES.h
2012-12-22 10:06:26 -05:00
Justin Forest
c0fbfcc58c Display duration of each activity session 2012-12-22 09:33:21 -05:00
Scott Kostyshak
745d24e124 Documentation
- Fix some typos in developer files.
- Add information on grid testing with flod.
2012-12-22 09:11:01 -05:00
Paul Beckingham
144ca70a36 Typo
- Fixed configuration setting typo (thanks to trHD).
2012-12-06 08:25:29 -05:00
Scott Kostyshak
14c17d5c4d Code Cleanup
- Move a newline out of localization and into source code.
2012-12-03 17:02:09 -05:00
Paul Beckingham
d89ee4d19c Merge branch '2.2.0' of tasktools.org:task into 2.2.0 2012-12-03 07:45:41 -05:00
Scott Kostyshak
8e5dd60687 Code Cleanup
- Some typos for the English localization suggested by Fidel Mato.
2012-12-03 07:38:24 -05:00
Paul Beckingham
1d3248bb1f Unit Tests
- Fixed problem with color.uda.t leaving default color.alternate active.
2012-12-01 23:30:33 -05:00
Paul Beckingham
f0bd5a4f20 Bug #947
- Looks like it was already fixed along with #1031.
2012-12-01 16:58:45 -05:00
Paul Beckingham
8659ff8292 Export
- Added sample TSB export add-on.
2012-12-01 16:28:08 -05:00
Paul Beckingham
3a2a500eb1 L10N
- Placeholder for date range checking.
2012-12-01 15:55:07 -05:00
Paul Beckingham
6ce3a8e27f Bug #1123
- Fixed bug #1123, which caused the undo of a 'log' command to corrupt the data
  file (thanks to Tim None).
2012-12-01 15:05:03 -05:00
Paul Beckingham
4e03832b68 Feature #1039
- Added Feature #1039, which adds new date shortcuts, 'socm' and 'eocm',
  meaning start and end of current month (thanks to Thomas Sullivan,
  Louis-Claude Canon).
2012-12-01 14:22:09 -05:00
Paul Beckingham
12b12c3a62 Feature #1061
- Added Feature #1061, which allows the 'columns' command to use a search
  string for the column name (thanks to Uli Martens).
2012-12-01 14:07:58 -05:00
Paul Beckingham
d8579730f5 Feature #1099
- Added Feature #1099, which supports the 'color.uda.<uda-name>' color rule
  (thanks to Florian Hollerweger).
2012-12-01 13:29:23 -05:00
Johannes Schlatow
7710c7a623 Merge bug
Hopefully found the ultimate cause of duplicated (completed) tasks.

The corresponding test case

 1. does not rely on the fact that there are modifications with equal
    timestamps and
 2. is a LOT simpler than the other ones.
2012-11-23 13:14:40 +01:00
Johannes Schlatow
0e28374131 Bug #1117
Fixed some other merge issues with the sorting order of equally timestamped
entries in undo.data (see #1104).

1. The fact that both files can begin with equal timestamps but different
   modifications has not been taken into account.

2. Besides the fact that the relative order within the same data file must
   be preservered as introduced before, we also need a unique order for entries
   of different data files so that each machine comes to the same merge result.
   This has now been achieved by taking the UUIDs into account as soon as the
   timestamps are equal.
2012-11-23 13:03:32 +01:00
Fidel Mato
69b63189f6 L10N
- Corrections, new strings.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-11-18 09:14:26 -05:00
Paul Beckingham
638a242476 Build System
- Removed code that searches for the pthreads and Lua51 libraries.
2012-11-17 15:20:31 -05:00
Paul Beckingham
92c3f0862d Feature #1124
- Added '_show' command to generate a machine-readable configuration settings
  list for use by third-party software (thanks to Jake Bell).
2012-11-17 12:48:30 -05:00
Scott Kostyshak
973e0ed56b Spanish (es-ES) Localization
- The latest translation update from Fidel Mato.
2012-11-11 13:08:35 -05:00
Scott Kostyshak
2afb893b2a Feature
- Bash now completes "rc:" with file names and
  "rc.data.location:" with folder names.
2012-10-30 17:02:06 -04:00
Paul Beckingham
9929dbb543 Spanish (es-ES) Localization
- The latest translation update from Fidel Mato.
2012-10-29 16:11:00 -04:00
Paul Beckingham
d9e24098b5 C -> C++
- Integrated wcwidth6.c more into text.cpp.
- Moved wcwidth6.c to wcwidth6.cpp, to cure some strange build issue.
2012-10-29 16:09:32 -04:00
Paul Beckingham
a736568e68 GnuTLS
- Added GnuTLS discovery, linking.
- Added '+/-tls' indicator to diagnostics command.
- Added libgnutls version number to diagnostics command.
- Renamed wcwidth6.c to wcwidth6.cpp, to eliminate a strange build error.
2012-10-29 02:27:33 -04:00
Paul Beckingham
2f4c9b2653 Unit Tests
- Typo on several hundred lines where a , was used in place of ; but seems to
  have no ill effects.  Strange.
2012-10-22 00:56:59 -04:00
Paul Beckingham
6239a5b0c9 Unit Tests
- The tdb2.t test program was reporting 9 tests but running 12.  This also was
  throwing off the test counts.
2012-10-22 00:46:37 -04:00
Paul Beckingham
73192fa99a Unit Tests
- Fixed syntax error in test script that was causing test counts to be off.
2012-10-22 00:38:24 -04:00
Paul Beckingham
c5a31631aa Localizations
- Added ES_ES as language 2.
- Removed obsolete readline reference.
2012-10-21 23:50:46 -04:00
Scott Kostyshak
4baaf52610 Bug
- Hyphenation is not needed when words are split with commas.
- Unit test added.
2012-10-20 14:34:12 -04:00
Scott Kostyshak
d6ce938c4a Code Cleanup
- Rename the class CmdStatistics to CmdStats for consistency
  because 'stats' is the command.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-10-18 22:45:04 -04:00
Paul Beckingham
cda35c03d6 Sockets
- Suppports IPv4 and IPv6 task server addresses.
- Cleaned up error message when server is not available.
2012-10-14 02:10:12 -04:00
Paul Beckingham
fb427a4c6f Merge branch '2.2.0' of tasktools.org:task into 2.2.0 2012-10-13 22:20:33 -04:00
Paul Beckingham
42661312d6 Portability
- Detected birth time in struct stat.
2012-10-13 22:20:08 -04:00
Paul Beckingham
879ecf9505 Internationalization
- Fixed the mechanism used to select translations (thanks to Fidel Mato).
2012-10-13 15:32:00 -04:00
Paul Beckingham
47d94f370e Sync Feedback
- Added a detailed sync summary message, indicating what happened.
- Improved and localized the feedback messages for the sync command.
- Added color to the add/modify feedback, matching the merge command.
- Enabled the sync timer for debugging output.
2012-10-13 12:14:46 -04:00
Paul Beckingham
8fa7d135db Sync
- Provided protocol version in sync message.
- Improved feedback messages.
2012-10-10 23:34:52 -04:00
Paul Beckingham
d060bf166d Sync
- Distinguishes between new upstream tasks and deltas.
- Handles 201 (nop) code from task server.
- Removed unnecessary \r\n from messages.
- Cleaned up some of the diagnostic output.
2012-10-08 17:47:07 -04:00
Paul Beckingham
4a6b9e6104 TDB2
- Added an option to bypass backlog recording to TDB2::add and TDB2::modify.
  This is required when handling backlog data, to prevent perpetual syncing.
2012-10-08 17:45:43 -04:00
Paul Beckingham
98d9a367f3 Sync
- Corrected handling of backlog.data after a synch, using TF2::clear_tasks.
2012-10-08 17:43:14 -04:00
Paul Beckingham
c5ff24358c Feature #934
- Feature #934, supports 'reserved.lines' to indicate a multi-line prompt for
  use in conjunction with 'limit:page' (thanks to Robert Gill).
- Removed 'locale' from the taskrc.5 man page.
- Added verbosity token 'sync'.
- Fixed bug in size calculation for 'limit:page', but there is still one more.
- Corrected unit test limit.t given the above fix.
2012-10-06 15:29:00 -04:00
Paul Beckingham
9cbd729553 Sync
- Added server credential handling.
- Added server error handling.
- Added task download handling.
- Added backlog truncation and synch_key handling.
- Added display of server-side messages.
- Cleaned up NEWS file for 2.3.0.
- Removed duplicate info in diagnostics command output.
2012-10-06 14:15:51 -04:00
Paul Beckingham
27df379f1d Statistics
- Added a backlog transaction count to the statistics.
2012-10-06 12:21:32 -04:00
Paul Beckingham
8d3e340819 Sync
- Properly marked sync command as not displaying IDs, therefore no GC.
2012-10-06 10:23:29 -04:00
Paul Beckingham
936720220c Sync
- Implemented the high-level communications, still without TLS.
- Includes temporary diagnostics, and unlocalized error messages.  These will
  converge upon proper and useful error messages as the command matures.
2012-10-06 10:15:06 -04:00
Paul Beckingham
e7e34b7148 Sync
- Added a ::send method to CmdSync to perform the transfer.  Note that this
  does not yet include any TLS.
2012-10-06 09:07:30 -04:00
Paul Beckingham
5a9810a423 Diagnostics
- Added server info to the diagnostics command output.
2012-10-06 09:05:20 -04:00
Paul Beckingham
ce2f7054f7 Messaging
- Migrated taskd messaging code over, for client-side communications.
2012-10-06 09:03:27 -04:00
Paul Beckingham
b5e90f08d8 Sockets
- Migrated taskd socket code, for client-side transactions.
2012-10-06 09:01:49 -04:00
Paul Beckingham
9fe9f96f8f File::rename
- Added a rename method to permit safe file writes.
2012-10-03 22:13:47 -04:00
Paul Beckingham
cd6d08f97c Code Cleanup
- Removed last traces of synch.key.
2012-10-02 00:00:43 -04:00
Paul Beckingham
b1443e831b Unit Tests
- Removed mention of synch.key from all unit tests.  This is an obsolete file.
2012-10-01 23:56:09 -04:00
Paul Beckingham
337e5557b3 Backlog
- Added backlog handling for add/modify.
2012-10-01 23:30:57 -04:00
Paul Beckingham
becd8f155c Synchronize Command
- Added the stub of the sync command.
2012-10-01 23:16:08 -04:00
Federico Hernandez
b3bd522f73 Bumped version number to 2.3.0 2012-10-01 23:54:25 +02:00
Paul Beckingham
d2f267a7da Unit Tests
- Made test output minimal by removing verbosity.
- Made the regexes more generalized, while still remaining valid.
2012-09-27 21:21:43 -04:00
Paul Beckingham
68963ad3e4 Feature #953
- Added Feature #953, which includes the total number of blocked and blocking
  tasks to the 'statistics' command output (thanks to T. Charles Yun).
2012-09-27 01:06:21 -04:00
Paul Beckingham
bb167b2275 Feature
- New 'modified' attribute, which contains the most recent modification date,
  if a modification has occurred.
2012-09-27 00:56:41 -04:00
Paul Beckingham
8d8bd653fa Feature #685
- Added Feature #685, which provides a 'blocking' report, and new color rule
  (thanks to Michelle Crane).
2012-09-26 23:52:06 -04:00
Paul Beckingham
61ccccabd8 Bug #1031
- Fixed bug #1031, which kept expanding aliases after the '--' operator (thanks
  to Jim B).
- Cleaned up mess in the ChangeLog, which should list features before bugs,
  reported issues before ad hoc issues, and in ascending numerical order.
2012-09-26 23:06:42 -04:00
Scott Kostyshak
9fb15b0d7d Bug #1056
-Complete the fix of #1056 by having CmdSummary print abstract parent
 names and not prefix children project names with parent project names.
-Unit tests for above.
2012-09-24 08:04:47 -04:00
Scott Kostyshak
be5dc8ab90 Bug #1056
- Fix #1056: the 'projects' command now outputs abstract parents
  and reduces repetition by not printing parent names in front of
  children names.
- Project name indentation is not affected by the first character
  being a period and/or the last character being a period.
- Unit tests for above.
2012-09-23 08:07:11 -04:00
Federico Hernandez
a3242f7b5b Merge branch 'master' into 2.2.0
- merge of 2.1.2 release being now the current released version in
  master.

Conflicts:
	CMakeLists.txt
	NEWS
	test/bug.1104.t
	test/run_all
2012-09-18 22:58:59 +02:00
Federico Hernandez
b93f384b3a Added SHA1 of tagged release commit 2012-09-18 21:58:23 +02:00
Scott Kostyshak
d8a4aab85b Enhancement
- Improve bash completion for 'project:', 'depends:', and 'priority:'.
- 'projABC:' no longer expands (same for 'depends:' and 'priority:').
- 'proj:' only expands if abbreviation.minimum is less than 5
  (same for 'depends:' and 'priority:' and for other values of
  abbreviation.minimum).
- Unit tests for the above.
2012-09-16 22:11:52 -04:00
Paul Beckingham
ad3e249a64 Merge branch '2.2.0' of tasktools.org:task into 2.2.0 2012-09-16 15:19:39 -04:00
Paul Beckingham
c2ccd1b3ee Unit Tests
- Enhanced the bug #956 tests to cover both supported methods of eliminating
  extraneous output from commands (redirect stderr, and verbose=nothing).
2012-09-16 15:16:32 -04:00
Paul Beckingham
9d1ae99656 Virtual Tags
- Added virtual tag TODAY as a synonym for DUETODAY.
2012-09-16 14:57:59 -04:00
Paul Beckingham
2f10e8d2e2 Bug #1083
- Partially fixed #1083, which showed 'task 0 ...' when modifying a non-
  pending task (thanks to Aikido Guy).
2012-09-16 14:57:07 -04:00
Paul Beckingham
724f29a50b Unit Tests
- Fixed ids, uuids, zshids, _ids, _uuids, _zshids commands to suppress
  headers that prevent these from being used.
2012-09-10 22:55:50 -04:00
Johannes Schlatow
55fe8810ce Bug #1104
Added unit test.

 Implemented a quick fix for the issue with a broken branch-off algorithm
 which disregarded the transaction boundaries in the undo.data file.
2012-09-10 14:42:44 +02:00
Scott Kostyshak
6a4fd6b133 Code Cleanup
- Remove an unused parameter.
2012-09-05 06:57:58 -04:00
Scott Kostyshak
ed8be2e2f2 Bug #1059
- Fixed Bug #1059, where CmdEdit incorrectly ran gc.
  (Thanks to Louis-Claude Canon)
2012-09-04 22:11:53 -04:00
Scott Kostyshak
7a6cdde571 Code Cleanup
- Constify some catches.
2012-09-04 22:04:41 -04:00
Paul Beckingham
589d8fab5c Prebuild
- Removed obsolete WIN32 reference that causes lots of verbose warnings
  from cmake.
2012-08-31 14:24:54 +02:00
Pietro Cerutti
b0af5f1496 Portability
- Use Time::Local (in Perl core) instead of Date::Parse

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-08-28 17:27:13 +02:00
Paul Beckingham
e4e58e6571 Unit Tests
- Corrected FreeBSD rx unit tests.
2012-08-28 15:19:17 +02:00
Paul Beckingham
efeb00d423 Code Cleanup
- Typo in unit test.
- Removed obsolete ANALYSIS file.
2012-08-28 14:41:18 +02:00
Paul Beckingham
e796d7a2f1 Unit Tests
- Fixed syntax error in test.
- Fixed tests that were broken, but did not detect that.
2012-08-28 14:36:21 +02:00
Paul Beckingham
660f7bd98e Unit Tests
- Added direct TAP support to run_all via the '--verbose' option.
- Disabled regex tests that use \b for Cygwin.
2012-08-27 12:46:42 +02:00
Owen Clarke
7c408f4c5f Portabality
- Added comment to explain the use of perl in run_all to get the current
  epoch time in seconds
2012-08-23 08:42:01 +10:00
Owen Clarke
c5de9df963 Portability
- Changed bash-style syntax to sh syntax
- Reverted date printing to using perl as per 0cb71a8 for support on
  Solaris
2012-08-22 20:34:01 +10:00
Pietro Cerutti
98a5788a40 Use sh instead of bash in test/run_all 2012-08-21 16:23:09 +01:00
Paul Beckingham
968d1c32e8 Portability
- Removed unnecessary dependence on Bash: sh is POSIX, bash is not.
2012-08-21 16:13:45 +01:00
Paul Beckingham
23cd59a9a1 Chase warning due to the opaque type time_t in printf
Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-08-21 15:41:30 +01:00
Paul Beckingham
945127ad05 Portability
- Fixed warning that only appears on FreeBSD.
2012-08-21 11:11:55 +01:00
Scott Kostyshak
8850bc849f Documentation
- Updated the ChangeLog.
2012-08-15 22:46:43 -04:00
Scott Kostyshak
e89aa6cdbc Feature #1069
- Throw a custom error if uda.<uda-name>.type is not set
  but, for example, uda.<uda-name>.label is set.
2012-08-15 21:37:01 -04:00
Federico Hernandez
f1c156be39 Merge branch '2.2.0' of tasktools.org:task into 2.2.0 2012-08-14 00:59:11 +02:00
Federico Hernandez
b02bbb3c2c Unit tests
- run_all should also look for *.t.exe files on cygwin
2012-08-14 00:50:22 +02:00
Scott Kostyshak
60c1017e68 Code Cleanup
- Show no longer indents the warning.
2012-08-13 17:31:42 -04:00
Scott Kostyshak
109c6434f5 Code Cleanup
- Recycle an object.
- A second argument to task show now gives an error.
2012-08-13 08:10:22 -04:00
Scott Kostyshak
7b0b3210a5 Bug #1065
- Fixed bug #1065, where CmdShow issued messages in incorrect situations.
- Added unit tests.
2012-08-12 17:49:27 -04:00
Paul Beckingham
8d66d801c0 Enhancement
- Added virtual tag support for the first batch.  There will be follow-up
  work, tests and so on.
2012-08-12 13:46:23 -04:00
Scott Kostyshak
d73766484d Bug
- Fixed Bug #1060 where an error that was thrown by undo was not
  correctly caught and reported.
- Added a couple of tests to ensure that the correct error was
  caught and reported.
2012-08-11 07:03:56 -04:00
Scott Kostyshak
bd085a820d Code Cleanup
- Improved style and efficiency of Perl test code.
- Added alias expansion to feature log of bash completion script.
- Added comments to bash completion script.
2012-08-05 16:41:09 -04:00
Scott Kostyshak
54b2e10da4 Unit Tests
- Create a framework for testing bash completion.
- Test that aliases are expanded.
- Test that task commands are expanded.
2012-08-05 08:43:24 -04:00
Paul Beckingham
fd731dfd6e Bug
- Fixed ambiguous operator precedence in unit test.
2012-08-02 00:27:18 -04:00
Louis-Claude Canon
61b128ca88 Code Cleanup
- Failing test on last quarters.
2012-08-02 00:22:19 -04:00
Louis-Claude Canon
e9abac1d0f Code Cleanup
- Keep date formatting intact in arguments (necessary if the initial string
  contains optional information, as start or end of day).
2012-08-02 00:19:41 -04:00
Louis-Claude Canon
ec330921de Code Cleanup
- Factorize code for parsing date elements.
- Better order of blocks for parsing date elements.
- Add corresponding minimal-digit date parsing method for reading seconds,
  minutes and week.
- Update documentation and test.
2012-08-02 00:11:12 -04:00
Louis-Claude Canon
384be4b249 Code Cleanup
- Remove the code related to the format "day of year" (number of day starting
  from the January 1) as mktime does not allow to specify it with the field
  tm_yday.
- Cleaner check of the date (everything is done by Date::valid).
- Correct hour, minute and second is also checked.
2012-08-02 00:04:07 -04:00
Louis-Claude Canon
b5cd5ea188 Enhancement
- Allows relative dates such as "1st" to be entered with capital ("1ST").
2012-08-01 23:59:55 -04:00
Louis-Claude Canon
ee0a16f663 Enhancement
- Undefined variables are put to today in dates (if year and month is not
  specified, the current ones are considered). But if a global ones is
  specified, lower one are put to their default values (0 or 1).
2012-08-01 23:41:28 -04:00
Paul Beckingham
d623a6f9af Bug #1048
- Fixed bug #1048, which segfaulted rather than complain about syntax (thanks
  to Bryce Harrington, Štěpán Henek).
2012-08-01 23:37:25 -04:00
Federico Hernandez
90108e5394 README file
- added disclaimer about the risk with using a dev branch.
2012-07-30 23:34:38 +02:00
Johannes Schlatow
affda052c8 Zsh tab completion
Added missing attributes and operators.
2012-07-30 11:55:42 +02:00
Owen Clarke
31769a1fa4 Portability
- Changed the interpreter of the test files to use /usr/bin/env to find
  perl in the user's path instead of hard-coding /usr/bin/perl
2012-07-30 18:49:50 +10:00
Johannes Schlatow
5db7b6c290 Bug #1045
- Fixed bug where zsh completion did not work for aliases (see #1043).
2012-07-29 14:09:56 +02:00
Paul Beckingham
ff1cc85d38 Unit Tests
- Fixed a regex length in a test.
2012-07-28 20:45:49 -04:00
Scott Kostyshak
7b04ae43a0 Unit tests
- Added bug.1043.t which makes sure that aliases are listed by '_aliases'
  and not by '_commands' or '_zshcommands'.
2012-07-28 20:32:58 -04:00
Federico Hernandez
58a87b5ed0 Unit tests
- basic.t now looking correctly for version number in cmake file.
  (thanks to Owen Clarke)
2012-07-29 00:06:01 +02:00
Scott Kostyshak
4f76e0ed7c Bug #1043
- Fixed bug where bash autocompletion did not work for aliases.
- Added new '_aliases' helper command.
2012-07-28 15:36:17 -04:00
Paul Beckingham
275132c1fa Enhancement
- The 'diagnostics' command now reports libuuid details.
2012-07-28 09:19:05 -04:00
Louis-Claude Canon
0ac6578899 Enhancement
- When formating real numbers that are between 0 and 1, the width controls the
  number of characters that are shown (with width "4", "0.01234" is shown as
  "0.01").
2012-07-27 08:19:21 -04:00
Louis-Claude Canon
afcbaa20a9 Code Cleanup
- The symbols '@' is part of the tag and not a special delimiter (adding a new
  item makes it more explicit).
2012-07-27 08:18:01 -04:00
Louis-Claude Canon
0a3de2b867 Unit test
- Check that quitting when doing bulk changes ignores subsequent tasks.
2012-07-27 08:17:12 -04:00
Louis-Claude Canon
0857b451d6 Bug #1044
- 'task projects' discard now newly deleted tasks and it includes only filtered
  tasks for its summary.
2012-07-27 08:13:37 -04:00
Louis-Claude Canon
154d99385a Code Cleanup
- Indentation.
2012-07-27 08:09:26 -04:00
Federico Hernandez
fc45484069 Authors file 2012-07-27 00:14:52 +02:00
taskwarrior
1e938593d4 Documentation
- typos in INSTALL file (thanks to Erik Wenzel)
2012-07-26 23:59:36 +02:00
Owen Clarke
c20ce334f9 Merge branch '2.2.0' of tasktools.org:task into 2.2.0 2012-07-26 22:11:05 +10:00
Louis-Claude Canon
0a00f3cde4 Documentation
- Clearer documentation on relative dates.
2012-07-26 08:09:46 -04:00
Owen Clarke
276971675a Bug #1042
- Fixed a bug where the diagnostics command failed to detect missing
  external utilities on Solaris and NetBSD.
2012-07-26 22:08:34 +10:00
Louis-Claude Canon
160260ff48 Code Cleanup
- Remove duplicate modify call to TDB2.
- Check if quitting in bulk change only if permission fails.
- Correct test logic (the unit for each operation is the second, not the day).
- Consistency in test for feature.1013.t
- Correctly color deleted tasks.

test
2012-07-26 08:06:15 -04:00
Paul Beckingham
39456a3243 Performance
- Moved an expensive operation inside an if statement.
2012-07-25 23:14:15 -04:00
Paul Beckingham
d89d51e7e1 Deprecation
- 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.
2012-07-25 22:44:25 -04:00
Louis-Claude Canon
1d99260cb9 Enhancement
- Stop consider new tasks after quitting a bulk change.
2012-07-25 08:06:18 -04:00
Louis-Claude Canon
e5d142a468 Bug #1038
- Cleaner solution (less code duplication and blank space only when a
  confirmation is needed) for bug #1038.
2012-07-25 08:06:15 -04:00
Paul Beckingham
3bf9ebad62 Documentation
- Manually added ChangeLog delta that wouldn't apply as a patch.
2012-07-24 20:52:48 -04:00
Louis-Claude Canon
60e7260920 Code Cleanup
- Print a message in bulk change when the user choose not to denotate a
  specific task (more consistent behaviour with other bulk changes).
2012-07-24 20:51:15 -04:00
Louis-Claude Canon
406f098263 Bug #1038
- Fixed bug #1038, which prints blank lines with bulk changes and when the
  verbose attributes does not specify it.
- Lines do a better separation between each changes also.
2012-07-24 20:51:03 -04:00
taskwarrior
54e3de8118 Merge branch 'master' into 2.2.0
- after 2.1.1 release that went into master
2012-07-25 01:38:35 +02:00
Federico Hernandez
7b298a1b3d Bumped version number to 2.2.0 2012-07-23 23:04:38 +02:00
814 changed files with 65398 additions and 45113 deletions

12
.gitignore vendored
View File

@@ -1,11 +1,11 @@
cmake.h
auto.h
commit.h
Makefile
*/*task
*/*libtask.a
*/*/libcommands.a
*/*/libcolumns.a
src/task
src/taskd
src/libtask.a
src/commands/libcommands.a
src/columns/libcolumns.a
*~
.*.swp
package-config/osx/binary/task
@@ -16,3 +16,5 @@ install_manifest.txt
_CPack_Packages
CPackConfig.cmake
CPackSourceConfig.cmake
patches
*.exe

100
AUTHORS
View File

@@ -2,15 +2,18 @@ The development of taskwarrior was made possible by the significant
contributions of the following people:
Paul Beckingham (Principal Author)
Federico Hernandez (Package Maintainer & Contributing Author)
Federico Hernandez (Principal Author)
David J Patrick (Designer)
John Florian (Contributing Author)
Cory Donnelly (Contributing Author)
Johannes Schlatow (Contributing Author)
Dirk Deimeke (Technical Advisor & Marketing)
Dirk Deimeke (Technical Advisor & Evangelist)
Wim Schuermann (Contributing Author)
Owen Clarke (Contributing Author)
Louis-Claude Canon (Contributing Author)
Scott Kostyshak (Contributing Author)
Renato Alves (Contributing Author)
Tomas Babej (Contributing Author)
The following submitted code, packages or analysis, and deserve special thanks:
@@ -74,7 +77,44 @@ The following submitted code, packages or analysis, and deserve special thanks:
Oleksii Tsai
Jörg Plate
Markus Kuhn
Scott Kostyshak
Erik Wenzel
Štěpán Henek
Haitham Gad
Fidel Mato
Justin Forest
Vincent Petithory
Rainer Müller
Jakub Wilk
Russell Steicke
YBSAR
Ben Armstrong
Tullio Facchinetti
Thomas Sullivan
Martin Natano
kili
jasper
Aaron Bieber
John West
Jeroen Budts
Zed Jorarard
Elias Probst
Natanael Copa
Marton Suranyi
Nicolas Appriou
Jochen Sprickerhof
Alexander Sulfrian
David Binderman
atomicules
catern
Tatjana Heuser
leowzukw
Richard Boß
Markus Beppler
Jeremy John Reeder
Roman Inflianskas
Łukasz Panek
V.Krishn
Jens Erat
Thanks to the following, who submitted detailed bug reports and excellent
suggestions:
@@ -153,4 +193,56 @@ suggestions:
Marek Vitek
Rene Vergara
Stéphane Pezennec
Jim B
Robert Gill
Robin Björklin
Jake Bell
Florian Hollerweger
Thomas Sullivan
Tim None
trHD
Benjamin Weber
alparo
Roy Zuo
Friedrich Heusler
Ben Armstrong
XTaran
John West
Dmitriy Matrosov
Michele Santullo
Scott Kroll
Kosta H
Hector Arciga
Jan Kunder
jck
Michele Vetturi
Jeremiah Marks
Profpatsch
Bernd Humpa
darkfeline
Onion
Milos Svantner
Christopher Roberts
Steffen Uhlig
Dirk Sarpe
Will Dietz
Charles Ulrich
Jack
Kevin Ballard
Sitaram Chamarty
lolilolicon
Lee Lieske
Peter Vitt
dev-zero
Petteri
Black Ops Testing
Leon Feng
Nick Person
Arnoud K
Ozgur Akgun
David Costa
Sujeevan Vijayakumaran
Scott Carter
Taisuke Hachimura
Martin
Alexandre de Verteuil

View File

@@ -1,4 +1,8 @@
cmake_minimum_required (VERSION 2.8)
set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required
if(POLICY CMP0037)
cmake_policy(SET CMP0037 OLD)
endif()
include (CheckFunctionExists)
include (CheckStructHasMember)
@@ -6,17 +10,42 @@ include (CheckStructHasMember)
set (HAVE_CMAKE true)
project (task)
set (PROJECT_VERSION "2.1.2")
set (PROJECT_VERSION "2.4.2")
SET (TASK_MAN1DIR share/man/man1 CACHE STRING "Installation directory for man pages, section 1")
SET (TASK_MAN5DIR share/man/man5 CACHE STRING "Installation directory for man pages, section 5")
SET (TASK_DOCDIR share/doc/task CACHE STRING "Installation directory for doc files")
SET (TASK_BINDIR bin CACHE STRING "Installation directory for the binary")
OPTION(USE_GNUTLS "Build gnutls support." ON)
message ("CMAKE_SYSTEM_NAME ${CMAKE_SYSTEM_NAME}")
include (CheckCXXCompilerFlag)
# NOTE: If we are to actually use C++11 features, we should either require
# a compiler that supports the -std=c++11 flag or check for the
# features used.
# Relying on -std=c++0x or even -std=gnu++0x is highly volatile.
CHECK_CXX_COMPILER_FLAG("-std=c++11" _HAS_CXX11)
CHECK_CXX_COMPILER_FLAG("-std=c++0x" _HAS_CXX0X)
CHECK_CXX_COMPILER_FLAG("-std=gnu++0x" _HAS_GNU0X)
if (_HAS_CXX11)
set (_CXX11_FLAGS "-std=c++11")
elseif (_HAS_CXX0X)
message (WARNING "Enabling -std=c++0x draft compile flag. Your compiler does not support the standard '-std=c++11' option. Consider upgrading.")
set (_CXX11_FLAGS "-std=c++0x")
elseif (_HAS_GNU0X)
message (WARNING "Enabling -std=gnu++0x draft compile flag. Your compiler does not support the standard '-std=c++11' option. Consider upgrading.")
set (_CXX11_FLAGS "-std=gnu++0x")
else (_HAS_CXX11)
message (FATAL_ERROR "C++11 support missing. Try upgrading your C++ compiler. If you have a good reason for using an outdated compiler, please let us know at support@taskwarrior.org.")
endif (_HAS_CXX11)
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set (LINUX true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set (DARWIN true)
set (_CXX11_FLAGS "${_CXX11_FLAGS} -stdlib=libc++")
elseif (${CMAKE_SYSTEM_NAME} MATCHES "kFreeBSD")
set (KFREEBSD true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
set (FREEBSD true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD")
@@ -25,10 +54,37 @@ elseif (${CMAKE_SYSTEM_NAME} MATCHES "NetBSD")
set (NETBSD true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "SunOS")
set (SOLARIS true)
elseif (${CMAKE_SYSTEM_NAME} STREQUAL "GNU")
set (GNUHURD true)
elseif (${CMAKE_SYSTEM_NAME} STREQUAL "CYGWIN")
set (CYGWIN true)
# NOTE: Not setting -std=gnu++0x leads to compile errors even with
# GCC 4.8.3, and debugging those leads to insanity. Adding this
# workaround instead of fixing Cygwin.
set (_CXX11_FLAGS "-std=gnu++0x")
else (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set (UNKNOWN true)
endif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set (CMAKE_CXX_FLAGS "${_CXX11_FLAGS} ${CMAKE_CXX_FLAGS}")
if (NETBSD)
# Since readline, etc likely to be in /usr/pkg/lib, not standard library
# Otherwise will remove links during install
set (CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
endif (NETBSD)
if (FREEBSD)
SET (TASK_MAN1DIR man/man1 CACHE STRING "Installation directory for man pages, section 1")
SET (TASK_MAN5DIR man/man5 CACHE STRING "Installation directory for man pages, section 5")
else (FREEBSD)
SET (TASK_MAN1DIR share/man/man1 CACHE STRING "Installation directory for man pages, section 1")
SET (TASK_MAN5DIR share/man/man5 CACHE STRING "Installation directory for man pages, section 5")
endif (FREEBSD)
SET (TASK_DOCDIR share/doc/task CACHE STRING "Installation directory for doc files")
SET (TASK_RCDIR "${TASK_DOCDIR}/rc" CACHE STRING "Installation directory for configuration files")
SET (TASK_BINDIR bin CACHE STRING "Installation directory for the binary")
message ("-- Looking for SHA1 references")
if (EXISTS ${CMAKE_SOURCE_DIR}/.git/index)
set (HAVE_COMMIT true)
@@ -48,57 +104,63 @@ set (PACKAGE_TARNAME "${PACKAGE}")
set (PACKAGE_VERSION "${VERSION}")
set (PACKAGE_STRING "${PACKAGE} ${VERSION}")
message ("-- Looking for Lua51")
find_package (Lua51)
if (LUA51_FOUND)
message ("-- Found Lua51: ${LUA_LIBRARIES}")
set (HAVE_LIBLUA true)
set (TASK_INCLUDE_DIRS ${TASK_INCLUDE_DIRS} ${LUA_INCLUDE_DIR})
set (TASK_LIBRARIES ${TASK_LIBRARIES} ${LUA_LIBRARIES})
endif (LUA51_FOUND)
if (USE_GNUTLS)
message ("-- Looking for GnuTLS")
find_package (GnuTLS)
if (GNUTLS_FOUND)
set (HAVE_LIBGNUTLS true)
set (TASK_INCLUDE_DIRS ${TASK_INCLUDE_DIRS} ${GNUTLS_INCLUDE_DIR})
set (TASK_LIBRARIES ${TASK_LIBRARIES} ${GNUTLS_LIBRARIES})
endif (GNUTLS_FOUND)
endif (USE_GNUTLS)
#message ("-- Looking for pthread")
#find_path (PTHREAD_INCLUDE_DIR pthread.h)
#find_library (PTHREAD_LIBRARY NAMES pthread)
#if (PTHREAD_INCLUDE_DIR AND PTHREAD_LIBRARY)
# message ("-- Found pthread: ${PTHREAD_LIBRARY}")
# set (HAVE_LIBPTHREAD true)
# set (TASK_INCLUDE_DIRS ${TASK_INCLUDE_DIRS} ${PTHREAD_INCLUDE_DIR})
# set (TASK_LIBRARIES ${TASK_LIBRARIES} ${PTHREAD_LIBRARIES})
#endif (PTHREAD_INCLUDE_DIR AND PTHREAD_LIBRARY)
check_function_exists (random HAVE_RANDOM)
check_function_exists (srandom HAVE_SRANDOM)
check_function_exists (timegm HAVE_TIMEGM)
check_function_exists (get_current_dir_name HAVE_GET_CURRENT_DIR_NAME)
check_function_exists (wordexp HAVE_WORDEXP)
check_struct_has_member ("struct tm" tm_gmtoff time.h HAVE_TM_GMTOFF)
check_struct_has_member ("struct stat" st_birthtime "sys/types.h;sys/stat.h" HAVE_ST_BIRTHTIME)
message ("-- Looking for libuuid")
if (DARWIN)
# Apple includes the uuid functions in their libc, rather than libuuid
set (HAVE_UUID true)
if (DARWIN OR FREEBSD)
# Apple and FreeBSD include the uuid functions in their libc, rather than libuuid
check_function_exists (uuid_unparse_lower HAVE_UUID_UNPARSE_LOWER)
else (DARWIN)
else (DARWIN OR FREEBSD)
find_path (UUID_INCLUDE_DIR uuid/uuid.h)
find_library (UUID_LIBRARY NAMES uuid)
if (UUID_INCLUDE_DIR AND UUID_LIBRARY)
set (HAVE_UUID true)
set (TASK_INCLUDE_DIRS ${TASK_INCLUDE_DIRS} ${UUID_INCLUDE_DIR})
set (TASK_LIBRARIES ${TASK_LIBRARIES} ${UUID_LIBRARY})
# Look for uuid_unparse_lower
set (CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${UUID_INCLUDE_DIR})
set (CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${UUID_LIBRARY})
check_function_exists (uuid_unparse_lower HAVE_UUID_UNPARSE_LOWER)
else (UUID_INCLUDE_DIR AND UUID_LIBRARY)
message (FATAL_ERROR "-- libuuid not found.")
endif (UUID_INCLUDE_DIR AND UUID_LIBRARY)
endif (DARWIN)
endif (DARWIN OR FREEBSD)
if (HAVE_UUID AND HAVE_UUID_UNPARSE_LOWER)
if (HAVE_UUID_UNPARSE_LOWER)
message ("-- Found libuuid")
elseif (HAVE_UUID AND NOT HAVE_UUID_UNPARSE_LOWER)
else (HAVE_UUID_UNPARSE_LOWER)
message ("-- Found libuuid, using internal uuid_unparse_lower")
else (HAVE_UUID AND HAVE_UUID_UNPARSE_LOWER)
message ("-- libuuid not found, using internal uuid")
endif (HAVE_UUID AND HAVE_UUID_UNPARSE_LOWER)
endif (HAVE_UUID_UNPARSE_LOWER)
# Set the package language.
if (LANGUAGE)
set (PACKAGE_LANGUAGE ${LANGUAGE})
else (LANGUAGE)
set (PACKAGE_LANGUAGE 1)
endif (LANGUAGE)
set (LANGUAGE_ENG_USA 1)
set (LANGUAGE_ESP_ESP 2)
set (LANGUAGE_DEU_DEU 3)
set (LANGUAGE_FRA_FRA 4)
set (LANGUAGE_ITA_ITA 5)
set (LANGUAGE_POR_PRT 6)
set (LANGUAGE_EPO_RUS 7)
set (LANGUAGE_POL_POL 8)
message ("-- Configuring cmake.h")
configure_file (
@@ -109,13 +171,15 @@ add_subdirectory (src)
add_subdirectory (src/commands)
add_subdirectory (src/columns)
add_subdirectory (doc)
add_subdirectory (i18n)
add_subdirectory (scripts)
if (EXISTS test)
if (EXISTS ${CMAKE_SOURCE_DIR}/test)
add_subdirectory (test EXCLUDE_FROM_ALL)
endif (EXISTS test)
endif (EXISTS ${CMAKE_SOURCE_DIR}/test)
if (EXISTS performance)
add_subdirectory (performance EXCLUDE_FROM_ALL)
endif (EXISTS performance)
set (doc_FILES NEWS ChangeLog README INSTALL AUTHORS COPYING)
set (doc_FILES NEWS ChangeLog README.md INSTALL AUTHORS COPYING)
foreach (doc_FILE ${doc_FILES})
install (FILES ${doc_FILE} DESTINATION ${TASK_DOCDIR})
endforeach (doc_FILE)
@@ -125,8 +189,8 @@ endforeach (doc_FILE)
set (CPACK_SOURCE_GENERATOR "TGZ")
set (CPACK_SOURCE_PACKAGE_FILE_NAME ${PACKAGE_NAME}-${PACKAGE_VERSION})
set (CPACK_SOURCE_IGNORE_FILES "CMakeCache" "CMakeFiles" "CPackConfig" "CPackSourceConfig"
"_CPack_Packages" "cmake_install" "install_manifest"
"Makefile$" "test" "package-config" "misc/*"
"src/task$" "src/libtask.a" "auto.h$"
"_CPack_Packages" "cmake_install" "install_manifest" "Makefile$"
"test" "package-config" "misc/*" "src/task$" "src/calc$" "performance"
"src/libtask.a" "src/columns/libcolumns.a" "src/commands/libcommands.a"
"/\\.gitignore" "/\\.git/" "swp$")
include (CPack)

View File

@@ -1,6 +1,6 @@
taskwarrior - a command line task list manager.
Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

3139
ChangeLog

File diff suppressed because it is too large Load Diff

244
DEVELOPER
View File

@@ -1,191 +1,199 @@
How to Build Taskwarrior
Satisfy the Requirements:
- gcc 4.4 or later, clang 2.9 or later or equivalent. This is because 2.4.1
marks the first step towards using modern C++11. Initially this involves
only feature N1984.
- libuuid
- gnutls (optional)
Obtain and build code:
$ git clone https://git.tasktools.org/scm/tm/task.git task.git
$ cd task.git
$ git checkout 2.4.2 # Latest dev branch
$ cmake -DCMAKE_BUILD_TYPE=debug . # debug or release. Default: neither.
$ make VERBOSE=1 # Shows details
Running Test Suite:
$ cd tests
$ make VERBOSE=1 # Shows details
$ ./run_all # Runs all tests silently > all.log
# Install 'vramsteg' for blinkenlights
$ ./problems # Enumerate test failures in all.log
Note that any development should be performed using a git clone, and the
current development branch. The source tarballs do not reflect HEAD, and do
not contain the test suite.
If you send a patch (support@taskwarrior.org), make sure that patch is made
against git HEAD on the development branch. We cannot apply patches made
against the tarball source, or master.
General Statement
This file is intended to convey the current efforts, priorities and needs of
the codebase. It is for anyone looking for a way to start contributing.
the codebase. It is for anyone looking for a way to start contributing.
While this is biased towards developers, anyone can contribute, and everyone
is encouraged to do so. Here are many ways to contribute that may not be
is encouraged to do so. Here are many ways to contribute that may not be
immediately obvious to you:
- Use Taskwarrior, become familiar with it, and make suggestions. There are
- Use Taskwarrior, become familiar with it, and make suggestions. There are
always ongoing discussions about new features and changes to existing
features. Join us in the forums.
features.
- Join us in the #taskwarrior IRC channel on freenode.net. Some great ideas,
suggestions, testing and discussions have taken place there. It is also the
quickest way to get help, or confirm a bug.
- Join us in the #taskwarrior IRC channel on freenode.net. Many great ideas,
suggestions, testing and discussions have taken place there. It is also
the quickest way to get help, or confirm a bug.
- Review documentation: there are man pages, wiki articles, tutorials and so
on, and these may contain errors, or more importantly, they may not convey
ideas in the best way. Perhaps you can help improve it.
- Join https://answers.tasktools.org and help us by asking, answering and
voting on questions and answers, directly helping those who ask, and
helping future users who search for existing answers.
- Take a look at the bug database. It is the nature of software to contain
bugs, and there is a continuous effort to fix them. Looking at open bugs
and confirming them, perhaps determining that it is already fixed, or just
adding clarifying information are all very useful contributions and much
needed.
- Review documentation: there are man pages, online articles, tutorials and
so on, and these may contain errors, or they may not convey ideas in the
best way. Perhaps you can help improve it. Contact us - documentation is
a separate effort from the codebase, and includes all web sites, and all
are available using git.
- Fix a bug. For this you'll need C++ and git skills, but this is one of
the largest ways you can contribute. We welcome all bug fixes, provided
- Take a look at the bug database, and help triage the bug list. This is a
review process that involves confirming bugs, providing additional data,
information or analysis. Bug triage is very useful and much needed. You
could check to see that an old bug is still relevant - sometimes they are
not.
- Review the source code, and point out inefficiencies, problems, unreadable
functions, bugs and assumptions.
- Fix a bug. For this you'll need C++ and Git skills, but this is one of
the largest ways you can contribute. We welcome all bug fixes, provided
the work is done well and doesn't create other problems or introduce new
dependencies.
dependencies. We recommend talking to us before starting. Seriously.
- Add unit tests. Unit tests are possibly the most useful contributions of
- Add unit tests. Unit tests are possibly the most useful contributions of
all, because they not only improve the quality of the code, but prevent
future regressions. Plus, broken tests are a great motivator for us to fix
the causal bug.
future regressions, therefore maintaining quality of subsequent releases.
Plus, broken tests are a great motivator for us to fix the causal defect.
You'll need Python skills, as we are migrating from Perl to Python for our
test suite.
- Add a feature. Well, let's be very clear about this: adding a feature is
- Add a feature. Well, let's be very clear about this: adding a feature is
not usually well-received, and if you add a feature and send a patch, it
will most likely be rejected. The reason for this is that there are many
efforts under way, in various code branches. There is a very good chance
will most likely be rejected. The reason for this is that there are many
efforts under way, in various code branches. There is a very good chance
that the feature you add is either already in progress, or being done in a
way that is more fitting when considering other work in progress. So if
you want to add a feature, please don't. Start by talking to us, and find
out what is currently under way or planned. You might find that we've
already rejected such a feature for some very good reasons. So please
way that is more fitting when considering other work in progress. So if
you want to add a feature, please don't. Start by talking to us, and find
out what is currently under way or planned. You might find that we've
already rejected such a feature for some very good reasons. So please
check first, so we don't duplicate effort or waste anyone's time.
- Donate some server time to the testing effort, by participating in the
continuous integration of all changes, with our Flod software. See this
page for an example: http://central.tasktools.org. Ask us about running a
Flod satellite, we're always looking for exotic platforms to test on.
- Spread the word. Help others become more effective at managing tasks.
- Encouragement. Tell us what works for you, and what doesn't. It's all good.
- Encouragement. Tell us what works for you, and what doesn't. Tell us about
your methodology for managing tasks. It's all good.
Following are specific areas that could use some attention.
- Request a feature. This not only tells us that you think something is
missing from the software, but gives us insights into how you use it.
Plus, you might get your feature implemented.
Next are some specific areas that need attention.
Deprecated Code
This is code that is going to be phased out soon, and therefore is not worth
fixing or documenting. Don't waste your time.
fixing or documenting. Don't waste your time.
- 'shell' command. It will migrate to become an external script.
- Shadow file support in core. It will migrate to become an external script.
- Support for 'fg:' and 'bg:' attributes.
- Priorities in core. This will be migrated to become a UDA as soon as we
have the right support in place for custom sorting.
- Nag feature.
- Attribute modifiers.
New Code Needs
This is code that needs to be written, usually down at the C++ function/method
level.
This is code that needs to be written.
- Need export_viz.yy script. Any language. This would have value as an
example, or template script serving as a starting-point for anyone who
needed this format.
- Need new export_xxx.yy scripts - the more the better. Any language.
- Need export_viz.* script. Any language. This would have value as an example
or template script serving as a starting-point for anyone who needed this
format.
- Need new export_xxx.* scripts - the more the better. Any language.
- The JSON.{h,cpp} code is fast and efficient up to a point, but has a non-
linear performance curve, implying a slowdown due to fragmentation. Find
it, fix it.
- Need a function that can optimize color codes. For example, if a string
contains this:
<red>one two </red><red>three four</red>
It can be shortened to:
<red>one two three four</red>
This is only possible if there is nothing between </red> and <red> and the
colors match.
linear performance curve, implying a slowdown due to fragmentation, but who
know? Find it, fix it.
- Need an external script that can locate and correct duplicate UUIDs in the
data file, as found by 'task diag'. This should check to see if there is
a suitable UUID generator installed. This should also be careful to
data file, as found by 'task diag'. This should check to see if there is
a suitable UUID generator installed. This should also be careful to
properly handle recurring tasks.
- Need an external implementation equivalent to, or better than the 'shell'
command. We are hoping to move the weak 'shell' command out of the core,
which means it can be developed separately. There are several pending
feature requests for this, including creative prompts, readline and auto-
clear.
- Need an external implementation equivalent to, or better than the 'shadow
file' feature. Simply because shadow file capability *can* be implemented
outside the core code, we want to make it be that way.
- Take a look at:
http://taskwarrior.org/versions/show/42
https://bug.tasktools.org/browse/EX
This 'extension' release is a collection of all the requested features that
lie outside of the core product, and will be implemented as external scripts
by anyone who wishes to participate.
Documentation Needed
Various forms of documentation that are needed, or are in need of review or
update.
- Wiki/How-To: Date Handling
- Wiki/How-To: Aliases, particularly new enhanced aliases
- Wiki/Features: All sections
Unit Tests Needed
There are always more unit tests needed. More specifically, better unit tests
are always needed. The convention is that there are four types of unit test:
There are always more unit tests needed. More specifically, better unit tests
are always needed. The convention is that there are four types of unit test:
1. High level tests that exercise large features, or combinations of commands.
For example, dependencies.t runs through a long list of commands that test
dependencies, but do so by using 'add', 'modify', 'done' and 'delete'.
2. Regression tests that ensure certain bugs are fixed and stay fixed. These
2. Regression tests that ensure certain bugs are fixed and stay fixed. These
tests are named bug.NNN.t where NNN refers to the Redmine issue number.
While it is not worth creating tests for small fixes like typos, it is for
changes to the logic.
3. Small feature tests. When small features are added, we would like small,
3. Small feature tests. When small features are added, we would like small,
low-level feature tests named feature.NNN.t, where NNN is the Redmine
issue number.
4. Code tests. These are tests written in C++ that exercise C++ objects, or
function calls. These are the lowest level tests. It is important that
4. Code tests. These are tests written in C++ that exercise C++ objects, or
function calls. These are the lowest level tests. It is important that
these kind of tests be extensive and thorough, because the software depends
on this code the most.
The tests are mainly written in Perl, and all use TAP. Here is how to get the
code and run the test suite:
git clone git://tasktools.org:task.git
cd task.git
cmake .
make
make test
Alternately, you go to the test directory and run the following:
cd task.git/test
make
make test
Either way, a TAP file 'all.log' is written that contains all test results.
once this file is created, you can see the failing tests using this script:
cd task.git/test
./problems
If you make a habit of running the test suite, consider downloading the
vramsteg utility to show a colorful progress bar, from:
git://tasktools.org/vramsteg.git
The tests are mainly written in Perl, and all use TAP. We want them all to be
eventually replaced by Python, so we are now only accepting new tests that use
the Python-based approach you can see in some of the existing tests.
Tests needed:
- Take a look at the bug database (https://bug.tasktools.org) and notice that
many issues, open and closed, have the "needsTest" label. These are things
that we would like to see in the test suite, as regression tests.
- The basic.t unit tests are a misnomer, and should be either removed or
renamed. We have long talked of 'basic functionality' that includes add,
delete, done, and list commands. We need unit tests that prove that basic
functionality is working, and it should be called basic.t.
- None of the current unit tests remove the 'extensions' directory, and they
all should.
renamed. We have long talked of 'basic functionality' that includes add,
delete, done, and list commands. We need unit tests that prove that basic
functionality is working, and the file containing them should be called
basic.t.
- Test propagation of modifications to recurring tasks.
- Test regex support.
- Need unit tests for each bug in the issue list, if suitable.
- We have bugs in the unit tests that only manifest on days such as December
31st. Clearly there is some bad date math going on, most likely in the
tests themselves, rather than in taskwarrior.
- Need unit tests for each bug in the issue list that is marked with the
'needsTest' label.
* Note that running the unit tests require the Perl JSON module to be
installed.
Note that running the unit tests currently requires the Perl JSON module to
be installed.
Note that all new unit tests should follow the test/template.t standard.
Work in Progress
Things that are currently in flux, which is another way of saying leave it
alone while it is being worked on.
- Command line parser (A3).
- Expression evaluation (E9).
- All columns/Col*::validate methods.
- New columns/Col*::modify methods.
Current Codebase Condition
'master' branch:
- 2.0.0 release, current, locked.
- 2.4.1 Current release, locked.
'2.0.1' branch (to be released as 2.1.0):
- All current development.
'2.2.0' branch:
- Future development effort.
'2.4.2' branch:
- Current development branch no plans yet.
---
2012-05-12 Added general statement about how to contribute.
2015-02-14 Updated for 2.4.1

View File

@@ -3,67 +3,73 @@ Startup
Context::initialize and Context::run methods.
Context is a large object that holds all task information, both in terms of
the task data, and intermediate run-time data. Having one global Context
object means we don't have 50 global variables. Context is therefore just a
the task data, and intermediate run-time data. Having one global Context
object means we don't have 50 global variables. Context is therefore just a
big global bucket of data.
Context::initialize sets up all the data and processes the command line. The
Context::initialize sets up all the data and processes the command line. The
initialization process is a big chicken-and-egg problem, because the command
line depends on configuration (aliases) and the command line can force a
reload of configuration (rc:foo). This is solved by look-ahead: the command
reload of configuration (rc:foo). This is solved by look-ahead: the command
line is scanned for 'rc:xxx' and 'rc.data.location:xxx' arguments, then later
for overrides.
The Context::run method handles all the debug output and exceptions. Its
The Context::run method handles all the debug output and exceptions. Its
main purpose is to set up exception handling and call Context::dispatch.
Command Line Parsing
Command line parsing is difficult because of all the ambiguity. The solution
is to make several passes over the command line. For example, the task
command determines whether subsequent arguments are interpreted as part of a
filter or set of modifications.
Command line parsing is difficult because of all the ambiguity. The solution
is to make multiple passes over the command line. For example, the command
determines whether subsequent arguments are interpreted as part of a filter or
set of modifications.
The CLI object is fed command line arguments, then through a succession of
calls builds and annotates a parse tree. To help with this, the Lexer is
used to break up strings into tokens.
Dispatch
Dispatch is simple: once the command line is parsed, the command is used to
look up a command object, then call its execute method.
Dispatch is simple: once the command line is parsed, the command is used to
look up a command object, then a call is made to the Command::execute method.
Context stores an associative map of command object pointers indexed by a
string. This means the 'done' string is an index to the CmdDone object that
string. This means the 'done' string is an index to the CmdDone object that
implements the functionality.
Command Objects
Every task command is implemented by a command object. The command object
Every task command is implemented by a command object. The command object
provides metadata, usage and one-line help in addition to the ::execute method
that implements the command.
that implements the command. The Command base class implements common
functionality.
Column Objects
There is a 1:1 correspondence between attributes stored in the data files and
the columns that may be reported. These are represented by column objects,
the columns that may be reported. These are represented by column objects,
which are responsible for validating input, measuring space needed according
to various formats, and for rendering data for reports.
to various formats, and for rendering data for reports. There is a
ColDescription object that inherits from a Column base class.
TDB2
The TDB2 object is a layered, transactioned I/O manager. Its purpose is to
isolate code from file I/O, locking, synching, and parsing details. It is
also responsible for minimizing reads, writes and parsing of data files.
The TDB2 object is a layered, transactioned I/O manager. Its purpose is to
isolate code from file I/O, locking and parsing details. It is also
responsible for minimizing reads, writes and parsing of data files.
All input is assumed to be UTF8. All stored data is UTF8.
All input is assumed to be UTF8. All stored data is UTF8.
GC
Garbage Collection is the process that moves tasks between the pending.data
and completed.data files. It is also responsible for waking tasks out of the
and completed.data files. It is also responsible for waking tasks out of the
wait state.
Every command that displays task IDs will cause a GC to be run first, which
minimizes the number of changes necessary to the task IDs. This means that
minimizes the number of changes necessary to the task IDs. This means that
when a report shows task IDs, those IDs will remain valid while subsequent
write commands are issued. The next report run may show different IDs.
write commands are issued. The next report run may show different IDs.
Minimizing the size of pending.data is important for performance, because it
is the file that is accessed most.
@@ -71,13 +77,12 @@ GC
Files
The data files used are all kept in the rc.data.location directory, which
defaults to ~/.task. The files are:
defaults to ~/.task. The files are:
pending.data
completed.data
undo.data
backlog.data
synch.key
The pending.data file aspires to contain only pending, waiting and recurring
tasks, but this is only correct after a GC, and before any tasks are modified.
@@ -86,35 +91,35 @@ Files
The completed.data file accumulates data over time, and grows unbounded.
The undo.data file accumulates changes over time, and grows unbounded. It
provides all the necessary metadata to support the 'undo' command and the
'merge' command.
The undo.data file accumulates changes over time, and grows unbounded. It
provides all the necessary metadata to support the 'undo' command.
The backlog.data file contains an accumulated set of changes that have not
been transmitted to the task server. It grows unbounded between 'synch'
commands.
The synch.key file contains a synch receipt that is used to optimize synch
operations.
been transmitted to Taskserver. It grows unbounded between 'sync' commands.
Filter
A filter is simply a set of command line arguments, but is only a subset of
the complete command line. These arguments (Arg objects) are grouped into
a set by the A3 (Args) object according to whether the command found is a
read or write command.
the complete command line. These arguments are extracted from the parse tree
according to whether the command found is a read or write command.
There is a Command::filter method for applying a filter to a set of tasks,
yielding a result set. It does this by creating an expression from the
filter using the E9 object, then evaluating the expression for each task,
such that the result set contains only tasks for which the expression
evaluates to Boolean true.
There is a Filter::subset method for applying a filter to a set of tasks,
yielding a result set. It does this by creating an expression from the
parse tree using the Eval object, then evaluating the expression for each task,
such that the result set contains only tasks for which the expression evaluates
to Boolean true.
Eval & Variant
The Eval class evaluates expressions, provided in string form, using the
Variant class to represent data elements. Variant implements all operators
for all Variant types.
Sorting
Sorting is performed on a set of tasks. More specifically, the list that is
Sorting is performed on a set of tasks. More specifically, the list that is
sorted is a set of numeric indexes to tasks that are stored in a separate
list. This minimizes the amount of data copying involved to just integers
list. This minimizes the amount of data copying involved to just integers
rather than Task objects, but at the expense of one level of indirection.
Memory fragmentation is a bigger problem than the performance of vector
indexing.
@@ -124,16 +129,16 @@ Sorting
Render
There are two rendering objects, ViewTask and ViewText. These both have the
same tabular grid rendering capabilities. ViewText maintains a 2D vector of
There are two rendering objects, ViewTask and ViewText. These both have the
same tabular grid rendering capabilities. ViewText maintains a 2D vector of
strings to contain the data to be rendered, so it is used for things like the
help command output. ViewTask does not copy data, but assumes all data is
help command output. ViewTask does not copy data, but assumes all data is
stored externally in a vector of Tasks, which minimizes data copying.
ViewTask contains projection data in the form of a set of Column objects that
represent the X axis. The Y axis is represented by a vector of tasks.
represent the X axis. The Y axis is represented by a vector of tasks.
The rendering process is complex. It involves dynamically setting column
The rendering process is complex. It involves dynamically setting column
widths based on (1) available terminal width, (2) the columns to be included
in the output, (3) ability to wrap text for certain columns and (4) the size
of the data to be rendered, which involves added complexity when UTF8 is used.
@@ -144,24 +149,24 @@ Render
Test Suite
A strong and diverse test suite is critical to the successful release of any
software. With the complex command set and its myriad permutations, a test
software. With the complex command set and its myriad permutations, a test
suite is the only way to ensure quality levels, and guarantee that big changes
are sound.
It is intended that the test suite continues growing, mostly adding more
regression tests (bug.*.t) and more feature tests (feature.*.t). The test are
mostly written in Perl, and utilize the Test::More module to generate TAP
output. Some tests are written in C++ and also generate TAP.
regression and feature tests. The test are mostly written in Perl, and utilize
the Test::More module to generate TAP output. This is changing though, and the
suite is slowly migrating to Python. Some tests are written in C++ and all
tets generate TAP output.
There are currently over 5,000 unit tests, that take a minute or two to run
There are currently about 8,000 unit tests, that take a minute or two to run
in total.
There is a tinderbox that runs on a variable frequency. As a release
approaches, the frequency is boosted so there are always current results to be
found. Between releases the tinderbox runs daily. It is intended that this
be modified for continuous integration, so it runs once per commit.
Taskwarrior uses flod software to automate continuous integration across many
platforms. Code changes are automatically detected, propagated, built and
tested on a variety of participating platforms. Grid testing results are here:
http://tasktools.org/tinderbox/task.html
http://central.tasktools.org/
When making code changes, it is important that the test suite be run to verify
that functionality was not broken.
@@ -175,27 +180,31 @@ Debugging
http://tasktools.org/performance).
- Data load times.
- Terminal size, color capabilities.
- Command line parsing steps, shown in colorful diagrams.
- Command line parse tree.
- TDB2 layer and I/O information.
Additionally, there are other settings (see 'man taskrc' for full details) that
may also be helpful: 'rc.hooks=on|off', 'rc.debug.parser=0|1|2',
'rc.debug.hooks=0|1|2', 'rc.debug.tls=0|1|2|3...'.
Patches
Patches are encouraged and welcomed. Either attach them to the appropriate
Redmine issue, or send them to support@taskwarrior.org. A good patch:
Patches are encouraged and welcomed. Either attach them to the appropriate
Jira issue, or send them to support@taskwarrior.org. A good patch:
- Maintains the MIT license, and does not contain code lifted from other
sources.
- Precisely addresses one issue only.
- Doesn't break unit tests.
- Doesn't introduce dependencies.
- Is accompanied by unit tests, where appropriate.
- Is accompanied by unit tests, where appropriate, written in Python.
- Is accompanied by documentation changes, where appropriate.
- Conforms to the prevailing coding standards - in other words, it should
fit right in with the existing code.
A patch may be rejected for any of the above reasons, and more. Bad patches
may be accepted and modified depending on work load and mood. It is possible
that a patch may be rejected because it conflicts in some way with plans or
upcoming changes.
A patch may be rejected for not following the above guidelines, and more.
Bad patches may be accepted and modified depending on work load and mood. It
is possible that a patch may be rejected because it conflicts in some way with
plans or upcoming changes.
---

59
INSTALL
View File

@@ -8,12 +8,20 @@ Pre-requisites
--------------
You will need the CMake build system installed in order to build taskwarrior
from source.
from source. More information on cmake can be obtained at http://cmake.org
More information on cmake can be obtained at http://cmake.org
You will need a C++ compiler that supports C++11 N1984, which includes:
Optionally, you might want to have Lua installed, if you wish to write plugins
and modify taskwarrior.
- gcc 4.4 (released 2009-04-21)
- clang 2.9 (released 2011-04-06)
In addition:
- uuid lib
- gnutls (optional - for syncing)
It is HIGHLY RECOMMENDED that you build with a library that provides uuid_*
functions, such as libuuid.
Basic Installation
@@ -67,18 +75,38 @@ lists them and their defaults plus the CMAKE_INSTALL_PREFIX:
CMAKE_INSTALL_PREFIX /usr/local
TASK_BINDIR bin
TASK_DOCDIR share/doc/task
TASK_RCDIR share/doc/task/rc
TASK_MAN1DIR share/man/man1
TASK_MAN5DIR share/man/man5
The corresponding TASK_* variables will be combined with CMAKE_INSTALL_PREFIX to
get absolute installation directoris:
get absolute installation directories:
CMAKE_INSTALL_PREFIZ/TASK_BINDIR /usr/local/bin
CMAKE_INSTALL_PREFIZ/TASK_DOCDIR /usr/local/share/doc/task
CMAKE_INSTALL_PREFIZ/TASK_MAN1DIR /usr/local/share/man/man1
CMAKE_INSTALL_PREFIZ/TASK_MAN5DIR /usr/local/share/man/man5
CMAKE_INSTALL_PREFIX/TASK_BINDIR /usr/local/bin
CMAKE_INSTALL_PREFIX/TASK_DOCDIR /usr/local/share/doc/task
CMAKE_INSTALL_PREFIX/TASK_RCDIR /usr/local/share/doc/task/rc
CMAKE_INSTALL_PREFIX/TASK_MAN1DIR /usr/local/share/man/man1
CMAKE_INSTALL_PREFIX/TASK_MAN5DIR /usr/local/share/man/man5
Localizations
-------------
To make use of a translation, specify a language number, as found in cmake.h:
$ cmake -DLANGUAGE=2 .
Currently the defined languages are:
eng_USA 1
esp_ESP 2
deu_DEU 3
fra_FRA 4
ita_ITA 5
por_PRT 6
epo_RUS 7
pol_POL 8
Uninstallation
--------------
@@ -112,15 +140,8 @@ Cygwin
again, or reinstall Cygwin under your normal Windows login.
Darwin
If you're having trouble with Lua, check to see if the include files were
installed. If you're using fink, this will require the lua51-dev package in
addition to lua51.
Darwin, 32bit
The taskwarrior packages will not work on a 32-bit OSX installation on Core
Duo hardware. You will need to build Taskwarrior from source, and use this
configure command:
Taskwarrior needs to be built from source, and use this configure command:
cmake -DCMAKE_C_FLAGS=-m32 -DCMAKE_CXX_FLAGS=-m32 -DCMAKE_EXE_LINKER_FLAGS=-m32 .
@@ -134,7 +155,7 @@ Darwin, 32bit
Troubleshooting
---------------
If you've recently made changes to dependencies (by reinstalling Lua, for
If you've recently made changes to dependencies (by reinstalling them, for
example) be sure to rerun 'cmake .' before trying to execute 'make' again.
CMake will run and locate all the necessary pieces for the build, and create
@@ -143,7 +164,7 @@ may be compiler errors and warnings when running 'make'. Sometimes you will run
CMake with no reported problems, and the build will fail later. This is
almost always because CMake is mistaken about some assumption.
If a build does not succeed, please send the contents of the 'CMakeCache.txt'
If a build does not succeed, please send the contents of the 'CMakeCache.txt'
and 'CMakeFiles/CMakeOutput.log' files to support@taskwarrior.org, or post a
message in the support forums at taskwarrior.org along with the information.

View File

@@ -1,6 +1,6 @@
taskwarrior - a command line task list manager.
Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

59
NEWS
View File

@@ -1,56 +1,61 @@
New bug fixes in taskwarrior 2.1.2
New Features in taskwarrior 2.4.2
- Important bug fix release regarding duplicate UUIDs during the merge command.
- Ability to set context, which serves as a permanent user-defined filter.
- The 'info' command now shows virtual tags.
New features in taskwarrior 2.1.2
New commands in taskwarrior 2.4.2
- The 'context' command has been added, along with it subcommands 'define',
'delete', 'show', 'list' and 'none'.
New configuration options in taskwarrior 2.4.2
- 'context' to store the current context applied.
- 'context.<name>' to store the definition of context 'name'
Newly deprecated features in taskwarrior 2.4.2
- None
New commands in taskwarrior 2.1.2
Removed features in 2.4.2
- None
New configuration options in taskwarrior 2.1.2
Known Issues
- None
- If you upgraded from Taskwarrior 2.3.0, you will need one of the following
settings to allow continued syncing to a Taskserver:
Newly deprecated features in taskwarrior 2.1.2
$ task config taskd.trust strict
$ task config taskd.trust 'ignore hostname'
$ task config taskd.trust 'allow all'
- None
These are presented in order of preference from most to least secure, and
depend on how your certs were generated.
---
- https://bug.tasktools.org/
Taskwarrior has been built and tested on the following configurations:
* OS X 10.7 Lion, 10.6 Snow Leopard
* Fedora 17 Beefy Miracle and 16 Verne
* Ubuntu 12.04 Precise Pangolin and 11.10 Oneiric Ocelot
* Debian 6.0 Squeeze (stable)i and 5.0 Lenny (oldstable) plus Sid (testing)
* Slackware 13.37
* Arch Linux
* Gentoo Linux
* Sabayon Linux
* SliTaz Linux
* CRUX Linux
* SuSE
* derivatives/customizations/flavors of the above Linux distributions
* Solaris 10 and 8
* OpenBSD
* OS X
* Fedora
* Ubuntu
* Debian
* Arch
* FreeBSD
* NetBSD
* Cygwin 1.7
* Cygwin
---
While Taskwarrior has undergone testing, bugs are sure to remain. If you
encounter a bug, please enter a new issue at:
http://taskwarrior.org/projects/taskwarrior/issues/new
https://bug.tasktools.org
Or you can also report the issue in the forums at:
http://taskwarrior.org/projects/taskwarrior/boards
https://answers.tasktools.org
Or just send a message to:

26
README
View File

@@ -1,26 +0,0 @@
Thank you for taking a look at taskwarrior!
Taskwarrior is a GTD, todo list, task management, command line utility with a
multitude of features. It is a portable, well supported, very active project,
and it is Open Source. Taskwarrior has binary distributions, online
documentation, demonstration movies, and you'll find all the details at:
http://taskwarrior.org
At the site you'll find a wiki, discussion forums, downloads, news and more.
Your contributions are especially welcome. Whether it comes in the form of
code patches, ideas, discussion, bug reports, encouragement or criticism, your
input is needed.
Please send your support questions and code patches to:
support@taskwarrior.org
Consider joining taskwarrior.org and participating in the future of taskwarrior.
---
Taskwarrior is released under the MIT license. For details check the LICENSE
file.

47
README.md Normal file
View File

@@ -0,0 +1,47 @@
# Disclaimer during ongoing development
We want to discourage you from using the development version of Taskwarrior.
The development branch is a work in progress and may not pass all quality tests,
therefore it may harm your data. We do not guarantee proper or even adequate
functionality, performance or timely fixes.
We welcome bug reports from beta- and release-level software, but generally not
development versions. If you are undaunted by this, please:
- Make proper backups.
- Expect broken and missing functionality.
- Be aware that using the development branch involves risks.
---
Thank you for taking a look at Taskwarrior!
Taskwarrior is a GTD, todo list, task management, command line utility with a
multitude of features. It is a portable, well supported and very active Open
Source project. Taskwarrior has binary distributions, online documentation,
demonstration movies, and you'll find all the details at:
http://taskwarrior.org
At the site you'll find online documentation, downloads, news and more.
Your contributions are especially welcome. Whether it comes in the form of
code patches, ideas, discussion, bug reports, encouragement or criticism, your
input is needed.
For support options, take a look at:
http://taskwarrior.org/support
Please send your code patches to:
support@taskwarrior.org
Consider joining bug.tasktools.org, answers.tasktools.org and participating in
the future of taskwarrior.
---
Taskwarrior is released under the MIT license. For details check the LICENSE
file.

View File

@@ -1,6 +1,7 @@
/* cmake.h.in. Creates cmake.h during a cmake run */
#define L10N // Localization complete.
/* Product identification */
#define PRODUCT_TASKWARRIOR 1
/* Package information */
#define PACKAGE "${PACKAGE}"
@@ -11,17 +12,21 @@
#define PACKAGE_VERSION "${PACKAGE_VERSION}"
#define PACKAGE_STRING "${PACKAGE_STRING}"
#define CMAKE_BUILD_TYPE "${CMAKE_BUILD_TYPE}"
/* Installation details */
#define TASK_RCDIR "${CMAKE_INSTALL_PREFIX}/${TASK_DOCDIR}/rc"
#define TASK_RCDIR "${CMAKE_INSTALL_PREFIX}/${TASK_RCDIR}"
/* Localization */
#define PACKAGE_LANGUAGE 1
#define LANGUAGE_EN_US 1
/*
Override PACKAGE_LANGUAGE, then
#define LANGUAGE_XX_YY 2
*/
#define PACKAGE_LANGUAGE ${PACKAGE_LANGUAGE}
#define LANGUAGE_ENG_USA ${LANGUAGE_ENG_USA}
#define LANGUAGE_ESP_ESP ${LANGUAGE_ESP_ESP}
#define LANGUAGE_FRA_FRA ${LANGUAGE_FRA_FRA}
#define LANGUAGE_DEU_DEU ${LANGUAGE_DEU_DEU}
#define LANGUAGE_ITA_ITA ${LANGUAGE_ITA_ITA}
#define LANGUAGE_POR_PRT ${LANGUAGE_POR_PRT}
#define LANGUAGE_EPO_RUS ${LANGUAGE_EPO_RUS}
#define LANGUAGE_POL_POL ${LANGUAGE_POL_POL}
/* git information */
#cmakedefine HAVE_COMMIT
@@ -39,34 +44,37 @@ Override PACKAGE_LANGUAGE, then
#cmakedefine NETBSD
#cmakedefine HAIKU
#cmakedefine SOLARIS
#cmakedefine KFREEBSD
#cmakedefine GNUHURD
#cmakedefine UNKNOWN
/* Found the lua library */
#cmakedefine HAVE_LIBLUA
/* Found the GnuTLS library */
#cmakedefine HAVE_LIBGNUTLS
/* Found the Readline library */
#cmakedefine HAVE_READLINE
/* Found the pthread library */
#cmakedefine HAVE_LIBPTHREAD
/* Found the readline library */
#cmakedefine HAVE_READLINE
#cmakedefine HAVE_LIBREADLINE
/* Found random */
#cmakedefine HAVE_RANDOM
/* Found srandom */
#cmakedefine HAVE_SRANDOM
/* Found tm_gmtoff */
#cmakedefine HAVE_TM_GMTOFF
/* Found timegm */
#cmakedefine HAVE_TIMEGM
/* Found the uuid library */
#cmakedefine HAVE_UUID
/* Found st.st_birthtime struct member */
#cmakedefine HAVE_ST_BIRTHTIME
/* Found get_current_dir_name */
#cmakedefine HAVE_GET_CURRENT_DIR_NAME
/* Found uuid_unparse_lower in the uuid library */
#cmakedefine HAVE_UUID_UNPARSE_LOWER
/* Found wordexp.h */
#cmakedefine HAVE_WORDEXP
/* Undefine this to eliminate the execute command */
#define HAVE_EXECUTE 1

View File

@@ -0,0 +1,81 @@
# - Find the readline library
# This module defines
# READLINE_INCLUDE_DIR, path to readline/readline.h, etc.
# READLINE_LIBRARIES, the libraries required to use READLINE.
# READLINE_FOUND, If false, do not try to use READLINE.
# also defined, but not for general use are
# READLINE_readline_LIBRARY, where to find the READLINE library.
# READLINE_ncurses_LIBRARY, where to find the ncurses library [might not be defined]
# Apple readline does not support readline hooks
# So we look for another one by default
IF (APPLE OR FREEBSD)
FIND_PATH (READLINE_INCLUDE_DIR NAMES readline/readline.h PATHS
/usr/include/
/sw/include
/opt/local/include
/opt/include
/usr/local/include
NO_DEFAULT_PATH
)
ENDIF (APPLE OR FREEBSD)
FIND_PATH (READLINE_INCLUDE_DIR NAMES readline/readline.h)
# Apple readline does not support readline hooks
# So we look for another one by default
IF (APPLE OR FREEBSD)
FIND_LIBRARY (READLINE_readline_LIBRARY NAMES readline PATHS
/usr/lib
/sw/lib
/opt/local/lib
/opt/lib
/usr/local/lib
NO_DEFAULT_PATH
)
ENDIF (APPLE OR FREEBSD)
FIND_LIBRARY (READLINE_readline_LIBRARY NAMES readline)
# Sometimes readline really needs ncurses
IF (APPLE OR FREEBSD)
FIND_LIBRARY (READLINE_ncurses_LIBRARY NAMES ncurses PATHS
/usr/lib
/sw/lib
/opt/local/lib
/opt/lib
/usr/local/lib
/usr/lib
NO_DEFAULT_PATH
)
ENDIF (APPLE OR FREEBSD)
FIND_LIBRARY (READLINE_ncurses_LIBRARY NAMES ncurses)
MARK_AS_ADVANCED (
READLINE_INCLUDE_DIR
READLINE_readline_LIBRARY
READLINE_ncurses_LIBRARY
)
SET (READLINE_FOUND "NO" )
IF (READLINE_INCLUDE_DIR)
IF (READLINE_readline_LIBRARY)
SET (READLINE_FOUND "YES" )
SET (READLINE_LIBRARIES
${READLINE_readline_LIBRARY}
)
# some readline libraries depend on ncurses
IF (READLINE_ncurses_LIBRARY)
SET (READLINE_LIBRARIES ${READLINE_LIBRARIES} ${READLINE_ncurses_LIBRARY})
ENDIF (READLINE_ncurses_LIBRARY)
ENDIF (READLINE_readline_LIBRARY)
ENDIF (READLINE_INCLUDE_DIR)
IF (READLINE_FOUND)
MESSAGE (STATUS "Found readline library")
ELSE (READLINE_FOUND)
IF (READLINE_FIND_REQUIRED)
MESSAGE (FATAL_ERROR "Could not find readline -- please give some paths to CMake")
ENDIF (READLINE_FIND_REQUIRED)
ENDIF (READLINE_FOUND)

View File

@@ -1,5 +1,4 @@
/* commit.h.in. Creates commit.h during a cmake run */
#define L10N // Localization complete.
/* git information */
#define COMMIT "${COMMIT}"

View File

@@ -1,16 +1,16 @@
cmake_minimum_required (VERSION 2.8)
message ("-- Configuring man pages")
set (man_FILES task-color.5 task-faq.5 task-sync.5 task-tutorial.5 task.1 taskrc.5)
set (man_FILES task-color.5 task-sync.5 taskrc.5 task.1)
foreach (man_FILE ${man_FILES})
configure_file (
man/${man_FILE}.in
man/${man_FILE})
endforeach (man_FILE)
install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/man/ DESTINATION ${TASK_MAN1DIR}
install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/man/ DESTINATION ${TASK_MAN1DIR}
FILES_MATCHING PATTERN "*.1")
install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/man/ DESTINATION ${TASK_MAN5DIR}
install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/man/ DESTINATION ${TASK_MAN5DIR}
FILES_MATCHING PATTERN "*.5")
install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/rc DESTINATION ${TASK_DOCDIR})
install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/rc/ DESTINATION ${TASK_RCDIR})
install (FILES ${CMAKE_CURRENT_SOURCE_DIR}/ref/task-ref.pdf DESTINATION ${TASK_DOCDIR})

2
doc/man/.gitignore vendored
View File

@@ -1,6 +1,4 @@
task-color.5
task-faq.5
task-sync.5
task-tutorial.5
task.1
taskrc.5

View File

@@ -1,4 +1,4 @@
.TH task-color 5 2012-09-18 "${PACKAGE_STRING}" "User Manuals"
.TH task-color 5 2015-03-15 "${PACKAGE_STRING}" "User Manuals"
.SH NAME
task-color \- A color tutorial for the taskwarrior command line todo manager.
@@ -243,7 +243,7 @@ be a visual mess. Beware!
The precedence for the color rules is determined by the configuration
variable 'rule.precedence.color', which by default contains:
due.today,active,blocked,overdue,due,keyword.,project.,tag.,recurring,pri.,tagged,completed,deleted
   due.today,active,blocking,blocked,overdue,due,scheduled,keyword.,project.,tag.,uda.,recurring,pri.,tagged,completed,deleted
These are just the color rules with the 'color.' prefix removed. The
rule 'color.due.today' is the highest precedence, and 'color.deleted' is the lowest.
@@ -265,7 +265,7 @@ your .taskrc file (note that your installation may use a slightly different path
from the example):
.RS
include /usr/local/share/doc/task/rc/dark-256.theme
include ${CMAKE_INSTALL_PREFIX}/${TASK_RCDIR}/dark-256.theme
.RE
You can use any of the standard taskwarrior themes:
@@ -294,8 +294,17 @@ light-256.theme
solarized-dark-256.theme
.br
solarized-light-256.theme
.br
dark-default-16.theme
.br
dark-gray-blue-256.theme
.br
no-color.theme
.RE
Bear in mind that if you are using a terminal with a dark background, you will
see better results using a dark theme.
You can also see how the theme will color the various tasks with the command:
$ task color legend
@@ -304,7 +313,7 @@ Better yet, create your own, and share it. We will gladly host the theme file
on <http://taskwarrior.org>.
.SH "CREDITS & COPYRIGHTS"
Copyright (C) 2006 \- 2012 P. Beckingham, F. Hernandez.
Copyright (C) 2006 \- 2015 P. Beckingham, F. Hernandez.
Taskwarrior is distributed under the MIT license. See
http://www.opensource.org/licenses/mit-license.php for more information.
@@ -312,8 +321,6 @@ http://www.opensource.org/licenses/mit-license.php for more information.
.SH SEE ALSO
.BR task(1),
.BR taskrc(5),
.BR task-faq(5),
.BR task-tutorial(5),
.BR task-sync(5)
For more information regarding taskwarrior, the following may be referenced:
@@ -324,7 +331,7 @@ The official site at
.TP
The official code repository at
<git://tasktools.org/task.git/>
<https://git.tasktools.org/scm/tm/task.git>
.TP
You can contact the project by writing an email to

View File

@@ -1,398 +0,0 @@
.TH task-faq 5 2012-09-18 "${PACKAGE_STRING}" "User Manuals"
.SH NAME
task-faq \- A FAQ for the task(1) command line todo manager.
.SH WELCOME
Welcome to the taskwarrior FAQ. If you would like to see a question answered
here, please send us a note to <support@taskwarrior.org>.
.TP
.B Q: When I redirect the output to a file, I lose all the colors. How do I fix this?
Taskwarrior knows when the output is not going directly to a terminal, and
strips out all the color control characters. This is based on the assumption
that the color control codes are not wanted in the file. Prevent this with the
following entry in your .taskrc file:
_forcecolor=on
or by temporarily overriding the value on the command line:
task ... rc._forcecolor=on
There is an additional problem when using pagers such as 'less' and 'more', because
color control codes are stripped. When using less, these options will preserve
the color codes:
task ... | less -FrX
There have been problems reported with the Linux 'more' pager, which inserts
newline characters.
.TP
.B Q: How do I backup my taskwarrior data files? Where are they?
Taskwarrior writes all data to files in this location:
~/.task/
You may have overridden this location with the 'data.location' configuration
setting, in which case backup that instead. All files in this location should
be backed up. Making sure all the files in this location are backed up, and not
just a named subset will ensure that you properly backup future versions of
taskwarrior, which will likely introduce more files in this location.
Don't forget there is also the ~/.taskrc file that contains your taskwarrior
configuration data.
.TP
.B Q: How can I separate my work tasks from my home tasks? Specifically, can I keep them completely separate?
You can do this by creating an alternate .taskrc file, then using shell
aliases. Here are example Bash commands to achieve this:
% cp ~/.taskrc ~/.taskrc_home
% (now edit .taskrc_home to change the value of data.location)
% alias wtask="task"
% alias htask="task rc:~/.taskrc_home"
This gives you two commands, 'wtask' and 'htask' that operate using two
different sets of task data files. Bash shell functions are a good alternative.
.TP
.B Q: Can I revert to a previous version of taskwarrior? How?
Yes, you can revert to a previous version of task, simply by downloading an
older version and installing it. If you find a bug in task, then this may be the
only way to work around the bug, until a patch release is made.
Note that it is possible that the taskwarrior file format will change. For
example, the format changed between versions 1.5.0 and 1.6.0. Taskwarrior will
automatically upgrade the file but if you need to revert to a previous version
of taskwarrior, there is the file format to consider. This is yet another good
reason to back up your task data files!
.TP
.B Q: Can I have two separate versions of taskwarrior installed? How?
Yes, and here is one simple way to do that. Install the older version of
taskwarrior, and then rename the 'task' binary to something like 't194' to
reflect the version number. Then install the newer version, which will be
named 'task'. Now you have 't194' and 'task' both installed, both using the
same configuration and data.
Note that the older version will not be aware of any new configuration settings
and so will complain about them in the 'show' command. This can be ignored.
Likewise the newer version may complain about obsolete entries in the
configuration.
Note also that the man pages will overwrite, which is why it is suggested that
the older version be installed first, so that you benefit from improved
documentation.
.TP
.B Q: How do I build a Darwin 32bit version of task
The taskwarrior packages will not work on a 32-bit OSX installation on Core
Duo hardware. You will need to build Taskwarrior from source, and use this
configure command:
./configure "CFLAGS=-m32" "CXXFLAGS=-m32" "LDFLAGS=-m32"
See: http://taskwarrior.org/issues/817
http://stackoverflow.com/questions/3261909/build-32bit-on-64-bit-linux-using-a-configure-script
.TP
.B Q: How do I build taskwarrior under Cygwin?
Take a look at the README.build file, where the latest information on build
issues is kept. Taskwarrior is built the same way everywhere. But under Cygwin,
you'll need to make sure you have the following packages available first:
gcc
make
The gcc and make packages allow you to compile the code, and are therefore
required.
.TP
.B Q: Do colors work under Cygwin?
They do, but only in a limited way. You can use regular foreground colors
(black, red, green ...) and regular background colors (on_black, on_red,
on_green ...), but underline and bold are not supported.
If you run the command:
% task colors
Taskwarrior will display all the colors it can use, and you will see which ones
you can use.
Note that if you install the 'mintty' shell in Cygwin, then you can use 256
colors.
See the 'man task-color' page for more details on which colors can be used.
.TP
.B Q: Where does taskwarrior store the data?
By default, taskwarrior creates a .taskrc file in your home directory and
populates it with defaults. Taskwarrior also creates a .task directory in your
home directory and puts data files there.
.TP
.B Q: Can I edit that data?
Of course you can. It is a simple text file, and looks somewhat like the JSON
format, and if you are careful not to break the format, there is no reason not
to edit it. But taskwarrior provides a rich command set to do that manipulation
for you, so it is probably best to leave those files alone.
.TP
.B Q: How do I restore my .taskrc file to defaults?
If you delete (or rename) your .taskrc file, taskwarrior will offer to create a
default one for you. Another way to do this is with the command:
task rc:new-file version
Taskwarrior will create 'new-file' if it doesn't already exist. There will not
be much in it though - taskwarrior relies heavily on default values, which can
be seen with this command:
task show
This lists all the currently known settings. If you have just created a
new file, then this command lists only the defaults.
Note that this is a good way to learn about new configuration settings,
particularly if your .taskrc file was created by an older version.
.TP
.B Q: Do I need to back up my taskwarrior data?
Yes you do, like all your other files. You should back up all the files in your
~/.task directory, and your ~/.taskrc file too.
.TP
.B Q: Can I share my tasks between different machines?
Yes, you can. Most people have success with a DropBox - a free and secure file
synching tool. Simply configure taskwarrior to store it's data in a dropbox
folder, by modifying the:
data.location=...
configuration variable. Check out DropBox at http://www.dropbox.com.
You might also want to share the same .taskrc file. You can do this by putting an alias in the .bashrc file along the lines of
alias task="task rc:/home/username/Dropbox/mysharedtaskrc"
An alternative to Dropbox is to use the push/pull/merge features built into Taskwarrior. See 'man task-sync' for details.
.TP
.B Q: I don't want to use dropbox. Is there another way to synchronize my tasks?
Of course. Especially if you want to modify tasks offline on both machines and
synchronize them later on. For this purpose there is a 'merge' command which is
is able to insert the modifications you made to one of your task databases into
a second database.
Here is a basic example of the procedure:
task merge ssh://user@myremotehost/.task/
task push ssh://user@myremotehost/.task/
The first command fetches the undo.data file from the remote system, reads the
changes made and updates the local database. When this merge command completes,
you should copy all the local .data files to the remote system either by using
the push command explicitly or by activating the merge.autopush feature in the
~/.taskrc file. This way you ensure that both systems are fully synchronized.
.TP
.B Q: The undo.data file gets very large - do I need it?
You need it if you want the undo capability, or the merge capability mentioned
above. But if it gets large, you can certainly truncate it to save space, just
be careful to delete lines from the top of the file, up to and including a
separator '---'. The simplest way is to simply delete the undo.data file. Note
that it does not slow down taskwarrior in performance-sensitive areas, because
it is typically not read until you want to undo, or report total active time in
the 'info' command. Taskwarrior generally only appends to the file.
It is not recommended that you delete the undo.data file, as it limits
functionality.
.TP
.B Q: How do I know whether my terminal supports 256 colors?
You will need to make sure your TERM environment variable is set to xterm-color,
otherwise the easiest way is to just try it! With version 1.9 or later, you
simply run
task color
and a full color palette is displayed. If you see only 8 or 16 colors, perhaps
with those colors repeated, then your terminal does not support 256 colors.
See the task-color(5) man page for more details.
.TP
.B Q: How do I make use of all these colors?
Use one of our provided color themes, or create your own - after all, they are
just collections of color settings.
See the task-color(5) man page for an in-depth explanation of the color rules.
.TP
.B Q: How can I make taskwarrior put the command in the terminal window title?
Just set the following value in your .taskrc file:
xterm.title=on
.TP
.B Q: Taskwarrior searches in a case-sensitive fashion - can I change that?
You can. Just set the following value in your .taskrc file:
search.case.sensitive=no
This will affect searching for keywords:
task Document list
taskwarrior will perform a caseless search in the description and any
annotations for the keyword 'Document'. It also affects description and
annotation substitutions:
task 1 modify /teh/the/
The pattern on the left will now be a caseless search term.
.TP
.B Q: Why do the ID numbers change?
Taskwarrior does this to always show you the smallest numbers it can. The idea
is that if your tasks are numbered 1 - 33, for example, those are easy to type
in. If instead task kept a rolling sequence number, after a while your tasks
might be numbered 481 - 513, which makes it more likely to enter one
incorrectly, because there are more digits.
When you run a report (such as "list"), the numbers are assigned before display.
For example, you can do this:
task list
task 12 done
task add Pay the rent
task 31 delete
Those id numbers are then good until the next report is run. This is because
taskwarrior performs a garbage-collect operation on the pending tasks file when
a report is run, which moves the deleted and completed tasks from the
pending.data file to the completed.data file. This keeps the pending tasks file
small, and therefore keeps taskwarrior fast. The completed data file is the one
that grows unbounded with use, but that one isn't accessed as much, so it
doesn't matter as much. So in all, the ID number resequencing is about
efficiency.
.TP
.B Q: How do I list tasks that are either priority 'H' or 'M', but not 'L'?
Taskwarrior's filters are all by default combined with an implicit logical AND
operator, so if you were to try this:
task priority:H priority:M list
There would be no results, because the priority could not simultaneously be 'H'
AND 'M'. Instead, you have a choice. You can do this:
task '(priority:H or priority:M)' list
Note that the quotes are one way of escaping the ( ) characters that are
otherwise interpreted by the shell before taskwarrior sees them. You can also
do this:
task priority.not:L priority.any: list
This filter states that the priority must not be 'L', AND there must be a
priority assigned. This filter then properly lists tasks that are 'H' or 'M',
because the two logical restrictions are not mutually exclusive as in the
original filter.
Some of you may be familiar with DeMorgan's laws of formal logic that relate
the AND and OR operators in terms of each other via negation, which can be used
to construct task filters.
.TP
.B Q: How do I delete an annotation?
Taskwarrior now has a 'denotate' command to remove annotations. Here is an
example:
task add Original task
task 1 annotate foo
task 1 annotate bar
task 1 annotate foo bar
Now to delete the first annotation, use:
task 1 denotate foo
This takes the fragment 'foo' and compares it to each of the annotations. In
this example, it will remove the first annotation, not the third, because it is
an exact match. If there are no exact matches, it will remove the first
non-exact match:
task 1 denotate ar
This will remove the second annotation - the first non-exact match.
.TP
.B Q: How do I show tasks completed on a certain day?
The day in question has to be boxed by a range, like this:
task end.after:3/29/2012 end.before:3/30/2012 completed
Note that a single date, such as 3/29/2012 does not refer to a whole day, but
to a single point in time, 3/20/2012 0:00:00.
.TP
.B Q: Why Lua as an extension language?
Lua has many positive attributes:
- Lua is written using tight, fast, standard C
- Lua is a breeze to integrate into any product
- The Lua source code is beautifully written
- Lua is a small language
Guile, Scheme and Neko were also considered.
.TP
.B Q: How can I help?
There are lots of ways. Here are some:
- Provide feedback on what works, what does not
- Tell us how task does or does not fit your workflow
- Tell people about task
- Report bugs when you see them
- Contribute to our Wiki
- Suggest features
- Write unit tests
- Write add-on scripts, and share them
- Fix bugs
.SH "CREDITS & COPYRIGHTS"
Copyright (C) 2006 \- 2012 P. Beckingham, F. Hernandez.
Taskwarrior is distributed under the MIT license. See
http://www.opensource.org/licenses/mit-license.php for more information.
.SH SEE ALSO
.BR task(1),
.BR taskrc(5),
.BR task-tutorial(5),
.BR task-color(5),
.BR task-sync(5)
For more information regarding task, the following may be referenced:
.TP
The official site at
<http://taskwarrior.org>
.TP
The official code repository at
<git://tasktools.org/task.git/>
.TP
You can contact the project by writing an email to
<support@taskwarrior.org>
.SH REPORTING BUGS
.TP
Bugs in taskwarrior may be reported to the issue-tracker at
<http://taskwarrior.org>

View File

@@ -1,361 +1,148 @@
.TH task-sync 5 2012-09-18 "${PACKAGE_STRING}" "User Manuals"
.TH task-sync 5 2015-03-15 "${PACKAGE_STRING}" "User Manuals"
.SH NAME
task-sync \- A tutorial for the task(1) data synchronization capabilities.
task-sync \- A discussion and tutorial for the various task(1) data
synchronization capabilities.
.SH DESCRIPTION
Taskwarrior has built-in support for synchronization, which can be used to keep
two task databases up to date, regardless of which one is used. This capability
can also be used to keep a backup copy of your task database on another machine.
.SH INTRODUCTION
Taskwarrior has several sync options, external and internal. If you wish to
sync your data, choose one method only; mixing methods is only going to lead to
problems. Each of the methods discussed have their own strengths.
Taskwarrior can use various protocols for transferring the data.
.SH HOW IT WORKS
If you were to manually attempt to keep two separate task databases up to date,
you would need to inspect both databases, and detect changes that occurred in
each one. Those changes would need to be migrated to the other database, while
being careful not to miss a change, and not to confuse an 'add' in one with
a 'delete' in the other.
The synchronization feature does just this. It can transfer task databases,
compare tasks, and apply changes where necessary.
.SH NEW COMMANDS
Taskwarrior has 'pull', 'push' and 'merge' commands which perform the steps
necessary to move files around and combine them. In the common use case, you
would only need to use the 'merge' command. These commands take an argument
that is a URI, which indicates where the remote database resides.
To be clear, the local database always refers to your ~/.task directory (unless
overridden), and the remote database is always specified by URI.
.SH MERGE
The merge command will fetch task data via URI and combine it with the local
task database. The syntax is:
.SH ALTERNATIVES
There are three alternatives for syncing data, which are:
1) Version control systems, such as git, hg, svn
.br
.RS
task merge [<URI>]
.RE
The URI is optional if the
.B merge.default.uri
configuration variable is set. The URI may point to a different directory, or
it may be a different computer. Here is an example of the merge command:
2) File hosting systems, such as DropBox
.br
.RS
$ task merge ~/work/
.RE
3) Using the Taskserver and the 'sync' command
This URI (~/work/) is a path name, which means the remote database is on the
same computer. Taskwarrior will fetch the data from the URI, and merge it with
your local data in ~/.task.
When complete, you will be asked whether you would like to push the combined
data back to the remote location specified by the URI. This is useful if you
are keeping two task databases synchronized, but it can be turned off. See
CONFIGURATION.
.SH OPTION 1: VERSION CONTROL SYSTEMS
There are several good, distributed VCS systems (git, hg, ...) and centralized
VCS systems (svn ...), and they function in a similar fashion for our purposes.
Note that a merge operation is not atomically reversible. You could however
run the 'task undo' command repeatedly to undo the effects.
.SH PUSH
The push command will copy the local task database to the specified URI. The
syntax is:
Setup is straightforward. You place your .task directory under revision
control. You then need to perform a regular commit/push/pull/update to make
sure that the data is propagated when needed. You can even do this using shell
scripts so that every task command is preceded by a 'pull' and followed by
a 'push'.
Strengths:
.br
.RS
task push [<URI>]
.RE
The URI is optional if the
.B push.default.uri
configuration variable is set. This command is useful for making backup copies
of your task database.
Note that the task files at the location specified by the URI are simply
overwritten, so don't expect any merging to occur. Misused, push can be
dangerous.
.SH PULL
The pull command will copy a task database from a URI to the local task database
(~/.task by default). The syntax is:
- Good data transport mechanisms
.br
.RS
task pull [<URI>]
.RE
The URI is optional if the
.B pull.default.uri
configuration variable is set. This command is useful for restoring a backup
copy of your task database.
Note that your local task database files will be simply overwritten by the files
obtained from the location specified by the URI, so don't expect any merging to
occur. Misused, pull can be dangerous.
.SH URI TYPES
The most basic URI is a path name on the local machine. An example would be:
- Secure transport options
Weaknesses:
.br
.RS
/home/bob/.task/
.RE
All the other URIs allow access to remote machines. The first uses SSH and scp
(either form can be used):
- You need proficiency with VCS tools
.br
.RS
ssh://[user@]host[:port]/absolute/path/to/.task/
- You will need to manually resolve conflicts frequently
.br
[user@]host:/absolute/path/to/.task/
.RE
- You need to provide the mechanism for making sure copies are up to date
In both cases paths are considered to be absolute. You can specify paths relative to the
users home directory as follows:
.SH OPTION 2: FILE HOSTING SERVICES
There are many file hosting services, such as DropBox, Amazon S3, Google Drive,
SkyDrive and more. This technique involves storing your .task directory in a
shared directory under the control of the file hosting services.
Syncing happens quickly, although it is possible to run into conflict situations
when there is no network connectivity, and the tasks are modified in two
separate locations. This is because the file hosting service knows only about
files, and it has no idea how to merge tasks. Avoid this problem by never
modifying the same task on two machines, without an intervening sync.
Setup simply involves creating the directory and modifying your data.location
configuration variable like this:
$ task config data.location /path/to/shared/directory
Strengths:
.br
.RS
ssh://[user@]host[:port]/.task/
- Always secure
.br
[user@]host:.task/
.RE
or even shorter
- Good client support
.br
.RS
[user@]host:.task/
.RE
Remark: Since taskwarrior simply calls the scp binary you can specify very much anything
that scp would accept, e.g. host configurations from ~/.ssh/config or ~username
expansion:
- Easy setup
.br
.RS
ssh://configured-host/~[username]/.task/
- Transparent use
Weaknesses:
.br
configured-host:~[username]/.task/
.RE
- Tasks are not properly merged
Rsync is another supported protocol that minimizes network traffic, by a clever
algorithm that doesn't copy files that have not changed:
.SH OPTION 3: TASKSERVER
The Taskserver was designed for this purpose to be secure, fast and conflict
free, allowing data interchange between assorted Taskwarrior clients, and
tolerant of network connectivity problems.
There is a 'sync' command built in to Taskwarrior, and with a server account
and client configuration, syncing is done on demand.
Setup is a matter of creating an account on a Taskserver (see your Taskserver
provider or operate your own - see
http://taskwarrior.org/docs/server_setup.html)
Once you have an account, you'll receive a certificate, key and a password.
You'll need to put the certificate and key somewhere like this:
$ cp <name>.cert.pem ~/.task
$ cp <name>.key.pem ~/.task
Then you configure Taskwarrior, using the account details:
$ task config taskd.certificate ~/.task/<name>.cert.pem
$ task config taskd.key ~/.task/<name>.key.pem
$ task config taskd.credentials <organization>/<name>/<password>
$ task config taskd.server <server domain>:<port>
If you are using a private server, you are likely also using a self-signed
certificate, which means you will need one of the following additional entries:
$ task config taskd.ca ~/.task/ca.cert.pem
The CA (Certificate Authority) will be used to verify the server certificate.
Alternatively, you can override the cert verification process using:
$ task config taskd.trust yes
This is an insecure option that should be used with caution, because it directs
Taskwarrior to trust any certificate.
After setup, you run a one-time sync initialization, like this:
$ task sync initialize
This will make sure your client and the server are properly in sync to begin
with. From this point on, you never run the 'initialize' command again, just
go about your business, and when you want to sync, run this:
$ task sync
You'll see a summary of how many tasks were uploaded and downloaded. You can
safely run the command as often as you like. When there are no changes to sync,
nothing happens. If you do not have connectivity, your task changes accumulate
so that when you next run 'sync' with proper connectivity, the changes are
properly handled, in the right order.
Strengths:
.br
.RS
rsync://[user@]host.xz[:port]/path/to/.task/
.RE
Curl supports several protocols that can transfer data using HTTP, HTTPS and
FTP:
- Always secure
.br
.RS
http://host[:port]/path/to/.task/
- Minimal bandwidth
.br
https://host[:port]/path/to/.task/
- Tolerates connectivity outage
Weaknesses:
.br
ftp://[user@]host[:port]/path/to/.task/
.RE
You can use single quotes to encapsulate user names that contain delimiting
characters like '@', '/' or ':', e.g.:
.br
.RS
ssh://'user@name'@host/
.RE
Remember to escape the quotes on your shell:
.br
.RS
$ task push ftp://\'user@name\':host/
.RE
.SH CONFLICTS
When modifications on the local and remote machine conflict, for example if
both machines change the project name of the same task to different values,
then Taskwarrior automatically selects the most recent change. Thus, there
are no conflicts.
.SH EXAMPLE - Backup on another machine
One very good use of 'push' is to make backup copies of your task database in
another location. Suppose your task database is kept in the usual place, in
the ~/.task directory, and you wanted to make a backup copy in ~/backup. You
would use this command:
.br
.RS
$ task push ~/backup/
.RE
This would copy the files in ~/.task to ~/backup, overwriting the files that
were already in ~/backup. To backup your files to another machine, you could
use:
.br
.RS
$ task push user@host:backup
.RE
This could be improved by setting the
.B push.default.uri
configuration variable and then relying on the default, like this:
.br
.RS
$ task config push.default.uri user@host:backup
.RE
and then you need only run the push command:
.br
.RS
$ task push
.RE
and the default push URI will be used. If you wanted to restore a backup, you
simply use the pull command instead:
.br
.RS
$ task pull user@host:backup
.RE
This can be simplified by setting the
.B pull.default.uri
configuration variable and then relying on the default, like this:
.br
.RS
$ task config pull.default.uri user@host:backup
.RE
Note that pull and push will blindly overwrite the task files without any
merging. Be careful.
.SH EXAMPLE - Keeping two task databases synchronized
The most common synchronization will be to keep two task databases synchronized
on different machines. Here is a full example, including setup that illustrates
this.
Suppose there are two machines, named 'local' and 'remote', for simplicity.
Taskwarrior is installed on both machines. The different machines are
indicated here by the prompt. Suppose Alice enters two tasks on her local
machine:
.br
.RS
local> task add Deliver the new budget proposal due:tuesday
.br
local> task add Set up a meeting with Bob
.RE
Then later adds a task on the remote machine:
.br
.RS
remote> task add Present the budget proposal at the big meeting due:thursday
.RE
Now on the local machine, Alice merges the two task databases:
.br
.RS
local> task merge alice@remote:.task
.br
Would you like to push the changes to 'alice@remote:.task'? Y
.RE
Taskwarrior has combined the two task databases on local, then pushed the
changes back to remote. Now suppose Alice changes the due date for task 1
on remote:
.br
.RS
remote> task 1 due:wednesday
.RE
Now on the local machine, Alice sets up a default URI and autopush:
.br
.RS
local> task config merge.default.uri alice@remote:.task
.br
local> task config merge.autopush yes
.RE
Now Alice can simply run merge to make sure that the new due date is copied to
the local machine:
.br
.RS
local> task merge
.RE
This time the URI is determined automatically, and after the merge the files are
pushed back to the remote machine. In a similar way, the remote machine can
also be configured to merge from the local machine and push back to it. Then it
is just a matter of Alice remembering to merge now and then, from either
machine, to have her data in two (or even more) places.
.SH CONFIGURATION
By setting these configuration variables, it is possible to simplify the
synchronization commands, by relying on the defaults or alias names.
.br
.B merge.autopush=yes|no|ask
.RS
This controls whether the automatic push after a merge is performed, not
performed, or whether the user is asked every time. The default value is 'ask'.
.RE
.br
.B merge.default.uri=<uri>
.RS
Sets a default URI so that just the 'task merge' command be run without the
need to retype the URI every time. You can also use this configuration scheme
to set alias names, e.g. set merge.desktop.uri and run 'task merge desktop'.
.RE
.br
.B push.default.uri=<uri>
.RS
Sets a default URI so that just the 'task push' command be run without the
need to retype the URI every time. You can also use this configuration scheme
to set alias names, e.g. set push.desktop.uri and run 'task push desktop'.
.RE
.br
.B pull.default.uri=<uri>
.RS
Sets a default URI so that just the 'task pull' command be run without the
need to retype the URI every time. You can also use this configuration scheme
to set alias names, e.g. set pull.desktop.uri and run 'task pull desktop'.
.RE
Note that, when using SSH/scp, hostnames will be expanded due to the ssh
configuration file ~/.ssh/config.
.SH EXTERNAL DEPENDENCIES
Depending on the URI protocols used, the utilities 'scp', 'rsync' and 'curl'
must be installed and accessible via the $PATH environment variable.
If you have deleted your ~/.task/undo.data file to save space, you will be
unable to merge. The change transactions stored in the undo.data file are
used for synchronization.
- You need to manage your own server, or gain access to a hosted server.
.SH "CREDITS & COPYRIGHTS"
Copyright (C) 2006 \- 2012 P. Beckingham, F. Hernandez.
The sync capabilities were written by J. Schlatow.
Parts copyright (C) 2010 - 2012 J. Schlatow.
Copyright (C) 2006 \- 2015 P. Beckingham, F. Hernandez.
Taskwarrior is distributed under the MIT license. See
http://www.opensource.org/licenses/mit-license.php for more information.
@@ -363,10 +150,7 @@ http://www.opensource.org/licenses/mit-license.php for more information.
.SH SEE ALSO
.BR task(1),
.BR taskrc(5),
.BR task-faq(5),
.BR task-color(5),
.BR task-tutorial(5),
.BR ssh_config(5)
For more information regarding task, the following may be referenced:
@@ -376,7 +160,7 @@ The official site at
.TP
The official code repository at
<git://tasktools.org/task.git/>
<https://git.tasktools.org/scm/tm/task.git>
.TP
You can contact the project by writing an email to

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
.TH task 1 2012-09-18 "${PACKAGE_STRING}" "User Manuals"
.TH task 1 2015-03-15 "${PACKAGE_STRING}" "User Manuals"
.SH NAME
task \- A command line todo manager.
@@ -83,7 +83,8 @@ as:
task <filter> <command> project:Home
task <filter> <command> +weekend +garden due:tomorrow
task <filter> <command> Description/annotation text
task <filter> <command> /from/to/
task <filter> <command> /from/to/ <- replace first match
task <filter> <command> /from/to/g <- replace all matches
.SH SUBCOMMANDS
@@ -121,16 +122,20 @@ Shows all tasks matching the filter, including parents of recurring tasks.
.TP
.B task <filter> blocked
Shows all tasks matching the filter, that have dependencies on other tasks.
Shows all tasks matching the filter, that are currently blocked by other tasks.
.TP
.B task <filter> blocking
Shows all tasks matching the filter, that block other tasks.
.TP
.B task <filter> burndown.daily
Shows a graphical burndown chart, by day. Note that 'burndown' is an alias to
the 'burndown.daily' report.
Shows a graphical burndown chart, by day.
.TP
.B task <filter> burndown.weekly
Shows a graphical burndown chart, by week.
Shows a graphical burndown chart, by week. Note that 'burndown' is an alias to
the 'burndown.weekly' report.
.TP
.B task <filter> burndown.monthly
@@ -140,8 +145,8 @@ Shows a graphical burndown chart, by month.
.B task calendar [due|<month> <year>|<year>] [y]
Shows a monthly calendar with due tasks marked. Shows one horizontal line of
months. If the 'y' argument is provided, will show at least one complete year.
If a year is provided, such as '2012', then that full year is shown. If both
a month and a year are specified ('6 2012') then the months displayed begin at
If a year is provided, such as '2015', then that full year is shown. If both
a month and a year are specified ('6 2015') then the months displayed begin at
the specified month and year. If the 'due' argument is provided, will show
the starting month of the earliest due task.
@@ -151,9 +156,10 @@ Displays all possible colors, a named sample, or a legend containing all
currently defined colors.
.TP
.B task columns
.B task columns [substring]
Displays all supported columns and formatting styles. Useful when creating
custom reports.
custom reports. If a substring is provided, only matching column names are
shown.
.TP
.B task <filter> completed
@@ -168,7 +174,18 @@ Displays only a count of tasks matching the filter.
Exports all tasks in the JSON format. Redirect the output to a file, if you
wish to save it, or pipe it to another command or script to convert it to
another format. The standard task release comes with a few example scripts,
such as export-yaml.pl.
such as:
export-csv.pl
export-sql.py
export-xml.py
export-yaml.pl
export-html.pl
export-tsv.pl
export-xml.rb
export-ical.pl
export-xml.pl
export-yad.pl
.TP
.B task <filter> ghistory.annual
@@ -198,7 +215,7 @@ Applies the filter then extracts only the task IDs and presents them as
a range, for example: 1-4,12. This is useful as input to a task command,
to achieve this:
task $(task project:Home ids) modify priority:H
task $(task project:Home ids) modify priority:H
This example first gets the IDs for the project:Home filter, then sets
the priority to H for each of those tasks. This can also be achieved directly:
@@ -214,7 +231,7 @@ then extracts only the task UUIDs and presents them as
a comma-separated list. This is useful as input to a task command, to achieve
this:
task $(task project:Home status:completed uuids) modify status:pending
task $(task project:Home status:completed uuids) modify status:pending
This example first gets the UUIDs for the project:Home and status:completed
filters, then makes each of those tasks pending again.
@@ -281,7 +298,8 @@ Shows all recurring tasks matching the filter.
.TP
.B task <filter> unblocked
Shows all tasks that do not have dependencies, matching the filter.
Shows all tasks that are not currently blocked by other tasks, matching the
filter.
.TP
.B task <filter> waiting
@@ -329,29 +347,15 @@ provided for exceptional circumstances. Use carefully.
.TP
.B task import <file> [<file> ...]
Imports tasks in the JSON format. The standard task release comes with a few
example scripts, such as import-yaml.pl.
example scripts, such as:
import-todo.sh.pl
import-yaml.pl
.TP
.B task log <mods>
Adds a new task that is already completed, to the task list.
.TP
.B task merge <URL>
Merges two task databases by comparing the modifications that are stored in the
undo.data files. The location of the second undo.data file must be passed on as
argument. URL may have the following syntaxes:
ssh://[user@]host.xz[:port]/path/to/.task/
rsync://[user@]host.xz[:port]/path/to/.task/
[user@]host.xz:path/to/.task/
/path/to/local/.task/
You can set aliases for frequently used URLs in the .taskrc. Further
documentation can be found in the task-sync(5) man page.
.TP
.B task <filter> modify <mods>
Modifies the existing task with provided information.
@@ -360,17 +364,6 @@ Modifies the existing task with provided information.
.B task <filter> prepend <mods>
Prepends description text to an existing task.
.TP
.B task pull <URL>
Overwrites the task database with those files found at the URL.
(See 'merge' command for valid URL syntax.)
.TP
.B task push <URL>
Pushes the task database to a remote location for distributing the
changes made by the merge command.
(See 'merge' command for valid URL syntax.)
.TP
.B task <filter> start <mods>
Marks the specified tasks as started.
@@ -403,6 +396,46 @@ Finally, this command removes any 'name=...' entry from the .taskrc file:
task config name
.TP
.B task context <name>
Sets the currectly active context. See the CONTEXT section.
Example:
task context work
.TP
.B task context delete <name>
Deletes the context with the name <name>. If the context being deleted is currently
set as active, it will be unset.
Example:
task context delete work
.TP
.B task context define <name> <filter>
Defines a new context with name <name> and definition <filter>. This command
does not affect the currently set context, just adds a new context definition.
Examples:
task context define work project:Work
task context define home project:Home or +home
task context define superurgent due:today and +urgent
.TP
.B task context list
Outputs a list of available contexts along with their definitions.
.TP
.B task context none
Unsets the currently active context, if any was set.
.TP
.B task context show
Shows the currently active context, along with its definition.
.TP
.B task diagnostics
Shows diagnostic information, of the kind needed when reporting a problem.
@@ -431,10 +464,6 @@ Displays the Taskwarrior logo.
Lists all supported reports. This includes the built-in reports, and any custom
reports you have defined.
.TP
.B task shell
Launches an interactive shell with all the task commands available.
.TP
.B task show [all | substring]
Shows all the current settings. If a
@@ -451,7 +480,9 @@ Shows a report of aggregated task status by project.
.TP
.B task <filter> tags
Show a list of all tags used. Any special tags used are highlighted.
Show a list of all tags used. Any special tags used are highlighted. Note that
virtual tags are not listed - they don't really exist, and are just a convenient
notation for other task metadata.
.TP
.B task timesheet [weeks]
@@ -467,6 +498,10 @@ Shows the taskwarrior version number.
.SH HELPER SUBCOMMANDS
.TP
.B task _aliases
Generates a list of all aliases, for autocompletion purposes.
.TP
.B task _columns
Displays only a list of supported columns.
@@ -479,10 +514,19 @@ Generates a list of all commands, for autocompletion purposes.
.B task _config
Lists all supported configuration variables, for completion purposes.
.TP
.B task _context
Lists all available context variables, for completion purposes.
.TP
.B task <filter> _ids
Shows only the IDs of matching tasks, in the form of a list.
.TP
.B task _show
Shows the combined defaults and overrides of the configuration settings, for use
by third-party applications.
.TP
.B task <filter> _uuids
Shows only the UUIDs of matching tasks among all tasks (even deleted and
@@ -520,6 +564,27 @@ Shows the IDs and descriptions of matching tasks.
.B task <filter> _zshuuids
Shows the UUIDs and descriptions of matching tasks.
.TP
.B task _get <DOM> [<DOM> ...]
Accesses and displays the DOM reference(s). Used to extract individual values
from tasks, or the system. Supported DOM references are:
rc.<name>
context.program
context.args
context.width
context.height
system.version
system.os
<id>.<attribute>
<uuid>.<attribute>
Note that the 'rc.<name>' reference may need to be escaped using '--' to prevent
the reference from being interpreted as an override.
Note that if the DOM reference is not valid, or the reference evaluates to a
missing value, the command exits with 1.
.SH ATTRIBUTES AND METADATA
.TP
@@ -547,6 +612,38 @@ exempt from all color rules. The supported special tags are:
+nocal This task will not appear on the calendar
+next Elevates task so it appears on 'next' report
There are also virtual tags, which represent task metadata in tag form. These
tags do not exist, but can be used to filter tasks. The supported virtual tags
are:
BLOCKED Matches if the task is blocked
UNBLOCKED Matches if the task is not blocked
BLOCKING Matches if the task is blocking
YESTERDAY Matches if the task was due sometime yesterday
DUE Matches if the task is due
DUETODAY Matches if the task is due today
TODAY Matches if the task is due today
TOMORROW Matches if the task is due sometime tomorrow
WEEK Matches if the task is due this week
MONTH Matches if the task is due this month
YEAR Matches if the task is due this year
OVERDUE Matches if the task is overdue
ACTIVE Matches if the task is started
SCHEDULED Matches if the task is scheduled
READY Matches if the task is actionable
PARENT Matches if the task is a parent
CHILD Matches if the task has a parent
UNTIL Matches if the task expires
WAITING Matches if the task is waiting
ANNOTATED Matches if the task has annotations
TAGGED Matches if the task has tags
PENDING Matches if the task has pending status
COMPLETED Matches if the task has completed status
DELETED Matches if the task has deleted status
You can use +BLOCKED to filter blocked tasks, or -BLOCKED for unblocked tasks.
Similarly, -BLOCKED is equivalent to +UNBLOCKED.
.TP
.B project:<project-name>
Specifies the project to which a task is related to.
@@ -571,14 +668,6 @@ Specifies the date after which a task can be accomplished.
.B until:<expiration date of task>
Specifies the expiration date of a task, after which it will be deleted.
.TP
.B fg:<color-spec>
Specifies foreground color. Deprecated.
.TP
.B bg:<color-spec>
Specifies background color. Deprecated.
.TP
.B limit:<number-of-rows>
Specifies the desired number of tasks a report should show, if a positive
@@ -792,10 +881,12 @@ task ... due:7/14/2008
.TP
ISO-8601
task ... due:20120314T223000Z
task ... due:20130314T223000Z
.TP
Relative wording
task ... due:now
.br
task ... due:today
.br
task ... due:yesterday
@@ -813,7 +904,7 @@ task ... due:1day
task ... due:9hrs
.TP
Start of (work) week (Monday), calendar week (Sunday or Monday), month, quarter and year
Start of next (work) week (Monday), calendar week (Sunday or Monday), month, quarter and year
.br
task ... due:sow
.br
@@ -828,7 +919,7 @@ task ... due:soq
task ... due:soy
.TP
End of (work) week (Friday), calendar week (Saturday or Sunday), month, quarter and year
End of current (work) week (Friday), calendar week (Saturday or Sunday), month, quarter and year
.br
task ... due:eow
.br
@@ -854,6 +945,22 @@ This sets the wait date to 1/18/2038.
.TP
Next occurring weekday
task ... due:fri
.TP
Predictable holidays
task ... due:goodfriday
.br
task ... due:easter
.br
task ... due:eastermonday
.br
task ... due:ascension
.br
task ... due:pentecost
.br
task ... due:midsommar
.br
task ... due:midsommarafton
.RE
.SS FREQUENCIES
@@ -899,6 +1006,66 @@ biannual, biyearly, 2yr
Every two years.
.RE
.SH CONTEXT
Context is a user-defined filter, which is automatically applied to all commands
that filter the task list. In particular, any report command will have its
result affected by the current active context.
$ task list
ID Age Project Description Urg
1 2d Sport Run 5 miles 1.42
2 1d Home Clean the dishes 1.14
$ task context home
Context 'home' set. Use 'task context none' to remove.
$ task list
ID Age Project Description Urg
2 1d Home Clean the dishes 1.14
Context 'home' set. Use 'task context none' to remove.
As seen in the example above, context is applied by specifying its name to the
"context" command. To change the currently applied context, just pass the
new context's name to the 'context' command.
To unset any context, use the 'none' subcommand.
$ task context none
Context unset.
$ task list
ID Age Project Description Urg
1 2d Sport Run 5 miles 1.42
2 1d Home Clean the dishes 1.14
Context can be defined using the 'define' subcommand, specifying both the name
of the new context, and it's assigned filter.
$ task context define home
Are you sure you want to add 'context.home' with a value of 'project:Home'? (yes/no) yes
Context 'home' successfully defined.
To remove the definition, use the 'delete' subcommand.
$ task context delete home
Are you sure you want to remove 'context.home'? (yes/no) yes
Context 'home' successfully undefined.
To check what is the currently active context, use the 'show' subcommand.
$ task context show
Context 'home' with filter 'project:Home' is currently applied.
Contexts can store arbitrarily complex filters.
$ task context define family project:Family or +paul or +nancy
Are you sure you want to add 'context.home' with a value of 'project:Family or +paul or +nancy'? (yes/no) yes
Context 'family' successfully defined.
Contexts are permanent, and the currently set context name is stored in the
"context" configuration variable. The context definition is stored in the
"context.<name>" configuration variable.
.SH COMMAND ABBREVIATION
All taskwarrior commands may be abbreviated as long as a unique prefix is used,
for example:
@@ -974,7 +1141,8 @@ Taskwarrior stores its configuration in a file in the user's home directory:
.B task rc:<path-to-alternate-file> ...
Specifies an alternate configuration file.
.TP TASKRC=/tmp/.taskrc task ..
.TP
.B TASKRC=/tmp/.taskrc task ..
The environment variable overrides the default and the command line
specification of the .taskrc file.
@@ -990,20 +1158,14 @@ the 'data.location' configuration setting of the task data directory.
.SH MORE EXAMPLES
For examples please see the task tutorial man page at
For examples please see the online documentation starting at
.RS
man task-tutorial
<http://taskwarrior.org/docs>
.RE
or the online documentation starting at
.RS
<http://taskwarrior.org/projects/taskwarrior/wiki>
.RE
Note that the online documentation is more detailed and more current than this
man page.
Note that the online documentation can be more detailed and more current than
this man page.
.SH FILES
@@ -1028,18 +1190,16 @@ The file that contains the completed ("done") tasks.
.TP
~/.task/undo.data
The file that contains information needed by the "undo" and "merge" commands.
The file that contains information needed by the "undo" command.
.SH "CREDITS & COPYRIGHTS"
Copyright (C) 2006 \- 2012 P. Beckingham, F. Hernandez.
Copyright (C) 2006 \- 2015 P. Beckingham, F. Hernandez.
Taskwarrior is distributed under the MIT license. See
http://www.opensource.org/licenses/mit-license.php for more information.
.SH SEE ALSO
.BR taskrc(5),
.BR task-tutorial(5),
.BR task-faq(5),
.BR task-color(5),
.BR task-sync(5)
@@ -1051,7 +1211,7 @@ The official site at
.TP
The official code repository at
<git://tasktools.org/task.git/>
<https://git.tasktools.org/scm/tm/task.git>
.TP
You can contact the project by emailing

File diff suppressed because it is too large Load Diff

View File

@@ -1,15 +1,24 @@
Themes
To generate samples of themes, first execute the 'run' script to generate the
To generate samples of themes, first execute the 'setup' script to generate the
sample data. Note that this data may need to be tweaked to include qualities
that need to be illustrated in theme sample.
Then edit the 'rc' file to include the desired theme file.
Using a dark-background terminal (black recommended), run the following:
Then run 'per' once per theme, and capture the display.
run.dark
Note that this will require that the terminal window be switched between a black
and white background to properly show the light and dark themes.
Using a light-background terminal, run the following:
run.light
Using a solarized dark terminal, run the following:
run.solar.dark
Using a solarized light terminal, run the following:
run.solar.light
Note that for the solarized themes, the terminal color palette needs to be set
to specific colors.

View File

@@ -1,8 +0,0 @@
echo '$ task list'
task rc:rc list | grep -v alternate
echo '$ task summary'
task rc:rc summary | grep -v alternate
echo '$ task ghistory'
task rc:rc ghistory | grep -v alternate
echo '$ task calendar'
task rc:rc calendar | grep -v alternate

View File

@@ -1,47 +0,0 @@
rm pending.data completed.data undo.data rc
cat <<EOF >>rc
data.location=.
confirmation=off
_forcecolor=on
#include ~/task-2.0.0.git/doc/rc/light-16.theme
#include ~/task-2.0.0.git/doc/rc/dark-16.theme
#include ~/task-2.0.0.git/doc/rc/light-256.theme
#include ~/task-2.0.0.git/doc/rc/dark-256.theme
#include ~/task-2.0.0.git/doc/rc/dark-gray-256.theme
#include ~/task-2.0.0.git/doc/rc/dark-red-256.theme
#include ~/task-2.0.0.git/doc/rc/dark-green-256.theme
#include ~/task-2.0.0.git/doc/rc/dark-blue-256.theme
include ~/task-2.0.0.git/doc/rc/dark-violets-256.theme
#include ~/task-2.0.0.git/doc/rc/dark-yellow-green.theme
#include ~/task-2.0.0.git/doc/rc/solarized-dark-256.theme
#include ~/task-2.0.0.git/doc/rc/solarized-light-256.theme
EOF
task rc:rc add Ordinary task
task rc:rc add Started task
task rc:rc 2 start
task rc:rc add High priority task pri:H
task rc:rc add Medium priority task pri:M
task rc:rc add Low priority task pri:L
task rc:rc add Household task project:Home
task rc:rc add Outdoor task project:Garden
task rc:rc add Overdue task due:yesterday
task rc:rc add Due task due:tomorrow
task rc:rc add Not yet due tasks due:2/14/2012
task rc:rc add Recurring task due:eom recur:monthly
task rc:rc add Tagged task +tag1
task rc:rc add Blocking task
task rc:rc add Dependent task
task rc:rc log Completed_1 project:Garden
task rc:rc log Completed_2 project:Garden
task rc:rc log Completed_3 project:Home
task rc:rc add Deleted_1
task rc:rc 14 mod depends:13
task rc:rc 15 delete

36
doc/misc/themes/run.dark Executable file
View File

@@ -0,0 +1,36 @@
#!/bin/bash
for theme in $PWD/../../rc/dark-16.theme \
$PWD/../../rc/dark-256.theme \
$PWD/../../rc/dark-blue-256.theme \
$PWD/../../rc/dark-gray-256.theme \
$PWD/../../rc/dark-gray-blue-256.theme \
$PWD/../../rc/dark-green-256.theme \
$PWD/../../rc/dark-red-256.theme \
$PWD/../../rc/dark-violets-256.theme \
$PWD/../../rc/dark-yellow-green.theme
do
cat <<EOF >x
data.location=.
confirmation=off
detection=off
_forcecolor=on
default.height=24
verbose=off
include $theme
EOF
echo "--- $theme -----------------------------------------------------"
echo '$ task color legend'
task rc:x color legend
echo '$ task list'
task rc:x list
echo '$ task summary'
task rc:x summary
echo '$ task ghistory'
task rc:x ghistory
echo '$ task calendar'
task rc:x calendar
echo '$ task burndown.daily'
task rc:x burndown.daily
done

24
doc/misc/themes/run.default Executable file
View File

@@ -0,0 +1,24 @@
#!/bin/bash
cat <<EOF >x
data.location=.
confirmation=off
detection=off
_forcecolor=on
default.height=24
verbose=off
EOF
echo "--- DEFAULT -----------------------------------------------------"
echo '$ task color legend'
task rc:x color legend
echo '$ task list'
task rc:x list
echo '$ task summary'
task rc:x summary
echo '$ task ghistory'
task rc:x ghistory
echo '$ task calendar'
task rc:x calendar
echo '$ task burndown.daily'
task rc:x burndown.daily

29
doc/misc/themes/run.light Executable file
View File

@@ -0,0 +1,29 @@
#!/bin/bash
for theme in $PWD/../../rc/light-16.theme \
$PWD/../../rc/light-256.theme
do
cat <<EOF >x
data.location=.
confirmation=off
detection=off
_forcecolor=on
default.height=24
verbose=off
include $theme
EOF
echo "--- $theme -----------------------------------------------------"
echo '$ task color legend'
task rc:x color legend
echo '$ task list'
task rc:x list
echo '$ task summary'
task rc:x summary
echo '$ task ghistory'
task rc:x ghistory
echo '$ task calendar'
task rc:x calendar
echo '$ task burndown.daily'
task rc:x burndown.daily
done

28
doc/misc/themes/run.solar.dark Executable file
View File

@@ -0,0 +1,28 @@
#!/bin/bash
for theme in $PWD/../../rc/solarized-dark-256.theme
do
cat <<EOF >x
data.location=.
confirmation=off
detection=off
_forcecolor=on
default.height=24
verbose=off
include $theme
EOF
echo "--- $theme -----------------------------------------------------"
echo '$ task color legend'
task rc:x color legend
echo '$ task list'
task rc:x list
echo '$ task summary'
task rc:x summary
echo '$ task ghistory'
task rc:x ghistory
echo '$ task calendar'
task rc:x calendar
echo '$ task burndown.daily'
task rc:x burndown.daily
done

28
doc/misc/themes/run.solar.light Executable file
View File

@@ -0,0 +1,28 @@
#!/bin/bash
for theme in $PWD/../../rc/solarized-light-256.theme
do
cat <<EOF >x
data.location=.
confirmation=off
detection=off
_forcecolor=on
default.height=24
verbose=off
include $theme
EOF
echo "--- $theme -----------------------------------------------------"
echo '$ task color legend'
task rc:x color legend
echo '$ task list'
task rc:x list
echo '$ task summary'
task rc:x summary
echo '$ task ghistory'
task rc:x ghistory
echo '$ task calendar'
task rc:x calendar
echo '$ task burndown.daily'
task rc:x burndown.daily
done

33
doc/misc/themes/setup Executable file
View File

@@ -0,0 +1,33 @@
rm pending.data completed.data undo.data x
cat <<EOF >>x
data.location=.
confirmation=off
_forcecolor=on
EOF
task rc:x add Ordinary task
task rc:x add Started task
task rc:x 2 start
task rc:x add High priority task pri:H
task rc:x add Medium priority task pri:M
task rc:x add Low priority task pri:L
task rc:x add Household task project:Home
task rc:x add Outdoor task project:Garden
task rc:x add Overdue task due:yesterday
task rc:x add Due task due:tomorrow
task rc:x add Not yet due tasks due:eom
task rc:x add Recurring task due:eom recur:monthly
task rc:x add Tagged task +tag1
task rc:x add Blocking task
task rc:x add Dependent task
task rc:x log Completed_1 project:Garden
task rc:x log Completed_2 project:Garden
task rc:x log Completed_3 project:Home
task rc:x add Deleted_1
task rc:x 14 mod depends:13
task rc:x 15 delete

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,43 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Active tasks ----------------------------------------------
task 2 start I'm selecting a venue, so let's indicate that task 2 is
task list active by starting it. See how active tasks are affected
by the color rules.
task active There is an active report that shows only active tasks, and
task 2 stop you can mark any active task as inactive, by stopping it.
task config journal.time on (y) There is a journalling feature that records the start and
task config dateformat.annotation 'Y/m/d H:N' (y)
task 2 start stop times as annotations. We'll turn that on, and add
task list venue the time to the annotation date format.
task 2 stop
task list venue
---------------------------------------- End -------------------------------------------------------
task list
task 2 start
task 2 info
sleep 4
task 2 info
task 2 stop
task 2 start
sleep 2
task 2 stop
task 2 info

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,24 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Aliases ---------------------------------------------------
task config alias.zzz list You can create aliases to effectively rename commands.
task zzz
task z You can abbreviate those, too.
---------------------------------------- End -------------------------------------------------------
Complex aliases, including fragments that can be used in other contexts.
task config pf project:foo
task list pf

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,27 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Annotations -----------------------------------------------
task 1 annotate the 12th looks good Annotations are little notes that can be added to a task.
task 1 annotate or the 13th There can be any number, and each has a time stamp.
task list
task list rc.annotations:full You can choose to display annotations in different ways.
task list rc.annotations:sparse
task list rc.annotations:none
task 1 denotate 13th Annotations can be removed by providing a matching pattern.
task list
---------------------------------------- End -------------------------------------------------------
Remove rc.annotations.*
Illustrate different annotation formats.
Searching in annotations

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,29 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Calendar --------------------------------------------------
task calendar When tasks have due dates, you can see them on the calendar.
vi ~/.taskrc
# include /usr/local/share/doc/task/rc/holidays-US.rc
task calendar
Taskwarrior provides sample holiday files. You can create
your own, or use one of the samples to show holidays on the
calendar.
task cal 2010 You can see the whole year.
task rc.calendar.details:full cal You can see the tasks with due dates also.
task rc.calendar.holidays:full cal And you can see the holidays.
---------------------------------------- End -------------------------------------------------------
Include 'ln -s `which task` cal' trick

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,27 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Charts ----------------------------------------------------
task history The history report gives monthly totals of tasks added,
task history.annual completed and deleted. There is also an annual version.
task ghistory There is a graphical monthly...
task ghistory.annual and annual version.
task summary There is a project summary report that shows progress in
all the projects.
---------------------------------------- End -------------------------------------------------------
burndown.m
burndown.w
burndown.d

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,70 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Color -----------------------------------------------------
task config color on All the examples so far have been shown with color turned
task list off. How about some color?
What you see is the result of a set of color rules being
applied to the tasks. There is a hierarchy of color rules
that colorize a task based on the metadata
task 1 "bg:on red" Here is an example of an explicit override to the color
task list rules where a specific task is given a red background.
task 1 bg: Note that the quotes are necessary, otherwise the shell
will consider "bg:on" and "red" to be separate arugments.
task color Taskwarrior supports 256 colors on certain terminal
emulators, and this shows the range of colors available.
task color white on red This is how to show a color sample.
task color legend Or samples of all the active color settings.
Themes are a simple way to use coordinated color schemes
so by including a color theme into the configuration file,
you can see some striking effects.
A blue theme.
# include /usr/local/share/doc/task/rc/dark-blue-256.theme
vi ~/.taskrc
task color legend
task list
A red theme.
# include /usr/local/share/doc/task/rc/dark-red-256.theme
vi ~/.taskrc
task color legend
task list
A general dark theme.
# include /usr/local/share/doc/task/rc/dark-256.theme
vi ~/.taskrc
task list
Here is are two color rules that specify a dark blue
background for all tasks that are part of the 'party'
project, and uses bold to identify any tasks with the
keyword 'invitations' in the description.
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
man task-color There is a man page with a writeup of all the color
capabilities.
---------------------------------------- End -------------------------------------------------------
Remove bg: and fg: because they are deprecated.
Demonstrate different themes.
More color rules.
Mention rc.color.precedence.

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,40 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Configuration ---------------------------------------------
task show There is a 'show' command, that is used to display the
active configuration. There are hundreds of settings that
can be changed, and every one has a sensible default.
man taskrc If you want a complete list of all the settings and their
meanings, read the man page.
task config answer 42 The 'config' command is used to modify the settings, and in
this case the configuration variable 'answer' is given the
value of 42.
task show answer The 'show' command indicates that the value was changed,
task config answer and also that the variable is unrecognized. The show
command performs a detailed check on your configuration, and
alerts you to several kinds of problem. The config command
can also remove a value.
task rc.report.list.sort=description+ list
A very powerful feature is the ability to override the
configuration variables temporarily. Here I am requesting
an ascending sort on the description field only.
---------------------------------------- End -------------------------------------------------------
Mention minimal asspect of ~/.taskrc
Mention rc override of file
Mention rc overrides of values

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,37 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Custom Report ---------------------------------------------
You can even define your own custom report. Let's quickly
create a custom report - we'll call it foo - and I can
choose from a long list of fields to include in the report,
but I want to see the ID, the date when I entered the task,
and the description. I can specify the labels for those
columns, the sort order of the report, and I can filter.
cat >> ~/.taskrc
report.foo.description=My own report
report.foo.columns=id,entry,description
report.foo.labels=ID,Entered,Description
report.foo.sort=entry+,description+
report.foo.filter=status:pending
task help | grep foo Custom reports also show up on the help output.
task show report.foo I can inspect the configuration.
task foo And they can be run just like the other reports.
---------------------------------------- End -------------------------------------------------------
Mention all reports are custom reports.
Show 'reports' command

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,28 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Defaults --------------------------------------------------
task config default.command list There is a default command, which can be set to anything,
task in this case it is set to the 'list' report. Then running
taskwarrior with no command name runs the default command.
task config default.priority H I can also specify a default priority and project, which
task config default.project Work means that any tasks added will use them, unless an
task add New task alternative is provided.
task list
task undo Let's just revert those changes, to clean up.
task config default.priority
task config default.project
---------------------------------------- End -------------------------------------------------------

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,47 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Dependencies ----------------------------------------------
task list pro:party Taskwarrior supports dependencies. Let's take a look at the
party planning tasks, and assign dependencies.
task 3 depends:6 Let's see. I can't mail invitations until they are printed.
task 6 dep:5 I can't print them until I design them.
task 2 dep:1 I need to select a weekend before a location.
task 5 dep:1,2 Design depends on location and weekend.
task 4 dep:1 And the caterer needs to know where.
task long pro:party All my tasks are blocked except task 1. That makes sense.
task 5 dep:-1 Hmm, that double dependency isn't right.
task blocked Here are the blocked tasks.
task unblocked and the opposite, the unblocked tasks.
task 1 info If we look at task 1 closely, we can see that it is blocking
task 2 info 2 and 4. And if we look at task 2, we see that it is
blocked by 1, and blocking 5.
This is called a dependency chain, which is a string of tasks
that are all connected not only by their project, but by
dependencies.
Now we understand that task 1 should be done first, but you
may still violate the laws of physics if you wish. Let's
complete task 2 and see what happens.
task 2 done (y) Taskwarrior realizes what you are doing, and offers to fix
task 1 info the dependency chain to reflect what you have done.
---------------------------------------- End -------------------------------------------------------
Show color rules.

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,31 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Due dates -------------------------------------------------
task 1 due:7/31/2010 Due dates can be specified as dates...
task 1 due:2wks as some distance into the future...
task 1 due:-2wks or past...
task 1 due:eom or by mnemonic (end of month)...
task 2 due:8th or by ordinal...
task 2 due:sunday or by day of week...
task 5 due:eow
task list Some of these dates are in the past, so now you see there
task overdue are overdue tasks. Due dates have different colors for
due, imminent, today and overdue values.
task rc.dateformat.report:Y-M-DTH:N:SZ list
You can also choose the format - for input and output.
---------------------------------------- End -------------------------------------------------------
Show inputting date+time
Show alternate rc.due

View File

@@ -1,30 +0,0 @@
Calendar trick
ln -s `which task` ./cal
./cal
Synch
push
pull
merge
Logo
Version
Verbosity
Formats
Setup
First time use
Where the files are
Using the man pages
http://tasktools.org/latest
Next Report
Usage
Configuration
Urgency
+next special tag

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,55 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Advanced Filters ------------------------------------------
task list Filters are a very powerful tool. First here is an
task list invit unfiltered list, which shows all tasks. Now again, but with
the text 'invit', which acts as a filter on the description
field.
task list description.contains:invit This is the equivalent form using attribute modifiers. In
this example we are filtering on descriptions that contain
the word fragment. Here we are using the 'contains'
modifier, but there are many others.
task list desc.word:the All tasks containing the whole word 'the'. See how
annotations are also searched?
task list desc.noword:invitations Here is a list of all tasks that do not contain the whole
word 'invitations'.
task list pro:party Here list all tasks in the 'party' project.
task list pro.is:party And the full equivalent.
task list pro.not:party Here list tasks that are not in the 'party' project. I
could have also used 'isnt' here - there are several
synonyms for modifiers, so that the filter can be written
so that it reads naturally.
task list pro:party pri.over:L Here the 'over' modifier is filtering on priorities that
sort higher than 'Low', and also filtering on the 'party'
project. There are two terms in this filter.
task list pro:party limit:2 Same again, but only show me the first two tasks.
task list limit:page Now all tasks, but just show the first page of tasks. I
don't have a page full of tasks here, but you get the idea.
task all status:pending Now you can see how some of the built-in reports work. The
'list' report is just all tasks, filtered so that only the
pending tasks are shown.
task all status:waiting The 'waiting' report is similarly defined.
---------------------------------------- End -------------------------------------------------------
Show boolean combinations
Show regexes
Show substitutions

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,32 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Help ------------------------------------------------------
task help You'll find a quick reference page built in, with the 'help'
man task command, or perhaps you'll want to take a look at the several
man taskrc man pages installed. This demo has superficially shown
man task-color many features which have more capability and depth which you
can find in the man pages, and online.
man task-tutorial This screencast is actually just a recording of me going
through the tutorial.
man task-faq Some frequently asked questions are answered here.
man task-sync You've patiently watched this whole movie, so here's your
reward - taskwarrior 1.9.3 has network synchronization
features, for sharing tasks across computers. But this is
just a teaser - synch will be shown in the next movie.
---------------------------------------- End -------------------------------------------------------
Replace spoken track completely.

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,35 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Import/Export ---------------------------------------------
task export.csv You can export your tasks. Here you see all tasks being
exported in CSV format.
task export.csv venue Let's just export one task in CSV format...
task export.vcalendar venue Or in VCalendar format...
task export.yaml venue Or YAML.
cat file.text I can also import. Here I am importing simple lines of
task import file.text text. Taskwarrior recognizes the format and confirms.
cat file.yaml Here is a YAML example. Taskwarrior can read several
task import file.yaml formats, including old versions of its data files. Using
YAML, you can round-trip the data without loss.
task new limit:2 Here are the imported tasks.
---------------------------------------- End -------------------------------------------------------
Show new export scripts
Show same script in multiple languages
Show new import scripts
Explain that scripts are outside the core product

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,24 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Info ------------------------------------------------------
task 1 info During that undo operation, taskwarrior displayed metadata
task 1 that is associated with the task. You can display this
with the info command, and its shortcut.
task stats There are also statistics that taskwarrior gathers, which
I can display.
---------------------------------------- End -------------------------------------------------------
Show multiple info reports
Show info using UUID

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,25 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Intro -----------------------------------------------------
http://taskwarrior.org Hello, and welcome to this taskwarrior version 1.9.3 demo.
I'm going to show you over 100 features, so don't blink, or
you'll miss some. Even experienced users are going to learn
*something*.
I will start off with basic usage, and proceed to more
sophisticated commands as we go along.
---------------------------------------- End -------------------------------------------------------
Include first time use
Include 30-second tutorial

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,48 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Modifications ---------------------------------------------
task 7 Pay rent at the end of the month Task 7 is not worded correctly, so I can modify that by
specifying a task ID and a new description. This is also
considered a bulk change, and so requires confirmation.
task add music We'll need music.
task 8 prepend Select some I can prepend to that.
task 8 append for after dinner I can append to that.
task list
task edit I can also go straight into an editor and modify anything.
task add Hire a band? <--- Sometimes the command will confuse the shell. In this case,
what would happen if there was a file named 'bands' in the
current directory? The shell would expand that wildcard,
so to avoid that, you can...
task add Hire a band\? <--- escape the wildcard...
task add "Hire a band?" <--- or quote the whole description...
task add -- Hire a band\? +dj You can also use the minus minus operator which tells
taskwarrior to stop being clever and interpret the rest
of the arguments as a task description. Otherwise, that
+dj would be interpreted as a tag.
task undo We don't need a band, so the easiest way to get rid of that
task is to undo the last change. Taskwarrior has a
complete undo stack, so you can undo all the way back to
the beginning.
task 1 delete The undo operation gets rid of the task completely, but I
task undo could also have just deleted the task, then the deletion
itself would be tracked, and also undoable.
---------------------------------------- End -------------------------------------------------------
Show more shell escapes.
show 'modify' command.

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,21 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Priorities ------------------------------------------------
task 1-3,5 priority:H Priorities are another way to organize tasks. You can use
task list priority values of high, medium and low, and taskwarrior
knows these as H, M or L.
task 3 pri: You can remove priorities by specifying a blank value.
---------------------------------------- End -------------------------------------------------------

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,36 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Projects --------------------------------------------------
task add Pay teh rent on teh 31st Remember to pay the rent at the end of the month. Oh,
task 7 /teh/teh/g that was sloppy, but it can be fixed with a global
task list substitution.
task 7 project:home We can now use projects to separate home chores from the
party preparation. Let's assign that last task to the
'home' project. Note that a task may only belong to one
project.
task 1-6 project:party And we will put those first six tasks in the 'party'
project. See how we specify a range of tasks? Taskwarrior
will want to confirm bulk changes like this, but we'll
accept all changes here.
task projects Now that we have multiple projects, as shown here, we can
task list project:home use project as a filter for the list report. You can see
task li pro:par again that we can abbreviate 'list' and 'project', but when
we abbreviate 'party', we are filtering all the projects
that begin with 'par'.
---------------------------------------- End -------------------------------------------------------
Show project change stats.

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,40 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Recurrence ------------------------------------------------
task 7 info Remember the task we added to pay the rent? We're going to
task 7 due:eom recur:monthly need to do that every month. Recurring tasks allow us to
task 7 set up a single task that keeps coming back, just as you'd
expect.
task 7 until:eoy You can also limit the extent of the recurrence. Let's make
sure the task doesn't recur after the lease ends.
task recurring And there is a recurring report that shows you only the
recurring tasks.
To illustrate a point, let's set up a recurring annual task
as a reminder to pay taxes, and put the due date in the past.
This will cause task to fill in the gaps, and create a series
of severely overdue tasks.
task add Pay taxes due:4/15/2007 recur:yearly
task long
task 11 delete # y y Deletions to recurring tasks can be escalated to include all
task list the recurrences of a task.
---------------------------------------- End -------------------------------------------------------
Explain parent/child.
Show rc.recurrence.limit.
Show propagated changes.

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,33 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Reports ---------------------------------------------------
task minimal Taskwarrior has a good many reports. There is the bare minimum.
task ls The simple.
task list The standard.
task long The kitchen sink.
task all The packrat.
task completed Nostalgia.
task recurring Groundhog day.
task waiting Surprises.
task blocked Wedged.
task unblocked Unencumbered.
task oldest Ancient history.
task newest Contemporary.
task timesheet Corporate.
task next And "what should I work on next?" This one can be useful
because it pulls a few of the highest priority tasks from
all the projects. It's the report we should all be using.
---------------------------------------- End -------------------------------------------------------
New 'reports' command.

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,22 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Shell -----------------------------------------------------
task shell You can use the shell command to create a more immersive
task> projects environment. Any task command you run outside the shell
task> tags can also be run inside the shell, without the need to prefix
task> list every command with "task".
task> quit
---------------------------------------- End -------------------------------------------------------
Show use of rlwrap.

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,46 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Tags ------------------------------------------------------
task list A task may only have one project, but it may have any number
of tags, which are just single words associated with the task.
task 3,5,6 +mall I can go to the print shop at the mall, and do all the
invitation tasks, so let's tag them all.
task long The long report shows tags, too,
task list +mall and I can use tags as a filter to any report too.
task 3 -mall I made a mistake - I can't mail out the invitations at the
mall, so let's remove that tag.
---------------------------------------- Special Tags ----------------------------------------------
task 6 +nocolor You've seen tags, but there are also 'special tags' that
task list have effects on individual tasks. The 'nocolor' special
tag causes the color rules to be bypassed.
task tags Special tags are highlighted by the 'tags' command.
task 6 -nocolor There are others - the 'nonag' special tag prevents the
generation of nag messages when you work on low priority
tasks when there are more important ones.
The 'nocal' special tag will prevent a task from appearing
on the calendar.
---------------------------------------- End -------------------------------------------------------
Show 'nocal'
Show 'nonag'
Show 'next'
Show how adding a special tag generates feedback.

View File

@@ -1,533 +0,0 @@
#! /bin/bash
rm -f /Users/paul/.task/pending.data /Users/paul/.task/completed.data /Users/paul/.task/undo.data
echo 'data.location=~/.task' > /Users/paul/.taskrc
echo 'color=off' >> /Users/paul/.taskrc
echo 'color.summary.background=on gray3' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-red-256.theme' >> /Users/paul/.taskrc
echo '#include /usr/local/share/doc/task/rc/dark-256.theme' >> /Users/paul/.taskrc
# 1 Intro
# 2 Basic usage
echo Basic usage --------------------------------------------------------------
echo $ task add Select a free weekend in November
task add Select a free weekend in November
echo $ task add Select and book a venue
task add Select and book a venue
echo $ task add Come up with a guest list
task add Come up with a guest list
echo $ task add Mail invitations
task add Mail invitations
echo $ task add Select a caterer
task add Select a caterer
echo $ task list
task list
echo $ task log Order a special cake
task log Order a special cake
echo $ task 4 duplicate /Mail/Design/
task 4 duplicate /Mail/Design/
echo $ task 4 duplicate /Mail/Print/
task 4 duplicate /Mail/Print/
echo $ task list
task list
echo $ task 3 done
task 3 done
echo $ task list
task list
# 3 Projects
echo Projects --------------------------------------------------------------
echo $ task add Pay teh rent on teh 31st
task add Pay teh rent on teh 31st
echo $ task 7 /teh/the/g
task 7 /teh/the/g
echo $ task list
task list
echo $ task 7 project:home
task 7 project:home
echo $ task 1-6 project:party
echo 'All' | task 1-6 project:party
echo $ task projects
task projects
echo $ task list project:home
task list project:home
echo $ task li pro:par
task li pro:par
# 4 Priorities
echo Priorities --------------------------------------------------------------
echo $ task 1-3,5 priority:H
echo 'All' | task 1-3,5 priority:H
echo $ task list
task list
echo $ task 3 pri:
task 3 pri:
# 5 Tags
echo Tags --------------------------------------------------------------
echo $ task list
task list
echo $ task 3,5,6 +mall
echo 'All' | task 3,5,6 +mall
echo $ task long
task long
echo $ task list +mall
task list +mall
echo $ task 3 -mall
task 3 -mall
# 6 Modifications
echo Modifications --------------------------------------------------------------
echo $ task 7 Pay rent at the end of the month
echo 'Yes' | task 7 Pay rent at the end of the month
echo $ task add music
task add music
echo $ task 8 prepend Select some
task 8 prepend Select some
echo $ task 8 append for after dinner
task 8 append for after dinner
echo $ task list
task list
echo $ task edit
#task edit
echo $ task add Hire a band?
#task add Hire a band?
echo $ task add Hire a band\?
#task add Hire a band\?
echo $ task add "Hire a band?"
#task add "Hire a band?"
echo $ task add -- Hire a band\? +dj
task add -- Hire a band\? +dj
echo $ task undo
echo 'y' | task undo
echo $ task 1 delete
echo 'y' | task 1 delete
echo $ task undo
echo 'y' | task undo
# 7 Info
echo Info --------------------------------------------------------------
echo $ task 1 info
task 1 info
echo $ task stats
task stats
# 8 Annotations
echo Annotations --------------------------------------------------------------
echo $ task 1 annotate the 13 looks good
task 1 annotate the 13 looks good
sleep 1
echo $ task 1 annotate or the 14th
task 1 annotate or the 14th
echo $ task list
task list
echo $ task list rc.annotations:full
task list rc.annotations:full
echo $ task list rc.annotations:sparse
task list rc.annotations:sparse
echo $ task list rc.annotations:none
task list rc.annotations:none
echo $ task 1 denotate 14th
task 1 denotate 14th
echo $ task list
task list
# 9 Configuration
echo Configuration --------------------------------------------------------------
echo $ task show
task show
echo $ task config answer forty-two
echo 'y' | task config answer forty-two
echo $ task show answer
task show answer
echo $ task config answer
echo 'y' | task config answer
echo $ task rc.report.list.sort=description+ list
task rc.report.list.sort=description+ list
# 10 Defaults
echo Defaults --------------------------------------------------------------
echo $ task config default.command list
echo 'y' | task config default.command list
echo $ task
task
echo $ task config default.priority H
echo 'y' | task config default.priority H
echo $ task config default.project Work
echo 'y' | task config default.project Work
echo $ task add New task
task add New task
echo $ task list
task list
echo $ task undo
echo 'y' | task undo
echo $ task config default.priority
echo 'y' | task config default.priority
echo $ task config default.project
echo 'y' | task config default.project
# 11 Aliases
echo Aliases --------------------------------------------------------------
echo $ task config alias.zzz list
echo 'y' | task config alias.zzz list
echo $ task zzz
task zzz
echo $ task z
task z
# 12 Color
echo Color --------------------------------------------------------------
echo $ task config color on
echo 'y' | task config color on
echo $ task list
task list
echo $ task 1 bg:on_red
task 1 bg:on_red
echo $ task list
task list
echo $ task 1 bg:
task 1 bg:
echo $ task color
task color
echo $ task color white on red
task color white on red
echo $ task color legend
task color legend
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-blue-256.theme
echo 'include /usr/local/share/doc/task/rc/dark-blue-256.theme' >> x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-red-256.theme
sed 's/blue/red/' x >x2 && mv x2 x
echo $ task color legend
task color legend
echo $ task list
task list
echo vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/dark-256.theme
sed 's/red-//' x >x2 && mv x2 x
echo $ task list
task list
echo $ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
echo $ man task-color
#man task-color
# 13 Active tasks
echo Active tasks --------------------------------------------------------------
echo $ task 2 start
task 2 start
echo $ task list
task list
echo $ task active
task active
echo $ task 2 stop
task 2 stop
echo $ task config journal.time on
task config journal.time on
echo $ task config rc.dateformat.xxx xxx
task config rc.dateformat.xxx xxx
echo $ task config dateformat.annotation 'Y/m/d H:N'
task config dateformat.annotation 'Y/m/d H:N'
echo $ task 2 start
task 2 start
echo $ task list venue
task list venue
echo $ task 2 stop
task 2 stop
echo $ task list venue
task list venue
# 14 Due dates
echo Due dates --------------------------------------------------------------
echo $ task 1 due:7/31/2010
task 1 due:7/31/2010
echo $ task 1 due:2wks
task 1 due:2wks
echo $ task 1 due:-2wks
task 1 due:-2wks
echo $ task 1 due:eom
task 1 due:eom
echo $ task 2 due:8th
task 2 due:8th
echo $ task 2 due:sunday
task 2 due:sunday
echo $ task 5 due:eow
task 5 due:eow
echo $ task list
task list
echo $ task overdue
task overdue
echo $ task rc.dateformat.report:Y-M-DTH:N:SZ list
task rc.dateformat.report:Y-M-DTH:N:SZ list
# 15 Calendar
echo Calendar --------------------------------------------------------------
echo $ task calendar
task calendar
echo $ vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
#vi ~/.taskrc # include /usr/local/share/doc/task/rc/holidays-US.rc
echo 'include /usr/local/share/doc/task/rc/holidays-US.rc' >> x
echo $ task calendar
task calendar
echo $ task cal 2010
task cal 2010
echo $ task rc.calendar.details:full cal
task rc.calendar.details:full cal
echo $ task rc.calendar.holidays:full cal
task rc.calendar.holidays:full cal
# 16 Recurrence
echo Recurrence --------------------------------------------------------------
echo $ task 7 info
task 7 info
echo $ task 7 due:eom recur:monthly
task 7 due:eom recur:monthly
echo $ task 7
task 7
echo $ task 7 until:eoy
task 7 until:eoy
echo $ task recurring
task recurring
echo $ task add Pay taxes due:4/15/2007 recur:yearly
task add Pay taxes due:4/15/2007 recur:yearly
echo $ task long
task long
echo $ task 11 delete
printf "y\ny\n" | task 11 delete # y, y
echo $ task list
task list
# 17 Shell
echo Shell --------------------------------------------------------------
echo $ task shell
#task shell
echo '> projects'
#> projects
echo '> tags'
#> tags
echo '> list'
#> list
echo '> quit'
#> quit
# 18 Special tags
echo Special tags --------------------------------------------------------------
echo $ task 6 +nocolor
task 6 +nocolor
echo $ task list
task list
echo $ task tags
task tags
echo $ task 6 -nocolor
task 6 -nocolor
# 19 Waiting
echo Waiting --------------------------------------------------------------
echo $ task add Look for new apartment due:eoy
task add Look for new apartment due:eoy
echo $ task list
task list
echo $ task 10 wait:12/1/2010
task 10 wait:12/1/2010
echo $ task list
task list
echo $ task waiting
task waiting
echo $ task add Do something in a few seconds
task add Do something in a few seconds
echo $ task 11 wait:5s
task 11 wait:5s
echo $ task list
task list
sleep 5
echo $ task list
task list
echo $ task 11 rc.confirmation:no delete
task 11 rc.confirmation:no delete
# 20 Dependencies
echo Dependencies --------------------------------------------------------------
echo $ task list pro:party
task list pro:party
echo $ task 3 depends:6
task 3 depends:6
echo $ task 6 dep:5
task 6 dep:5
echo $ task 2 dep:1
task 2 dep:1
echo $ task 5 dep:1,2
task 5 dep:1,2
echo $ task 4 dep:1
task 4 dep:1
echo $ task long pro:party
task long pro:party
echo $ task 5 dep:-1
task 5 dep:-1
echo $ task blocked
task blocked
echo $ task unblocked
task unblocked
echo $ task 1 info
task 1 info
echo $ task 2 info
task 2 info
echo $ task 2 done
echo 'y' | task 2 done
echo $ task 1 info
task 1 info
# 21 Reports
echo Reports --------------------------------------------------------------
echo $ task minimal
task minimal
echo $ task ls
task ls
echo $ task list
task list
echo $ task long
task long
echo $ task all
task all
echo $ task completed
task completed
echo $ task recurring
task recurring
echo $ task waiting
task waiting
echo $ task blocked
task blocked
echo $ task oldest
task oldest
echo $ task newest
task newest
echo $ task timesheet
task timesheet
echo $ task next
task next
# 22 Custom report
echo Custom report --------------------------------------------------------------
echo 'report.foo.description=My own report' >> x
echo 'report.foo.columns=id,entry,description' >> x
echo 'report.foo.labels=ID,Entered,Description' >> x
echo 'report.foo.sort=entry+,description+' >> x
echo 'report.foo.filter=status:pending' >> x
echo 'task help | grep foo'
task help | grep foo
echo $ task show report.foo
task show report.foo
echo $ task foo
task foo
# 23 Charts
echo Charts --------------------------------------------------------------
echo $ task history
task history
echo $ task history.annual
task history.annual
echo $ task ghistory
task ghistory
echo $ task ghistory.annual
task ghistory.annual
echo $ task summary
task summary
# 24 Advanced filters
echo Advanced filters --------------------------------------------------------------
echo $ task list
task list
echo $ task list invit
task list invit
echo $ task list description.contains:invit
task list description.contains:invit
echo $ task list desc.word:the
task list desc.word:the
echo $ task list desc.noword:invitations
task list desc.noword:invitations
echo $ task list pro:party
task list pro:party
echo $ task list pro.is:party
task list pro.is:party
echo $ task list pro.not:party
task list pro.not:party
echo $ task list pro:party priority.over:L
task list pro:party priority.over:L
echo $ task list pro:party limit:2
task list pro:party limit:2
echo $ task list limit:page
task list limit:page
echo $ task all status:pending
task all status:pending
echo $ task all status:waiting
task all status:waiting
# 25 Import/export
echo Import/export --------------------------------------------------------------
echo $ task export.csv
task export.csv
echo $ task export.csv venue
task export.csv venue
echo $ task export.vcalendar venue
task export.vcalendar venue
echo $ task export.yaml venue
task export.yaml venue
cat <<EOF >file.text
Remember to read the task man page
EOF
cat file.text
echo $ task import file.text
printf "y\n" | task import file.text
cat <<EOF >file.yaml
%YAML 1.1
---
task:
description: Visit http://taskwarrior.org
due: 1281844800
entry: 1281289630
priority: H
project: work
status: pending
uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
EOF
cat file.yaml
echo $ task import file.yaml
printf "y\n" | task import file.yaml
echo $ task new limit:2
task new limit:2
# 26 Help
echo Help --------------------------------------------------------------
echo $ task help
task help
echo $ man task
#man task
echo $ man taskrc
#man taskrc
echo $ man task-color
#man task-color
echo $ man task-tutorial
#man task-tutorial
echo $ man task-faq
#man task-faq
echo $ man task-sync
#man task-sync
# 27 Wrap up
echo Wrap up --------------------------------------------------------------
echo $ task version
task version
exit

View File

@@ -1,31 +0,0 @@
[Make window 116x32 for movie recording, light text, dark background]
This is the script from which a 2.0-specific movie will be made. On the left
are the typed commands, and on the right is the voice track.
It is intended that the left and right be combined and the result will be a new
task-tutorial.5 man page.
---------------------------------------- Waiting ---------------------------------------------------
task add Look for new apartment due:eoy When you have a task with a due date that is far out into
task list the future, you may want to hide that task for a while.
task 10 wait:12/1/2010 You can provide a wait date for a task, and it will remain
task list hidden until that date. It will no longer be cluttering
task waiting your task list, but it is still there, and visible using
the 'waiting' report. When the wait date comes, the task
will just pop back into the list.
task add Do something in a few seconds To illustrate this, let's set up a task with a very short
task 11 wait:5s wait time of five seconds.
task list It's gone.
(sleep 5) We wait for 5 seconds...
task list And it's back.
task 11 rc.confirmation:no delete And now it's deleted.
---------------------------------------- End -------------------------------------------------------

View File

@@ -1,9 +1,6 @@
################################################################################
# Sample taskwarrior 1.9 (or later) dark 16-color theme
###############################################################################
#
# taskwarrior - a command line task list manager.
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -27,51 +24,79 @@
#
###############################################################################
color=on
rule.precedence.color=deleted,completed,active,keyword.,tag.,uda.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,pri.
# General decoration
color.label=
color.label.sort=
color.alternate=
color.header=yellow
color.footnote=yellow
color.error=yellow
color.debug=yellow
color.warning=bold red
color.error=white on red
color.debug=blue
color.summary.bar=black on green
color.summary.background=white on black
# Task state
color.completed=
color.deleted=
color.active=black on bright green
color.recurring=magenta
color.scheduled=white on green
color.until=
color.blocked=black on white
color.blocking=black on bright white
color.history.add=black on red
color.history.done=black on green
color.history.delete=black on yellow
# Project
color.project.none=
# Priority
color.pri.H=bold white
color.pri.M=white
color.pri.L=
color.pri.none=
# Tags
color.tag.next=bold yellow
color.tag.none=
color.tagged=green
# Due
color.due=red
color.due.today=red
color.overdue=bold red
# UDA
#color.uda.X=
# Report: burndown
color.burndown.done=on green
color.burndown.pending=on red
color.burndown.started=on yellow
color.burndown.done=on green
# Report: history
color.history.add=black on red
color.history.delete=black on yellow
color.history.done=black on green
# Report: summary
color.summary.background=white on black
color.summary.bar=black on green
# Command: calendar
color.calendar.due=white on red
color.calendar.due.today=bold white on red
color.calendar.holiday=black on bright yellow
color.calendar.overdue=black on bright red
color.calendar.today=bold white on bright blue
color.calendar.weekend=white on bright black
color.calendar.weeknumber=bold blue
# Command: sync
color.sync.added=green
color.sync.changed=yellow
color.sync.rejected=red
color.undo.before=red
# Command: undo
color.undo.after=green
color.calendar.today=bold white on bright blue
color.calendar.due=white on red
color.calendar.due.today=bold white on red
color.calendar.overdue=black on bright red
color.calendar.weekend=white on bright black
color.calendar.holiday=black on bright yellow
color.calendar.weeknumber=bold blue
color.recurring=magenta
color.overdue=bold red
color.due.today=red
color.due=red
color.active=black on bright green
color.pri.none=
color.pri.H=bold white
color.pri.M=white
color.pri.L=
color.tagged=green
color.blocked=black on white
color.blocking=black on bright white
color.project.none=
color.tag.none=
color.alternate=
color.undo.before=red

View File

@@ -1,9 +1,6 @@
###############################################################################
# Sample taskwarrior 1.9 (or later) dark 256-color theme
#
# taskwarrior - a command line task list manager.
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -27,51 +24,76 @@
#
###############################################################################
color=on
rule.precedence.color=deleted,completed,active,keyword.,tag.,uda.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,pri.
# General decoration
color.label=
color.label.sort=
color.alternate=on gray2
color.header=color3
color.footnote=color3
color.error=color3
color.debug=color3
color.warning=bold red
color.error=white on red
color.debug=color4
color.summary.bar=black on rgb141
color.summary.background=white on color0
# Task state
color.completed=
color.deleted=
color.active=rgb555 on rgb410
color.recurring=rgb013
color.scheduled=on rgb001
color.until=
color.blocked=white on color8
color.blocking=black on color15
color.history.add=color0 on rgb500
color.history.done=color0 on rgb050
color.history.delete=color0 on rgb550
# Project
color.project.none=
# Priority
color.pri.H=color255
color.pri.L=color245
color.pri.M=color250
color.pri.none=
# Tags
color.tag.next=rgb440
color.tag.none=
color.tagged=rgb031
# Due
color.due.today=rgb400
color.due=color1
color.overdue=color9
# Report: burndown
color.burndown.done=on rgb010
color.burndown.pending=on color9
color.burndown.started=on color11
color.burndown.done=on rgb010
# Report: history
color.history.add=color0 on rgb500
color.history.delete=color0 on rgb550
color.history.done=color0 on rgb050
# Report: summary
color.summary.background=white on color0
color.summary.bar=black on rgb141
# Command: calendar
color.calendar.due.today=color15 on color1
color.calendar.due=color0 on color1
color.calendar.holiday=color0 on color11
color.calendar.overdue=color0 on color9
color.calendar.today=color15 on rgb013
color.calendar.weekend=on color235
color.calendar.weeknumber=rgb013
# Command: sync
color.sync.added=rgb010
color.sync.changed=color11
color.sync.rejected=color9
color.undo.before=color1
# Command: undo
color.undo.after=color2
color.calendar.today=color15 on rgb013
color.calendar.due=color0 on color1
color.calendar.due.today=color15 on color1
color.calendar.overdue=color0 on color9
color.calendar.weekend=on color235
color.calendar.holiday=color0 on color11
color.calendar.weeknumber=rgb013
color.recurring=rgb013
color.overdue=color9
color.due.today=rgb400
color.due=color1
color.active=rgb555 on rgb410
color.pri.none=
color.pri.H=color255
color.pri.M=color250
color.pri.L=color245
color.tagged=rgb031
color.blocked=white on color8
color.blocking=white on color15
color.project.none=
color.tag.none=
color.alternate=on color233
color.undo.before=color1

View File

@@ -1,9 +1,6 @@
###############################################################################
# Sample taskwarrior 1.9 (or later) dark 256-color theme, featuring blue.
#
# taskwarrior - a command line task list manager.
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -27,51 +24,76 @@
#
###############################################################################
color=on
rule.precedence.color=deleted,completed,active,keyword.,tag.,uda.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,pri.
# General decoration
color.label=
color.label.sort=
color.alternate=on gray2
color.header=rgb013
color.footnote=rgb013
color.error=rgb013
color.warning=bold red
color.error=white on red
color.debug=rgb013
color.summary.bar=white on rgb003
color.summary.background=white on color0
# Task state
color.completed=
color.deleted=
color.active=rgb045 on rgb015
color.recurring=rgb115
color.scheduled=on rgb012
color.until=
color.blocked=white on rgb001
color.blocking=white on rgb002
color.history.add=color0 on rgb015
color.history.done=color0 on rgb025
color.history.delete=color0 on rgb035
# Project
color.project.none=
# Priority
color.pri.H=rgb035
color.pri.L=rgb015
color.pri.M=rgb025
color.pri.none=
# Tags
color.tag.next=rgb550
color.tag.none=
color.tagged=color246
# Due
color.due.today=color252
color.due=color249
color.overdue=color255
# Report: burndown
color.burndown.done=on gray4
color.burndown.pending=on rgb004
color.burndown.started=on rgb015
color.burndown.done=on gray4
# Report: history
color.history.add=color0 on rgb015
color.history.delete=color0 on rgb035
color.history.done=color0 on rgb025
# Report: summary
color.summary.background=on rgb001
color.summary.bar=on rgb114
# Command: calendar
color.calendar.due.today=color0 on color252
color.calendar.due=color0 on color249
color.calendar.holiday=color255 on rgb013
color.calendar.overdue=color0 on color255
color.calendar.today=color0 on rgb115
color.calendar.weekend=on color235
color.calendar.weeknumber=rgb015
# Command: sync
color.sync.added=gray4
color.sync.changed=rgb015
color.sync.rejected=rgb004
color.undo.before=rgb013
# Command: undo
color.undo.after=rgb035
color.calendar.today=color0 on rgb115
color.calendar.due=color0 on color249
color.calendar.due.today=color0 on color252
color.calendar.overdue=color0 on color255
color.calendar.weekend=on color235
color.calendar.holiday=color255 on rgb013
color.calendar.weeknumber=rgb015
color.recurring=rgb115
color.overdue=color255
color.due.today=color252
color.due=color249
color.active=rgb045 on rgb015
color.pri.none=
color.pri.H=rgb035
color.pri.M=rgb025
color.pri.L=rgb015
color.tagged=color246
color.blocked=white on rgb001
color.blocking=white on rgb002
color.project.none=
color.tag.none=
color.alternate=on color233
color.undo.before=rgb013

View File

@@ -1,9 +1,6 @@
###############################################################################
# Sample taskwarrior 1.9 (or later) dark gray 256-color theme
#
# taskwarrior - a command line task list manager.
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -27,51 +24,76 @@
#
###############################################################################
color=on
color.header=color8
color.footnote=color8
color.error=color8
color.debug=color8
rule.precedence.color=deleted,completed,active,keyword.,tag.,uda.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,pri.
color.summary.bar=black on gray12
color.summary.background=white on gray3
color.history.add=color0 on gray6
color.history.done=color0 on gray15
color.history.delete=color0 on gray10
color.burndown.pending=on gray6
color.burndown.started=on gray15
color.burndown.done=on gray10
color.sync.added=gray10
color.sync.changed=gray15
color.sync.rejected=gray6
color.undo.before=gray6
color.undo.after=gray15
color.calendar.today=color8 on color15
color.calendar.due=color7 on color8
color.calendar.due.today=color15 on color8
color.calendar.overdue=underline color0 on color7
color.calendar.weekend=on color235
color.calendar.holiday=color7 on color15
color.calendar.weeknumber=gray4
color.recurring=gray8
color.overdue=color0 on color15
color.due.today=underline color0 on color7
color.due=color7
color.active=color7 on color8
color.pri.none=
color.pri.H=color15
color.pri.M=color7
color.pri.L=color8
color.tagged=gray12
color.blocked=color15 on color8
color.blocking=color15 on color7
color.project.none=
color.tag.none=
# General decoration
color.label=
color.label.sort=
color.alternate=on gray2
color.header=color0 on gray11
color.footnote=on gray5
color.warning=bold red
color.error=white on red
color.debug=blue
# Task state
color.completed=
color.deleted=
color.active=black on gray18
color.recurring=
color.scheduled=on gray8
color.until=
color.blocked=gray13
color.blocking=bold white
# Project
color.project.none=
# Priority
color.pri.H=gray21
color.pri.M=gray18
color.pri.L=gray12
color.pri.none=gray18
# Tags
color.tag.next=bold white
color.tag.none=
color.tagged=
# Due
color.due=on gray3
color.due.today=on gray4
color.overdue=on gray6
# Report: burndown
color.burndown.pending=gray15 on gray5
color.burndown.started=black on gray10
color.burndown.done=gray5 on gray23
# Report: history
color.history.add=gray15 on gray5
color.history.delete=black on gray10
color.history.done=gray5 on gray23
# Report: summary
color.summary.bar=on gray12
color.summary.background=on gray5
# Command: calendar
color.calendar.due=on gray8
color.calendar.due.today=black on gray15
color.calendar.holiday=black on gray20
color.calendar.overdue=gray2 on gray10
color.calendar.today=bold white
color.calendar.weekend=on gray2
color.calendar.weeknumber=gray6
# Command: sync
color.sync.added=gray15 on gray5
color.sync.changed=black on gray10
color.sync.rejected=gray5 on gray23
# Command: undo
color.undo.before=white on black
color.undo.after=black on white

View File

@@ -0,0 +1,99 @@
###############################################################################
#
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
rule.precedence.color=deleted,completed,active,keyword.,tag.,uda.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,pri.
# General decoration
color.label=
color.label.sort=
color.alternate=on gray2
color.header=gray10
color.footnote=gray10
color.warning=
color.error=white on red
color.debug=blue
# Task state
color.completed=
color.deleted=
color.active=color15 on rgb035
color.recurring=
color.scheduled=
color.until=
color.blocked=bold gray10 on gray4
color.blocking=gray18 on gray6
# Project
color.project.none=
# Priority
color.pri.H=
color.pri.L=
color.pri.M=
color.pri.none=
# Tags
color.tag.next=
color.tag.none=
color.tagged=
# Due
color.due=color0 on rgb013
color.due.today=color0 on rgb024
color.overdue=color0 on rgb035
# Report: burndown
color.burndown.pending=white on gray9
color.burndown.started=black on gray16
color.burndown.done=white on rgb013
# Report: history
color.history.add=white on gray6
color.history.delete=black on gray18
color.history.done=black on rgb024
# Report: summary
color.summary.bar=on rgb012
color.summary.background=on gray2
# Command: calendar
color.calendar.due=color0 on gray10
color.calendar.due.today=color0 on gray15
color.calendar.holiday=color15 on rgb005
color.calendar.overdue=color0 on gray20
color.calendar.today=underline black on color15
color.calendar.weekend=on gray4
color.calendar.weeknumber=gray10
# Command: sync
color.sync.added=gray10
color.sync.changed=gray15
color.sync.rejected=gray23
# Command: undo
color.undo.before=rgb013
color.undo.after=rgb035

View File

@@ -1,9 +1,6 @@
###############################################################################
# Sample taskwarrior 1.9 (or later) dark 256-color theme, featuring green.
#
# taskwarrior - a command line task list manager.
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -27,51 +24,75 @@
#
###############################################################################
color=on
rule.precedence.color=deleted,completed,active,keyword.,tag.,uda.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,pri.
# General decoration
color.label=
color.label.sort=
color.alternate=on gray2
color.header=rgb031
color.footnote=rgb031
color.error=rgb031
color.debug=rgb031
color.warning=rgb020
color.error=white on red
color.debug=blue
color.summary.bar=white on rgb030
color.summary.background=white on color0
# Task state
color.completed=
color.deleted=
color.active=rgb050 on rgb010
color.recurring=rgb151
color.scheduled=black on rgb031
color.until=
color.blocked=white on rgb010
color.blocking=white on rgb020
color.history.add=color0 on rgb010
color.history.done=color0 on rgb030
color.history.delete=color0 on rgb050
# Project
color.project.none=
# Priority
color.pri.H=rgb050
color.pri.L=rgb010
color.pri.M=rgb030
color.pri.none=
# Tags
color.tag.next=rgb440
color.tag.none=
color.tagged=color246
# Due
color.due.today=color252
color.due=color249
color.overdue=color255
# Report: burndown
color.burndown.done=on gray4
color.burndown.pending=on rgb010
color.burndown.started=on rgb030
color.burndown.done=on gray4
# Report: history
color.history.add=color0 on rgb010
color.history.delete=color0 on rgb050
color.history.done=color0 on rgb030
# Report: summary
color.summary.background=white on gray3
color.summary.bar=white on rgb030
# Command: calendar
color.calendar.due.today=color0 on color225
color.calendar.due=color0 on color249
color.calendar.holiday=rgb151 on rgb020
color.calendar.overdue=color0 on color255
color.calendar.today=color0 on rgb151
color.calendar.weekend=on color235
color.calendar.weeknumber=rgb010
# Command: sync
color.sync.added=gray4
color.sync.changed=rgb030
color.sync.rejected=rgb010
color.undo.before=rgb031
# Command: undo
color.undo.after=rgb053
color.calendar.today=color0 on rgb151
color.calendar.due=color0 on color249
color.calendar.due.today=color0 on color225
color.calendar.overdue=color0 on color255
color.calendar.weekend=on color235
color.calendar.holiday=rgb151 on rgb020
color.calendar.weeknumber=rgb010
color.recurring=rgb151
color.overdue=color255
color.due.today=color252
color.due=color249
color.active=rgb050 on rgb010
color.pri.none=
color.pri.H=rgb050
color.pri.M=rgb030
color.pri.L=rgb010
color.tagged=color246
color.blocked=white on rgb010
color.blocking=white on rgb020
color.project.none=
color.tag.none=
color.alternate=on color233
color.undo.before=rgb021

View File

@@ -1,9 +1,6 @@
###############################################################################
# Sample taskwarrior 1.9 (or later) dark 256-color theme, featuring red.
#
# taskwarrior - a command line task list manager.
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -27,51 +24,76 @@
#
###############################################################################
color=on
rule.precedence.color=deleted,completed,active,keyword.,tag.,uda.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,pri.
# General decoration
color.label=
color.label.sort=
color.alternate=on gray2
color.header=rgb100
color.footnote=rgb100
color.error=rgb100
color.debug=rgb100
color.warning=red
color.error=white on red
color.debug=blue
color.summary.bar=white on rgb300
color.summary.background=white on color0
# Task state
color.completed=
color.deleted=
color.active=rgb500 on rgb100
color.recurring=rgb511
color.scheduled=white on rgb311
color.until=
color.blocked=white on rgb100
color.blocking=white on rgb200
color.history.add=color0 on rgb100
color.history.done=color0 on rgb300
color.history.delete=color0 on rgb500
# Project
color.project.none=
# Priority
color.pri.H=rgb500
color.pri.L=rgb300
color.pri.M=rgb400
color.pri.none=
# Tags
color.tag.next=rgb511
color.tag.none=
color.tagged=color246
# Due
color.due.today=color252
color.due=color249
color.overdue=color255
# Report: burndown
color.burndown.done=on gray4
color.burndown.pending=on rgb200
color.burndown.started=on rgb411
color.burndown.done=on gray4
# Report: history
color.history.add=color0 on rgb100
color.history.delete=color0 on rgb500
color.history.done=color0 on rgb300
# Report: summary
color.summary.background=white on color0
color.summary.bar=white on rgb300
# Command: calendar
color.calendar.due.today=color0 on color252
color.calendar.due=color0 on color249
color.calendar.holiday=rgb522 on rgb300
color.calendar.overdue=color0 on color255
color.calendar.today=color0 on rgb511
color.calendar.weekend=on color235
color.calendar.weeknumber=rgb100
# Command: sync
color.sync.added=gray4
color.sync.changed=rgb411
color.sync.rejected=rgb200
color.undo.before=rgb301
color.undo.after=rgb503
color.calendar.today=color0 on rgb511
color.calendar.due=color0 on color249
color.calendar.due.today=color0 on color252
color.calendar.overdue=color0 on color255
color.calendar.weekend=on color235
color.calendar.holiday=rgb522 on rgb300
color.calendar.weeknumber=rgb100
color.recurring=rgb511
color.overdue=color255
color.due.today=color252
color.due=color249
color.active=rgb500 on rgb100
color.pri.none=
color.pri.H=rgb500
color.pri.M=rgb400
color.pri.L=rgb300
color.tagged=color246
color.blocked=white on rgb100
color.blocking=white on rgb200
color.project.none=
color.tag.none=
color.alternate=on color233
# Command: undo
color.undo.after=rgb511
color.undo.before=rgb200

View File

@@ -1,9 +1,6 @@
################################################################################
# Sample taskwarrior 1.9 (or later) dark violet 256-color theme
###############################################################################
#
# taskwarrior - a command line task list manager.
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -27,51 +24,76 @@
#
###############################################################################
color=on
rule.precedence.color=deleted,completed,active,keyword.,tag.,uda.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,pri.
# General decoration
color.label=
color.label.sort=
color.alternate=on gray2
color.header=rgb013
color.footnote=rgb013
color.error=rgb013
color.debug=rgb013
color.warning=
color.error=white on red
color.debug=blue
color.summary.bar=white on rgb103
color.summary.background=white on color0
# Task state
color.completed=
color.deleted=
color.active=rgb445 on rgb213
color.recurring=rgb115
color.scheduled=white on rgb113
color.until=
color.blocked=white on rgb101
color.blocking=white on rgb202
color.history.add=color0 on rgb105
color.history.done=color0 on rgb205
color.history.delete=color0 on rgb305
# Project
color.project.none=
# Priority
color.pri.H=rgb404
color.pri.M=rgb304
color.pri.L=rgb325
color.pri.none=
# Tags
color.tag.next=
color.tag.none=
color.tagged=rgb334
# Due
color.due=rgb015
color.due.today=rgb125
color.overdue=color5
# Report: burndown
color.burndown.pending=on rgb103
color.burndown.started=on rgb214
color.burndown.done=on gray4
# Report: history
color.history.add=color0 on rgb105
color.history.done=color0 on rgb205
color.history.delete=color0 on rgb305
# Report: summary
color.summary.bar=white on rgb104
color.summary.background=white on rgb001
# Command: calendar
color.calendar.due=color0 on rgb325
color.calendar.due.today=color0 on rgb404
color.calendar.holiday=color15 on rgb102
color.calendar.overdue=color0 on color5
color.calendar.today=color15 on rgb103
color.calendar.weekend=gray12 on gray3
color.calendar.weeknumber=rgb104
# Command: sync
color.sync.added=gray4
color.sync.changed=rgb214
color.sync.rejected=rgb103
# Command: undo
color.undo.before=rgb103
color.undo.after=rgb305
color.calendar.today=color15 on rgb103
color.calendar.due=color0 on rgb325
color.calendar.due.today=color0 on rgb404
color.calendar.overdue=color0 on color9
color.calendar.weekend=gray12 on gray3
color.calendar.holiday=color15 on rgb022
color.calendar.weeknumber=rgb104
color.recurring=rgb115
color.overdue=color9
color.due.today=rgb533
color.due=rgb055
color.active=rgb445 on rgb213
color.pri.none=
color.pri.H=rgb404
color.pri.M=rgb304
color.pri.L=rgb325
color.tagged=rgb334
color.blocked=white on rgb101
color.blocking=white on rgb202
color.project.none=
color.tag.none=
color.alternate=on gray2

View File

@@ -1,9 +1,6 @@
################################################################################
# Sample taskwarrior 1.9 (or later) dark-yellow-green 256-color theme
###############################################################################
#
# taskwarrior - a command line task list manager.
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -27,51 +24,76 @@
#
###############################################################################
color=on
rule.precedence.color=deleted,completed,active,keyword.,tag.,uda.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,pri.
# General decoration
color.label=
color.label.sort=
color.alternate=on gray2
color.header=rgb031
color.footnote=rgb031
color.error=rgb031
color.debug=rgb031
color.warning=
color.error=white on red
color.debug=blue
color.summary.bar=white on rgb030
color.summary.background=white on color0
# Task state
color.completed=
color.deleted=
color.active=rgb451 on rgb320
color.recurring=rgb343
color.scheduled=black on rgb441
color.until=
color.blocked=white on rgb110
color.blocking=white on rgb220
color.history.add=color0 on rgb010
color.history.done=color0 on rgb030
color.history.delete=color0 on rgb050
# Project
color.project.none=
# Priority
color.pri.H=rgb450
color.pri.M=rgb030
color.pri.L=rgb010
color.pri.none=
# Tags
color.tag.next=
color.tag.none=
color.tagged=rgb342
# Due
color.due=rgb440
color.due.today=rgb430
color.overdue=rgb420
# Report: burndown
color.burndown.pending=on rgb110
color.burndown.started=on rgb430
color.burndown.done=on gray4
# Report: history
color.history.add=color0 on rgb110
color.history.done=color0 on rgb430
color.history.delete=white on gray4
# Report: summary
color.summary.bar=white on rgb330
color.summary.background=white on rgb110
# Command: calendar
color.calendar.due=color0 on rgb440
color.calendar.due.today=color0 on rgb430
color.calendar.holiday=rgb151 on rgb020
color.calendar.overdue=color0 on rgb420
color.calendar.today=color15 on rgb110
color.calendar.weekend=on color235
color.calendar.weeknumber=rgb110
# Command: sync
color.sync.added=gray4
color.sync.changed=rgb430
color.sync.rejected=rgb110
color.undo.before=rgb031
color.undo.after=rgb053
color.calendar.today=color15 on rgb110
color.calendar.due=color0 on rgb430
color.calendar.due.today=color0 on rgb410
color.calendar.overdue=color0 on rgb400
color.calendar.weekend=on color235
color.calendar.holiday=rgb151 on rgb020
color.calendar.weeknumber=rgb110
color.recurring=rgb343
color.overdue=rgb400
color.due.today=rgb410
color.due=rgb420
color.active=rgb451 on rgb310
color.pri.none=
color.pri.H=rgb450
color.pri.M=rgb030
color.pri.L=rgb010
color.tagged=rgb342
color.blocked=white on rgb110
color.blocking=white on rgb220
color.project.none=
color.tag.none=
color.alternate=on gray0
# Command: undo
color.undo.before=rgb021
color.undo.after=rgb042

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/be-BY/2012.json
# http://holidata.net/be-BY/2013.json
# http://holidata.net/be-BY/2014.json
# http://holidata.net/be-BY/2015.json
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -28,42 +28,62 @@
###############################################################################
holiday.be-BY1.name=Новы Год
holiday.be-BY1.date=20120101
holiday.be-BY1.date=20140101
holiday.be-BY2.name=Раство Хрыстова(праваслаўнае)
holiday.be-BY2.date=20120107
holiday.be-BY2.date=20140107
holiday.be-BY3.name=Міжнародны жаночы дзень
holiday.be-BY3.date=20120803
holiday.be-BY3.date=20140803
holiday.be-BY4.name=Пасха(праваслаўная)
holiday.be-BY4.date=20120415
holiday.be-BY4.date=20140420
holiday.be-BY5.name=Радуніца
holiday.be-BY5.date=20120424
holiday.be-BY5.date=20140429
holiday.be-BY6.name=Свята працы
holiday.be-BY6.date=20120501
holiday.be-BY6.date=20140501
holiday.be-BY7.name=Дзень Перамогі
holiday.be-BY7.date=20120509
holiday.be-BY7.date=20140509
holiday.be-BY8.name=Дзень незалежнаці
holiday.be-BY8.date=20120703
holiday.be-BY8.date=20140703
holiday.be-BY9.name=Дзень Кастрычніцкай рэвалюцыі
holiday.be-BY9.date=20121107
holiday.be-BY9.date=20141107
holiday.be-BY10.name=Раство Хрыстова(у заходніх хрысціян)
holiday.be-BY10.date=20121225
holiday.be-BY10.date=20141225
holiday.be-BY11.name=Новы Год
holiday.be-BY11.date=20130101
holiday.be-BY11.date=20150101
holiday.be-BY12.name=Раство Хрыстова(праваслаўнае)
holiday.be-BY12.date=20130107
holiday.be-BY12.date=20150107
holiday.be-BY13.name=Міжнародны жаночы дзень
holiday.be-BY13.date=20130803
holiday.be-BY13.date=20150803
holiday.be-BY14.name=Пасха(праваслаўная)
holiday.be-BY14.date=20130505
holiday.be-BY14.date=20150420
holiday.be-BY15.name=Радуніца
holiday.be-BY15.date=20130514
holiday.be-BY15.date=20150421
holiday.be-BY16.name=Свята працы
holiday.be-BY16.date=20130501
holiday.be-BY16.date=20150501
holiday.be-BY17.name=Дзень Перамогі
holiday.be-BY17.date=20130509
holiday.be-BY17.date=20150509
holiday.be-BY18.name=Дзень незалежнаці
holiday.be-BY18.date=20130703
holiday.be-BY18.date=20150703
holiday.be-BY19.name=Дзень Кастрычніцкай рэвалюцыі
holiday.be-BY19.date=20131107
holiday.be-BY19.date=20151107
holiday.be-BY20.name=Раство Хрыстова(у заходніх хрысціян)
holiday.be-BY20.date=20131225
holiday.be-BY20.date=20151225
holiday.be-BY21.name=Новы Год
holiday.be-BY21.date=20160101
holiday.be-BY22.name=Раство Хрыстова(праваслаўнае)
holiday.be-BY22.date=20160107
holiday.be-BY23.name=Міжнародны жаночы дзень
holiday.be-BY23.date=20160803
holiday.be-BY24.name=Пасха(праваслаўная)
holiday.be-BY24.date=20160327
holiday.be-BY25.name=Радуніца
holiday.be-BY25.date=20160510
holiday.be-BY26.name=Свята працы
holiday.be-BY26.date=20160501
holiday.be-BY27.name=Дзень Перамогі
holiday.be-BY27.date=20160509
holiday.be-BY28.name=Дзень незалежнаці
holiday.be-BY28.date=20160703
holiday.be-BY29.name=Дзень Кастрычніцкай рэвалюцыі
holiday.be-BY29.date=20161107
holiday.be-BY30.name=Раство Хрыстова(у заходніх хрысціян)
holiday.be-BY30.date=20161225

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/cs-CZ/2012.json
# http://holidata.net/cs-CZ/2013.json
# http://holidata.net/cs-CZ/2014.json
# http://holidata.net/cs-CZ/2015.json
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -28,54 +28,80 @@
###############################################################################
holiday.cs-CZ1.name=Nový rok
holiday.cs-CZ1.date=20120101
holiday.cs-CZ1.date=20140101
holiday.cs-CZ2.name=Den obnovy samostatnosti českého státu
holiday.cs-CZ2.date=20120101
holiday.cs-CZ2.date=20140101
holiday.cs-CZ3.name=Velikonoční pondělí
holiday.cs-CZ3.date=20120409
holiday.cs-CZ3.date=20140421
holiday.cs-CZ4.name=Svátek práce
holiday.cs-CZ4.date=20120501
holiday.cs-CZ4.date=20140501
holiday.cs-CZ5.name=Den vítězství
holiday.cs-CZ5.date=20120508
holiday.cs-CZ5.date=20140508
holiday.cs-CZ6.name=Den slovanských věrozvěstů
holiday.cs-CZ6.date=20120705
holiday.cs-CZ6.date=20140705
holiday.cs-CZ7.name=Den upálení mistra Jana Husa
holiday.cs-CZ7.date=20120706
holiday.cs-CZ7.date=20140706
holiday.cs-CZ8.name=Den české státnosti
holiday.cs-CZ8.date=20120928
holiday.cs-CZ8.date=20140928
holiday.cs-CZ9.name=Den vzniku samostatného československého státu
holiday.cs-CZ9.date=20121028
holiday.cs-CZ9.date=20141028
holiday.cs-CZ10.name=Den boje za svobodu a demokracii
holiday.cs-CZ10.date=20121117
holiday.cs-CZ10.date=20141117
holiday.cs-CZ11.name=Štědrý den
holiday.cs-CZ11.date=20121224
holiday.cs-CZ11.date=20141224
holiday.cs-CZ12.name=1. svátek vánoční
holiday.cs-CZ12.date=20121225
holiday.cs-CZ12.date=20141225
holiday.cs-CZ13.name=2. svátek vánoční
holiday.cs-CZ13.date=20121226
holiday.cs-CZ13.date=20141226
holiday.cs-CZ14.name=Nový rok
holiday.cs-CZ14.date=20130101
holiday.cs-CZ14.date=20150101
holiday.cs-CZ15.name=Den obnovy samostatnosti českého státu
holiday.cs-CZ15.date=20130101
holiday.cs-CZ15.date=20150101
holiday.cs-CZ16.name=Velikonoční pondělí
holiday.cs-CZ16.date=20130401
holiday.cs-CZ16.date=20150406
holiday.cs-CZ17.name=Svátek práce
holiday.cs-CZ17.date=20130501
holiday.cs-CZ17.date=20150501
holiday.cs-CZ18.name=Den vítězství
holiday.cs-CZ18.date=20130508
holiday.cs-CZ18.date=20150508
holiday.cs-CZ19.name=Den slovanských věrozvěstů
holiday.cs-CZ19.date=20130705
holiday.cs-CZ19.date=20150705
holiday.cs-CZ20.name=Den upálení mistra Jana Husa
holiday.cs-CZ20.date=20130706
holiday.cs-CZ20.date=20150706
holiday.cs-CZ21.name=Den české státnosti
holiday.cs-CZ21.date=20130928
holiday.cs-CZ21.date=20150928
holiday.cs-CZ22.name=Den vzniku samostatného československého státu
holiday.cs-CZ22.date=20131028
holiday.cs-CZ22.date=20151028
holiday.cs-CZ23.name=Den boje za svobodu a demokracii
holiday.cs-CZ23.date=20131117
holiday.cs-CZ23.date=20151117
holiday.cs-CZ24.name=Štědrý den
holiday.cs-CZ24.date=20131224
holiday.cs-CZ24.date=20151224
holiday.cs-CZ25.name=1. svátek vánoční
holiday.cs-CZ25.date=20131225
holiday.cs-CZ25.date=20151225
holiday.cs-CZ26.name=2. svátek vánoční
holiday.cs-CZ26.date=20131226
holiday.cs-CZ26.date=20151226
holiday.cs-CZ27.name=Nový rok
holiday.cs-CZ27.date=20160101
holiday.cs-CZ28.name=Den obnovy samostatnosti českého státu
holiday.cs-CZ28.date=20160101
holiday.cs-CZ29.name=Velikonoční pondělí
holiday.cs-CZ29.date=20160328
holiday.cs-CZ30.name=Svátek práce
holiday.cs-CZ30.date=20160501
holiday.cs-CZ31.name=Den vítězství
holiday.cs-CZ31.date=20160508
holiday.cs-CZ32.name=Den slovanských věrozvěstů
holiday.cs-CZ32.date=20160705
holiday.cs-CZ33.name=Den upálení mistra Jana Husa
holiday.cs-CZ33.date=20160706
holiday.cs-CZ34.name=Den české státnosti
holiday.cs-CZ34.date=20160928
holiday.cs-CZ35.name=Den vzniku samostatného československého státu
holiday.cs-CZ35.date=20161028
holiday.cs-CZ36.name=Den boje za svobodu a demokracii
holiday.cs-CZ36.date=20161117
holiday.cs-CZ37.name=Štědrý den
holiday.cs-CZ37.date=20161224
holiday.cs-CZ38.name=1. svátek vánoční
holiday.cs-CZ38.date=20161225
holiday.cs-CZ39.name=2. svátek vánoční
holiday.cs-CZ39.date=20161226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/da-DK/2012.json
# http://holidata.net/da-DK/2013.json
# http://holidata.net/da-DK/2014.json
# http://holidata.net/da-DK/2015.json
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -27,51 +27,69 @@
#
###############################################################################
holiday.da-DK1.name=Nytårsdag
holiday.da-DK1.date=20120101
holiday.da-DK2.name=Palmesøndag
holiday.da-DK2.date=20120401
holiday.da-DK1.name=Grundlovsdag
holiday.da-DK1.date=20140605
holiday.da-DK2.name=Nytårsdag
holiday.da-DK2.date=20140101
holiday.da-DK3.name=Skærtorsdag
holiday.da-DK3.date=20120405
holiday.da-DK3.date=20140417
holiday.da-DK4.name=Langfredag
holiday.da-DK4.date=20120406
holiday.da-DK4.date=20140418
holiday.da-DK5.name=Påskedag
holiday.da-DK5.date=20120408
holiday.da-DK5.date=20140420
holiday.da-DK6.name=Anden påskedag
holiday.da-DK6.date=20120409
holiday.da-DK7.name=Store bededag
holiday.da-DK7.date=20120504
holiday.da-DK8.name=Kristi himmelfartsdag
holiday.da-DK8.date=20120517
holiday.da-DK9.name=Pinsedag
holiday.da-DK9.date=20120527
holiday.da-DK10.name=Anden pinsedag
holiday.da-DK10.date=20120528
holiday.da-DK11.name=Juledag
holiday.da-DK11.date=20121225
holiday.da-DK12.name=Anden juledag
holiday.da-DK12.date=20121226
holiday.da-DK13.name=Nytårsdag
holiday.da-DK13.date=20130101
holiday.da-DK14.name=Palmesøndag
holiday.da-DK14.date=20130324
holiday.da-DK15.name=Skærtorsdag
holiday.da-DK15.date=20130328
holiday.da-DK16.name=Langfredag
holiday.da-DK16.date=20130329
holiday.da-DK17.name=Påskedag
holiday.da-DK17.date=20130331
holiday.da-DK18.name=Anden påskedag
holiday.da-DK18.date=20130401
holiday.da-DK19.name=Store bededag
holiday.da-DK19.date=20130426
holiday.da-DK20.name=Kristi himmelfartsdag
holiday.da-DK20.date=20130509
holiday.da-DK21.name=Pinsedag
holiday.da-DK21.date=20130519
holiday.da-DK22.name=Anden pinsedag
holiday.da-DK22.date=20130520
holiday.da-DK23.name=Juledag
holiday.da-DK23.date=20131225
holiday.da-DK24.name=Anden juledag
holiday.da-DK24.date=20131226
holiday.da-DK6.date=20140421
holiday.da-DK7.name=Kristi himmelfartsdag
holiday.da-DK7.date=20140529
holiday.da-DK8.name=Pinsedag
holiday.da-DK8.date=20140608
holiday.da-DK9.name=Anden pinsedag
holiday.da-DK9.date=20140609
holiday.da-DK10.name=Juledag
holiday.da-DK10.date=20141225
holiday.da-DK11.name=Anden juledag
holiday.da-DK11.date=20141226
holiday.da-DK12.name=Nytårsdag
holiday.da-DK12.date=20150101
holiday.da-DK13.name=Skærtorsdag
holiday.da-DK13.date=20150402
holiday.da-DK14.name=Langfredag
holiday.da-DK14.date=20150403
holiday.da-DK15.name=Påskedag
holiday.da-DK15.date=20150405
holiday.da-DK16.name=Anden påskedag
holiday.da-DK16.date=20150406
holiday.da-DK17.name=Kristi himmelfartsdag
holiday.da-DK17.date=20150514
holiday.da-DK18.name=Pinsedag
holiday.da-DK18.date=20150524
holiday.da-DK19.name=Anden pinsedag
holiday.da-DK19.date=20150525
holiday.da-DK20.name=Grundlovsdag
holiday.da-DK20.date=20150605
holiday.da-DK21.name=Juledag
holiday.da-DK21.date=20151225
holiday.da-DK22.name=Anden juledag
holiday.da-DK22.date=20151226
holiday.da-DK23.name=Nytårsdag
holiday.da-DK23.date=20160101
holiday.da-DK24.name=Skærtorsdag
holiday.da-DK24.date=20160324
holiday.da-DK25.name=Langfredag
holiday.da-DK25.date=20160325
holiday.da-DK26.name=Påskedag
holiday.da-DK26.date=20160327
holiday.da-DK27.name=Anden påskedag
holiday.da-DK27.date=20160328
holiday.da-DK28.name=Kristi himmelfartsdag
holiday.da-DK28.date=20160505
holiday.da-DK29.name=Pinsedag
holiday.da-DK29.date=20160515
holiday.da-DK30.name=Anden pinsedag
holiday.da-DK30.date=20160516
holiday.da-DK31.name=Grundlovsdag
holiday.da-DK31.date=20160605
holiday.da-DK32.name=Juledag
holiday.da-DK32.date=20161225
holiday.da-DK33.name=Anden juledag
holiday.da-DK33.date=20161226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/de-AT/2012.json
# http://holidata.net/de-AT/2013.json
# http://holidata.net/de-AT/2014.json
# http://holidata.net/de-AT/2015.json
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -28,94 +28,140 @@
###############################################################################
holiday.de-AT1.name=Neujahr
holiday.de-AT1.date=20120101
holiday.de-AT1.date=20140101
holiday.de-AT2.name=Heilige drei Könige
holiday.de-AT2.date=20120106
holiday.de-AT2.date=20140106
holiday.de-AT3.name=Josef (K, St, T, V)
holiday.de-AT3.date=20120319
holiday.de-AT3.date=20140319
holiday.de-AT4.name=Karfreitag
holiday.de-AT4.date=20120406
holiday.de-AT4.date=20140418
holiday.de-AT5.name=Ostersonntag
holiday.de-AT5.date=20120408
holiday.de-AT5.date=20140420
holiday.de-AT6.name=Ostermontag
holiday.de-AT6.date=20120409
holiday.de-AT6.date=20140421
holiday.de-AT7.name=Staatsfeiertag
holiday.de-AT7.date=20120501
holiday.de-AT7.date=20140501
holiday.de-AT8.name=Florian (O)
holiday.de-AT8.date=20120504
holiday.de-AT8.date=20140504
holiday.de-AT9.name=Christi Himmelfahrt
holiday.de-AT9.date=20120517
holiday.de-AT9.date=20140529
holiday.de-AT10.name=Pfingstsonntag
holiday.de-AT10.date=20120527
holiday.de-AT10.date=20140608
holiday.de-AT11.name=Pfingstmontag
holiday.de-AT11.date=20120528
holiday.de-AT11.date=20140609
holiday.de-AT12.name=Fronleichnam
holiday.de-AT12.date=20120607
holiday.de-AT12.date=20140619
holiday.de-AT13.name=Mariä Himmelfahrt
holiday.de-AT13.date=20120815
holiday.de-AT13.date=20140815
holiday.de-AT14.name=Rupert (S)
holiday.de-AT14.date=20120924
holiday.de-AT14.date=20140924
holiday.de-AT15.name=Tag der Volksabstimmung (K)
holiday.de-AT15.date=20121010
holiday.de-AT15.date=20141010
holiday.de-AT16.name=Allerheiligen
holiday.de-AT16.date=20121101
holiday.de-AT16.date=20141101
holiday.de-AT17.name=Martin (B)
holiday.de-AT17.date=20121111
holiday.de-AT17.date=20141111
holiday.de-AT18.name=Leopold (W, N)
holiday.de-AT18.date=20121115
holiday.de-AT18.date=20141115
holiday.de-AT19.name=Mariä Empfängnis
holiday.de-AT19.date=20121208
holiday.de-AT19.date=20141208
holiday.de-AT20.name=Heiliger Abend
holiday.de-AT20.date=20121224
holiday.de-AT20.date=20141224
holiday.de-AT21.name=Christtag
holiday.de-AT21.date=20121225
holiday.de-AT21.date=20141225
holiday.de-AT22.name=Stefanitag
holiday.de-AT22.date=20121226
holiday.de-AT22.date=20141226
holiday.de-AT23.name=Silvester
holiday.de-AT23.date=20121231
holiday.de-AT23.date=20141231
holiday.de-AT24.name=Neujahr
holiday.de-AT24.date=20130101
holiday.de-AT24.date=20150101
holiday.de-AT25.name=Heilige drei Könige
holiday.de-AT25.date=20130106
holiday.de-AT25.date=20150106
holiday.de-AT26.name=Josef (K, St, T, V)
holiday.de-AT26.date=20130319
holiday.de-AT26.date=20150319
holiday.de-AT27.name=Karfreitag
holiday.de-AT27.date=20130329
holiday.de-AT27.date=20150403
holiday.de-AT28.name=Ostersonntag
holiday.de-AT28.date=20130331
holiday.de-AT28.date=20150405
holiday.de-AT29.name=Ostermontag
holiday.de-AT29.date=20130401
holiday.de-AT29.date=20150406
holiday.de-AT30.name=Staatsfeiertag
holiday.de-AT30.date=20130501
holiday.de-AT30.date=20150501
holiday.de-AT31.name=Florian (O)
holiday.de-AT31.date=20130504
holiday.de-AT31.date=20150504
holiday.de-AT32.name=Christi Himmelfahrt
holiday.de-AT32.date=20130509
holiday.de-AT32.date=20150514
holiday.de-AT33.name=Pfingstsonntag
holiday.de-AT33.date=20130519
holiday.de-AT33.date=20150524
holiday.de-AT34.name=Pfingstmontag
holiday.de-AT34.date=20130520
holiday.de-AT34.date=20150525
holiday.de-AT35.name=Fronleichnam
holiday.de-AT35.date=20130530
holiday.de-AT35.date=20150604
holiday.de-AT36.name=Mariä Himmelfahrt
holiday.de-AT36.date=20130815
holiday.de-AT36.date=20150815
holiday.de-AT37.name=Rupert (S)
holiday.de-AT37.date=20130924
holiday.de-AT37.date=20150924
holiday.de-AT38.name=Tag der Volksabstimmung (K)
holiday.de-AT38.date=20131010
holiday.de-AT38.date=20151010
holiday.de-AT39.name=Allerheiligen
holiday.de-AT39.date=20131101
holiday.de-AT39.date=20151101
holiday.de-AT40.name=Martin (B)
holiday.de-AT40.date=20131111
holiday.de-AT40.date=20151111
holiday.de-AT41.name=Leopold (W, N)
holiday.de-AT41.date=20131115
holiday.de-AT41.date=20151115
holiday.de-AT42.name=Mariä Empfängnis
holiday.de-AT42.date=20131208
holiday.de-AT42.date=20151208
holiday.de-AT43.name=Heiliger Abend
holiday.de-AT43.date=20131224
holiday.de-AT43.date=20151224
holiday.de-AT44.name=Christtag
holiday.de-AT44.date=20131225
holiday.de-AT44.date=20151225
holiday.de-AT45.name=Stefanitag
holiday.de-AT45.date=20131226
holiday.de-AT45.date=20151226
holiday.de-AT46.name=Silvester
holiday.de-AT46.date=20131231
holiday.de-AT46.date=20151231
holiday.de-AT47.name=Neujahr
holiday.de-AT47.date=20160101
holiday.de-AT48.name=Heilige drei Könige
holiday.de-AT48.date=20160106
holiday.de-AT49.name=Josef (K, St, T, V)
holiday.de-AT49.date=20160319
holiday.de-AT50.name=Karfreitag
holiday.de-AT50.date=20160325
holiday.de-AT51.name=Ostersonntag
holiday.de-AT51.date=20160327
holiday.de-AT52.name=Ostermontag
holiday.de-AT52.date=20160328
holiday.de-AT53.name=Staatsfeiertag
holiday.de-AT53.date=20160501
holiday.de-AT54.name=Florian (O)
holiday.de-AT54.date=20160504
holiday.de-AT55.name=Christi Himmelfahrt
holiday.de-AT55.date=20160505
holiday.de-AT56.name=Pfingstsonntag
holiday.de-AT56.date=20160515
holiday.de-AT57.name=Pfingstmontag
holiday.de-AT57.date=20160516
holiday.de-AT58.name=Fronleichnam
holiday.de-AT58.date=20160526
holiday.de-AT59.name=Mariä Himmelfahrt
holiday.de-AT59.date=20160815
holiday.de-AT60.name=Rupert (S)
holiday.de-AT60.date=20160924
holiday.de-AT61.name=Tag der Volksabstimmung (K)
holiday.de-AT61.date=20161010
holiday.de-AT62.name=Allerheiligen
holiday.de-AT62.date=20161101
holiday.de-AT63.name=Martin (B)
holiday.de-AT63.date=20161111
holiday.de-AT64.name=Leopold (W, N)
holiday.de-AT64.date=20161115
holiday.de-AT65.name=Mariä Empfängnis
holiday.de-AT65.date=20161208
holiday.de-AT66.name=Heiliger Abend
holiday.de-AT66.date=20161224
holiday.de-AT67.name=Christtag
holiday.de-AT67.date=20161225
holiday.de-AT68.name=Stefanitag
holiday.de-AT68.date=20161226
holiday.de-AT69.name=Silvester
holiday.de-AT69.date=20161231

101
doc/rc/holidays.de-BE.rc Normal file
View File

@@ -0,0 +1,101 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/de-BE/2014.json
# http://holidata.net/de-BE/2015.json
#
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.de-BE1.name=Neujahr
holiday.de-BE1.date=20140101
holiday.de-BE2.name=Ostern
holiday.de-BE2.date=20140420
holiday.de-BE3.name=Ostermontag
holiday.de-BE3.date=20140421
holiday.de-BE4.name=Tag der Arbeit
holiday.de-BE4.date=20140501
holiday.de-BE5.name=Christi Himmelfahrt
holiday.de-BE5.date=20140529
holiday.de-BE6.name=Pfingsten
holiday.de-BE6.date=20140608
holiday.de-BE7.name=Pfingstmontag
holiday.de-BE7.date=20140609
holiday.de-BE8.name=Nationalfeiertag
holiday.de-BE8.date=20140721
holiday.de-BE9.name=Mariä Himmelfahrt
holiday.de-BE9.date=20140815
holiday.de-BE10.name=Allerheiligen
holiday.de-BE10.date=20141101
holiday.de-BE11.name=Waffenstillstand
holiday.de-BE11.date=20141111
holiday.de-BE12.name=Weihnacht
holiday.de-BE12.date=20141225
holiday.de-BE13.name=Neujahr
holiday.de-BE13.date=20150101
holiday.de-BE14.name=Ostern
holiday.de-BE14.date=20150405
holiday.de-BE15.name=Ostermontag
holiday.de-BE15.date=20150406
holiday.de-BE16.name=Tag der Arbeit
holiday.de-BE16.date=20150501
holiday.de-BE17.name=Christi Himmelfahrt
holiday.de-BE17.date=20150514
holiday.de-BE18.name=Pfingsten
holiday.de-BE18.date=20150524
holiday.de-BE19.name=Pfingstmontag
holiday.de-BE19.date=20150525
holiday.de-BE20.name=Nationalfeiertag
holiday.de-BE20.date=20150721
holiday.de-BE21.name=Mariä Himmelfahrt
holiday.de-BE21.date=20150815
holiday.de-BE22.name=Allerheiligen
holiday.de-BE22.date=20151101
holiday.de-BE23.name=Waffenstillstand
holiday.de-BE23.date=20151111
holiday.de-BE24.name=Weihnacht
holiday.de-BE24.date=20151225
holiday.de-BE25.name=Neujahr
holiday.de-BE25.date=20160101
holiday.de-BE26.name=Ostern
holiday.de-BE26.date=20160527
holiday.de-BE27.name=Ostermontag
holiday.de-BE27.date=20160528
holiday.de-BE28.name=Tag der Arbeit
holiday.de-BE28.date=20160501
holiday.de-BE29.name=Christi Himmelfahrt
holiday.de-BE29.date=20160505
holiday.de-BE30.name=Pfingsten
holiday.de-BE30.date=20160515
holiday.de-BE31.name=Pfingstmontag
holiday.de-BE31.date=20160516
holiday.de-BE32.name=Nationalfeiertag
holiday.de-BE32.date=20160721
holiday.de-BE33.name=Mariä Himmelfahrt
holiday.de-BE33.date=20160815
holiday.de-BE34.name=Allerheiligen
holiday.de-BE34.date=20161101
holiday.de-BE35.name=Waffenstillstand
holiday.de-BE35.date=20161111
holiday.de-BE36.name=Weihnacht
holiday.de-BE36.date=20161225

137
doc/rc/holidays.de-CH.rc Normal file
View File

@@ -0,0 +1,137 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/de-CH/2014.json
# http://holidata.net/de-CH/2015.json
#
# Copyright 2006 - 2014, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.de-CH1.name=Neujahrstag
holiday.de-CH1.date=20140101
holiday.de-CH2.name=Berchtoldstag
holiday.de-CH2.date=20140102
holiday.de-CH3.name=Heilige Drei Könige
holiday.de-CH3.date=20140106
holiday.de-CH4.name=Josefstag
holiday.de-CH4.date=20140319
holiday.de-CH5.name=Karfreitag
holiday.de-CH5.date=20140418
holiday.de-CH6.name=Ostersonntag
holiday.de-CH6.date=20140420
holiday.de-CH7.name=Ostermontag
holiday.de-CH7.date=20140421
holiday.de-CH8.name=Tag der Arbeit
holiday.de-CH8.date=20140501
holiday.de-CH9.name=Auffahrt
holiday.de-CH9.date=20140529
holiday.de-CH10.name=Pfingstsonntag
holiday.de-CH10.date=20140608
holiday.de-CH11.name=Pfingstmontag
holiday.de-CH11.date=20140609
holiday.de-CH12.name=Fronleichnam
holiday.de-CH12.date=20140619
holiday.de-CH13.name=Bundesfeier
holiday.de-CH13.date=20140801
holiday.de-CH14.name=Mariä Himmelfahrt
holiday.de-CH14.date=20140815
holiday.de-CH15.name=Allerheiligen
holiday.de-CH15.date=20141101
holiday.de-CH16.name=Mariä Empfängnis
holiday.de-CH16.date=20141208
holiday.de-CH17.name=Weihnachtstag
holiday.de-CH17.date=20141225
holiday.de-CH18.name=Stephanstag
holiday.de-CH18.date=20141226
holiday.de-CH19.name=Neujahrstag
holiday.de-CH19.date=20150101
holiday.de-CH20.name=Berchtoldstag
holiday.de-CH20.date=20150102
holiday.de-CH21.name=Heilige Drei Könige
holiday.de-CH21.date=20150106
holiday.de-CH22.name=Josefstag
holiday.de-CH22.date=20150319
holiday.de-CH23.name=Karfreitag
holiday.de-CH23.date=20150403
holiday.de-CH24.name=Ostersonntag
holiday.de-CH24.date=20150405
holiday.de-CH25.name=Ostermontag
holiday.de-CH25.date=20150406
holiday.de-CH26.name=Tag der Arbeit
holiday.de-CH26.date=20150501
holiday.de-CH27.name=Auffahrt
holiday.de-CH27.date=20150514
holiday.de-CH28.name=Pfingstsonntag
holiday.de-CH28.date=20150524
holiday.de-CH29.name=Pfingstmontag
holiday.de-CH29.date=20150525
holiday.de-CH30.name=Fronleichnam
holiday.de-CH30.date=20150604
holiday.de-CH31.name=Bundesfeier
holiday.de-CH31.date=20150801
holiday.de-CH32.name=Mariä Himmelfahrt
holiday.de-CH32.date=20150815
holiday.de-CH33.name=Allerheiligen
holiday.de-CH33.date=20151101
holiday.de-CH34.name=Mariä Empfängnis
holiday.de-CH34.date=20151208
holiday.de-CH35.name=Weihnachtstag
holiday.de-CH35.date=20151225
holiday.de-CH36.name=Stephanstag
holiday.de-CH36.date=20151226
holiday.de-CH37.name=Neujahrstag
holiday.de-CH37.date=20160101
holiday.de-CH38.name=Berchtoldstag
holiday.de-CH38.date=20160102
holiday.de-CH39.name=Heilige Drei Könige
holiday.de-CH39.date=20160106
holiday.de-CH40.name=Josefstag
holiday.de-CH40.date=20160319
holiday.de-CH41.name=Karfreitag
holiday.de-CH41.date=20160325
holiday.de-CH42.name=Ostersonntag
holiday.de-CH42.date=20160327
holiday.de-CH43.name=Ostermontag
holiday.de-CH43.date=20160328
holiday.de-CH44.name=Tag der Arbeit
holiday.de-CH44.date=20160501
holiday.de-CH45.name=Auffahrt
holiday.de-CH45.date=20160505
holiday.de-CH46.name=Pfingstsonntag
holiday.de-CH46.date=20160515
holiday.de-CH47.name=Pfingstmontag
holiday.de-CH47.date=20160516
holiday.de-CH48.name=Fronleichnam
holiday.de-CH48.date=20160526
holiday.de-CH49.name=Bundesfeier
holiday.de-CH49.date=20160801
holiday.de-CH50.name=Mariä Himmelfahrt
holiday.de-CH50.date=20160815
holiday.de-CH51.name=Allerheiligen
holiday.de-CH51.date=20161101
holiday.de-CH52.name=Mariä Empfängnis
holiday.de-CH52.date=20161208
holiday.de-CH53.name=Weihnachtstag
holiday.de-CH53.date=20161225
holiday.de-CH54.name=Stephanstag
holiday.de-CH54.date=20161226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/de-DE/2012.json
# http://holidata.net/de-DE/2013.json
# http://holidata.net/de-DE/2014.json
# http://holidata.net/de-DE/2015.json
#
# Copyright 2006-2012, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2014, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -28,138 +28,116 @@
###############################################################################
holiday.de-DE1.name=Neujahr
holiday.de-DE1.date=20120101
holiday.de-DE1.date=20140101
holiday.de-DE2.name=Heilige drei Könige
holiday.de-DE2.date=20120106
holiday.de-DE3.name=Heilige drei Könige
holiday.de-DE3.date=20120106
holiday.de-DE4.name=Heilige drei Könige
holiday.de-DE4.date=20120106
holiday.de-DE5.name=Karfreitag
holiday.de-DE5.date=20120406
holiday.de-DE6.name=Ostern
holiday.de-DE6.date=20120408
holiday.de-DE7.name=Ostermontag
holiday.de-DE7.date=20120409
holiday.de-DE8.name=Erster Maifeiertag
holiday.de-DE8.date=20120501
holiday.de-DE9.name=Christi Himmelfahrt
holiday.de-DE9.date=20120517
holiday.de-DE10.name=Pfingstsonntag
holiday.de-DE10.date=20120527
holiday.de-DE11.name=Pfingstmontag
holiday.de-DE11.date=20120528
holiday.de-DE12.name=Fronleichnam
holiday.de-DE12.date=20120607
holiday.de-DE13.name=Fronleichnam
holiday.de-DE13.date=20120607
holiday.de-DE14.name=Fronleichnam
holiday.de-DE14.date=20120607
holiday.de-DE15.name=Fronleichnam
holiday.de-DE15.date=20120607
holiday.de-DE16.name=Fronleichnam
holiday.de-DE16.date=20120607
holiday.de-DE17.name=Fronleichnam
holiday.de-DE17.date=20120607
holiday.de-DE18.name=Mariä Himmelfahrt
holiday.de-DE18.date=20120815
holiday.de-DE19.name=Tag der Deutschen Einheit
holiday.de-DE19.date=20121003
holiday.de-DE20.name=Reformationstag
holiday.de-DE20.date=20121031
holiday.de-DE21.name=Reformationstag
holiday.de-DE21.date=20121031
holiday.de-DE22.name=Reformationstag
holiday.de-DE22.date=20121031
holiday.de-DE23.name=Reformationstag
holiday.de-DE23.date=20121031
holiday.de-DE24.name=Reformationstag
holiday.de-DE24.date=20121031
holiday.de-DE25.name=Allerheiligen
holiday.de-DE25.date=20121101
holiday.de-DE26.name=Allerheiligen
holiday.de-DE26.date=20121101
holiday.de-DE27.name=Allerheiligen
holiday.de-DE27.date=20121101
holiday.de-DE28.name=Allerheiligen
holiday.de-DE28.date=20121101
holiday.de-DE29.name=Allerheiligen
holiday.de-DE29.date=20121101
holiday.de-DE30.name=Buss und Bettag
holiday.de-DE30.date=20121121
holiday.de-DE31.name=Heilig Abend
holiday.de-DE31.date=20121224
holiday.de-DE32.name=Weihnachtstag
holiday.de-DE32.date=20121225
holiday.de-DE33.name=Zweiter Weihnachtstag
holiday.de-DE33.date=20121226
holiday.de-DE34.name=Sylvester
holiday.de-DE34.date=20121231
holiday.de-DE35.name=Neujahr
holiday.de-DE35.date=20130101
holiday.de-DE36.name=Heilige drei Könige
holiday.de-DE36.date=20130106
holiday.de-DE37.name=Heilige drei Könige
holiday.de-DE37.date=20130106
holiday.de-DE38.name=Heilige drei Könige
holiday.de-DE38.date=20130106
holiday.de-DE39.name=Karfreitag
holiday.de-DE39.date=20130329
holiday.de-DE40.name=Ostern
holiday.de-DE40.date=20130331
holiday.de-DE41.name=Ostermontag
holiday.de-DE41.date=20130401
holiday.de-DE42.name=Erster Maifeiertag
holiday.de-DE42.date=20130501
holiday.de-DE43.name=Christi Himmelfahrt
holiday.de-DE43.date=20130509
holiday.de-DE44.name=Pfingstsonntag
holiday.de-DE44.date=20130519
holiday.de-DE45.name=Pfingstmontag
holiday.de-DE45.date=20130520
holiday.de-DE46.name=Fronleichnam
holiday.de-DE46.date=20130530
holiday.de-DE47.name=Fronleichnam
holiday.de-DE47.date=20130530
holiday.de-DE2.date=20140106
holiday.de-DE3.name=Karfreitag
holiday.de-DE3.date=20140418
holiday.de-DE4.name=Ostern
holiday.de-DE4.date=20140420
holiday.de-DE5.name=Ostermontag
holiday.de-DE5.date=20140421
holiday.de-DE6.name=Erster Maifeiertag
holiday.de-DE6.date=20140501
holiday.de-DE7.name=Christi Himmelfahrt
holiday.de-DE7.date=20140529
holiday.de-DE8.name=Pfingstsonntag
holiday.de-DE8.date=20140608
holiday.de-DE9.name=Pfingstmontag
holiday.de-DE9.date=20140609
holiday.de-DE10.name=Fronleichnam
holiday.de-DE10.date=20140619
holiday.de-DE11.name=Mariä Himmelfahrt
holiday.de-DE11.date=20140815
holiday.de-DE12.name=Tag der Deutschen Einheit
holiday.de-DE12.date=20141003
holiday.de-DE13.name=Reformationstag
holiday.de-DE13.date=20141031
holiday.de-DE14.name=Allerheiligen
holiday.de-DE14.date=20141101
holiday.de-DE15.name=Buss und Bettag
holiday.de-DE15.date=20141119
holiday.de-DE16.name=Heilig Abend
holiday.de-DE16.date=20141224
holiday.de-DE17.name=Weihnachtstag
holiday.de-DE17.date=20141225
holiday.de-DE18.name=Zweiter Weihnachtstag
holiday.de-DE18.date=20141226
holiday.de-DE19.name=Sylvester
holiday.de-DE19.date=20141231
holiday.de-DE20.name=Neujahr
holiday.de-DE20.date=20150101
holiday.de-DE21.name=Heilige drei Könige
holiday.de-DE21.date=20150106
holiday.de-DE22.name=Karfreitag
holiday.de-DE22.date=20150403
holiday.de-DE23.name=Ostern
holiday.de-DE23.date=20150405
holiday.de-DE24.name=Ostermontag
holiday.de-DE24.date=20150406
holiday.de-DE25.name=Erster Maifeiertag
holiday.de-DE25.date=20150501
holiday.de-DE26.name=Christi Himmelfahrt
holiday.de-DE26.date=20150514
holiday.de-DE27.name=Pfingstsonntag
holiday.de-DE27.date=20150524
holiday.de-DE28.name=Pfingstmontag
holiday.de-DE28.date=20150525
holiday.de-DE29.name=Fronleichnam
holiday.de-DE29.date=20150604
holiday.de-DE30.name=Mariä Himmelfahrt
holiday.de-DE30.date=20150815
holiday.de-DE31.name=Tag der Deutschen Einheit
holiday.de-DE31.date=20151003
holiday.de-DE32.name=Reformationstag
holiday.de-DE32.date=20151031
holiday.de-DE33.name=Allerheiligen
holiday.de-DE33.date=20151101
holiday.de-DE34.name=Buss und Bettag
holiday.de-DE34.date=20151118
holiday.de-DE35.name=Heilig Abend
holiday.de-DE35.date=20151224
holiday.de-DE36.name=Weihnachtstag
holiday.de-DE36.date=20151225
holiday.de-DE37.name=Zweiter Weihnachtstag
holiday.de-DE37.date=20151226
holiday.de-DE38.name=Sylvester
holiday.de-DE38.date=20151231
holiday.de-DE39.name=Neujahr
holiday.de-DE39.date=20160101
holiday.de-DE40.name=Heilige drei Könige
holiday.de-DE40.date=20160106
holiday.de-DE41.name=Karfreitag
holiday.de-DE41.date=20160325
holiday.de-DE42.name=Ostern
holiday.de-DE42.date=20160327
holiday.de-DE43.name=Ostermontag
holiday.de-DE43.date=20160328
holiday.de-DE44.name=Erster Maifeiertag
holiday.de-DE44.date=20160501
holiday.de-DE45.name=Christi Himmelfahrt
holiday.de-DE45.date=20160505
holiday.de-DE46.name=Pfingstsonntag
holiday.de-DE46.date=20160515
holiday.de-DE47.name=Pfingstmontag
holiday.de-DE47.date=20160516
holiday.de-DE48.name=Fronleichnam
holiday.de-DE48.date=20130530
holiday.de-DE49.name=Fronleichnam
holiday.de-DE49.date=20130530
holiday.de-DE50.name=Fronleichnam
holiday.de-DE50.date=20130530
holiday.de-DE51.name=Fronleichnam
holiday.de-DE51.date=20130530
holiday.de-DE52.name=Mariä Himmelfahrt
holiday.de-DE52.date=20130815
holiday.de-DE53.name=Tag der Deutschen Einheit
holiday.de-DE53.date=20131003
holiday.de-DE54.name=Reformationstag
holiday.de-DE54.date=20131031
holiday.de-DE55.name=Reformationstag
holiday.de-DE55.date=20131031
holiday.de-DE56.name=Reformationstag
holiday.de-DE56.date=20131031
holiday.de-DE57.name=Reformationstag
holiday.de-DE57.date=20131031
holiday.de-DE58.name=Reformationstag
holiday.de-DE58.date=20131031
holiday.de-DE59.name=Allerheiligen
holiday.de-DE59.date=20131101
holiday.de-DE60.name=Allerheiligen
holiday.de-DE60.date=20131101
holiday.de-DE61.name=Allerheiligen
holiday.de-DE61.date=20131101
holiday.de-DE62.name=Allerheiligen
holiday.de-DE62.date=20131101
holiday.de-DE63.name=Allerheiligen
holiday.de-DE63.date=20131101
holiday.de-DE64.name=Buss und Bettag
holiday.de-DE64.date=20131120
holiday.de-DE65.name=Heilig Abend
holiday.de-DE65.date=20131224
holiday.de-DE66.name=Weihnachtstag
holiday.de-DE66.date=20131225
holiday.de-DE67.name=Zweiter Weihnachtstag
holiday.de-DE67.date=20131226
holiday.de-DE68.name=Sylvester
holiday.de-DE68.date=20131231
holiday.de-DE48.date=20160526
holiday.de-DE49.name=Mariä Himmelfahrt
holiday.de-DE49.date=20160815
holiday.de-DE50.name=Tag der Deutschen Einheit
holiday.de-DE50.date=20161003
holiday.de-DE51.name=Reformationstag
holiday.de-DE51.date=20161031
holiday.de-DE52.name=Allerheiligen
holiday.de-DE52.date=20161101
holiday.de-DE53.name=Buss und Bettag
holiday.de-DE53.date=20161116
holiday.de-DE54.name=Heilig Abend
holiday.de-DE54.date=20161224
holiday.de-DE55.name=Weihnachtstag
holiday.de-DE55.date=20161225
holiday.de-DE56.name=Zweiter Weihnachtstag
holiday.de-DE56.date=20161226
holiday.de-DE57.name=Sylvester
holiday.de-DE57.date=20161231

113
doc/rc/holidays.el-GR.rc Normal file
View File

@@ -0,0 +1,113 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/el-GR/2014.json
# http://holidata.net/el-GR/2015.json
#
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.el-GR1.name=Πρωτοχρονιά
holiday.el-GR1.date=20140101
holiday.el-GR2.name=Θεοφάνεια
holiday.el-GR2.date=20140106
holiday.el-GR3.name=Καθαρά Δευτέρα
holiday.el-GR3.date=20140303
holiday.el-GR4.name=Ευαγγελισμός της Θεοτόκου και Εθνική Ημέρα Ανεξαρτησίας της Ελλάδας
holiday.el-GR4.date=20140325
holiday.el-GR5.name=Πρωτομαγιά
holiday.el-GR5.date=20140418
holiday.el-GR6.name=Μεγάλη Παρασκευή
holiday.el-GR6.date=20140419
holiday.el-GR7.name=Μεγάλο Σάββατο
holiday.el-GR7.date=20140420
holiday.el-GR8.name=Πάσχα
holiday.el-GR8.date=20140421
holiday.el-GR9.name=Δευτέρα του Πάσχα
holiday.el-GR9.date=20140422
holiday.el-GR10.name=Δευτέρα του Αγίου Πνεύματος
holiday.el-GR10.date=20140609
holiday.el-GR11.name=Κοίμηση της Θεοτόκου
holiday.el-GR11.date=20140815
holiday.el-GR12.name=Ημέρα του ΌΧΙ
holiday.el-GR12.date=20141028
holiday.el-GR13.name=Χριστούγεννα
holiday.el-GR13.date=20141225
holiday.el-GR14.name=Επόμενη ημέρα Χριστουγέννων
holiday.el-GR14.date=20141226
holiday.el-GR15.name=Πρωτοχρονιά
holiday.el-GR15.date=20150101
holiday.el-GR16.name=Θεοφάνεια
holiday.el-GR16.date=20150106
holiday.el-GR17.name=Καθαρά Δευτέρα
holiday.el-GR17.date=20150223
holiday.el-GR18.name=Ευαγγελισμός της Θεοτόκου και Εθνική Ημέρα Ανεξαρτησίας της Ελλάδας
holiday.el-GR18.date=20150325
holiday.el-GR19.name=Πρωτομαγιά
holiday.el-GR19.date=20150418
holiday.el-GR20.name=Μεγάλη Παρασκευή
holiday.el-GR20.date=20150410
holiday.el-GR21.name=Μεγάλο Σάββατο
holiday.el-GR21.date=20150411
holiday.el-GR22.name=Πάσχα
holiday.el-GR22.date=20150412
holiday.el-GR23.name=Δευτέρα του Πάσχα
holiday.el-GR23.date=20150413
holiday.el-GR24.name=Δευτέρα του Αγίου Πνεύματος
holiday.el-GR24.date=20150601
holiday.el-GR25.name=Κοίμηση της Θεοτόκου
holiday.el-GR25.date=20150815
holiday.el-GR26.name=Ημέρα του ΌΧΙ
holiday.el-GR26.date=20151028
holiday.el-GR27.name=Χριστούγεννα
holiday.el-GR27.date=20151225
holiday.el-GR28.name=Επόμενη ημέρα Χριστουγέννων
holiday.el-GR28.date=20151226
holiday.el-GR29.name=Πρωτοχρονιά
holiday.el-GR29.date=20160101
holiday.el-GR30.name=Θεοφάνεια
holiday.el-GR30.date=20160106
holiday.el-GR31.name=Καθαρά Δευτέρα
holiday.el-GR31.date=20160314
holiday.el-GR32.name=Ευαγγελισμός της Θεοτόκου και Εθνική Ημέρα Ανεξαρτησίας της Ελλάδας
holiday.el-GR32.date=20160325
holiday.el-GR33.name=Πρωτομαγιά
holiday.el-GR33.date=20160418
holiday.el-GR34.name=Μεγάλη Παρασκευή
holiday.el-GR34.date=20160429
holiday.el-GR35.name=Μεγάλο Σάββατο
holiday.el-GR35.date=20160430
holiday.el-GR36.name=Πάσχα
holiday.el-GR36.date=20160501
holiday.el-GR37.name=Δευτέρα του Πάσχα
holiday.el-GR37.date=20160502
holiday.el-GR38.name=Δευτέρα του Αγίου Πνεύματος
holiday.el-GR38.date=20160620
holiday.el-GR39.name=Κοίμηση της Θεοτόκου
holiday.el-GR39.date=20160815
holiday.el-GR40.name=Ημέρα του ΌΧΙ
holiday.el-GR40.date=20161028
holiday.el-GR41.name=Χριστούγεννα
holiday.el-GR41.date=20161225
holiday.el-GR42.name=Επόμενη ημέρα Χριστουγέννων
holiday.el-GR42.date=20161226

Some files were not shown because too many files have changed in this diff Show More