diff --git a/ChangeLog.230 b/ChangeLog.230 index a4527a089..f0734186b 100644 --- a/ChangeLog.230 +++ b/ChangeLog.230 @@ -13,8 +13,10 @@ Features + Adds a new 'sync' verbosity token, which will reminds when a backlog builds up and needs a sync. + Supports IPv4 and IPv6 server addresses. + + The 'dateformat' settings now default to the ISO-8601 standard of 'Y-M-D'. Bugs + + Fixed bug #1197 so that 'tasksh' now recognized Ctrl-D to exit. + Fixed bug so that 'limit:page' now considers footnote messages. ------ old releases ------------------------------ diff --git a/NEWS b/NEWS index cc8c819eb..da9869274 100644 --- a/NEWS +++ b/NEWS @@ -3,6 +3,7 @@ New Features in taskwarrior 2.3.0 - New task server sync capabilities. - New shell with Readline support. + - The 'dateformat' settings now default to the ISO-8601 standard of 'Y-M-D'. New commands in taskwarrior 2.3.0 diff --git a/cmake/Modules/FindReadline.cmake b/cmake/Modules/FindReadline.cmake index 8180dd0c3..83fe7bca0 100644 --- a/cmake/Modules/FindReadline.cmake +++ b/cmake/Modules/FindReadline.cmake @@ -1,8 +1,80 @@ -# GNU Readline library finder -if (READLINE_INCLUDE_DIR AND READLINE_LIBRARIES) - set (READLINE_FOUND TRUE) -else (READLINE_INCLUDE_DIR AND READLINE_LIBRARIES) - find_path (READLINE_INCLUDE_DIR readline/readline.h) - find_library (READLINE_LIBRARIES readline) - mark_as_advanced (READLINE_INCLUDE_DIR READLINE_LIBRARIES) -endif (READLINE_INCLUDE_DIR AND READLINE_LIBRARIES) +# - 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) + FIND_PATH (READLINE_INCLUDE_DIR NAMES readline/readline.h PATHS + /sw/include + /opt/local/include + /opt/include + /usr/local/include + /usr/include/ + NO_DEFAULT_PATH + ) +ENDIF (APPLE) +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) + FIND_LIBRARY (READLINE_readline_LIBRARY NAMES readline PATHS + /sw/lib + /opt/local/lib + /opt/lib + /usr/local/lib + /usr/lib + NO_DEFAULT_PATH + ) +ENDIF (APPLE) +FIND_LIBRARY (READLINE_readline_LIBRARY NAMES readline) + +# Sometimes readline really needs ncurses +IF (APPLE) + FIND_LIBRARY (READLINE_ncurses_LIBRARY NAMES ncurses PATHS + /sw/lib + /opt/local/lib + /opt/lib + /usr/local/lib + /usr/lib + NO_DEFAULT_PATH + ) +ENDIF (APPLE) +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) diff --git a/doc/man/taskrc.5.in b/doc/man/taskrc.5.in index 3c3ec2fce..607f80160 100644 --- a/doc/man/taskrc.5.in +++ b/doc/man/taskrc.5.in @@ -468,19 +468,19 @@ Enables the extension system. Defaults to on. .SS DATES .TP -.B dateformat=m/d/Y +.B dateformat=Y-M-D .TP -.B dateformat.report=m/d/Y +.B dateformat.report= .TP .B dateformat.holiday=YMD .TP -.B dateformat.edit=m/d/Y H:N:S +.B dateformat.edit=Y-M-D H:N:S .TP -.B dateformat.info=m/d/Y H:N:S +.B dateformat.info=Y-M-D H:N:S .TP -.B dateformat.annotation=m/d/Y +.B dateformat.annotation= .TP -.B report.X.dateformat=m/d/Y +.B report.X.dateformat=Y-M-D This is a string of characters that defines how taskwarrior formats date values. The precedence order for the configuration variable is report.X.dateformat then dateformat.report then dateformat for formating the due dates in reports. @@ -489,7 +489,8 @@ will be applied to the date. Entered dates as well as all other displayed dates in reports are formatted according to dateformat. -The default value is: m/d/Y. The string can contain the characters: +The default value is the ISO-8601 standard: Y-M-D. The string can contain the +characters: .RS .RS diff --git a/doc/man/tasksh.1 b/doc/man/tasksh.1 index 7e187b4e9..5eab9712c 100644 --- a/doc/man/tasksh.1 +++ b/doc/man/tasksh.1 @@ -149,7 +149,7 @@ ID Project Pri Due Active Age Description .RE .SH "CREDITS & COPYRIGHTS" -Copyright (C) 2006 \- 2012 P. Beckingham, F. Hernandez. +Copyright (C) 2006 \- 2013 P. Beckingham, F. Hernandez. This man page was originally written by Federico Hernandez. diff --git a/doc/misc/tutorial/01_intro/script.txt b/doc/misc/tutorial/01_intro/script.txt new file mode 100644 index 000000000..a48993903 --- /dev/null +++ b/doc/misc/tutorial/01_intro/script.txt @@ -0,0 +1,65 @@ +[Make window 116x32 for movie recording, light text, dark background] + +On the left are the typed commands. On the right is the audio track. Where the +left and right are aligned, the audio should match the commands. + + +---------------------------------------- Intro ----------------------------------------------------- + +# Hi. Hello, and welcome to Taskwarrior. This is the first of + many tutorials, and covers first-time use. + + As a first-time user, you are going to need a configuration + file and a data directory. Taskwarrior will create both of + these for you, in your home directory, the first time you + run taskwarrior. + +task version Answer 'yes' to the question. After creating the missing + file and directory, you'll see the current version + displayed. + +cat ~/.taskrc The configuration file contains very little. This is + because Taskwarrior has a built-in set of sensible defaults + and the configuration file just contains overrides to those + defaults. + +ls -l ~/.task The task data directory is empty. That's because we have + added no tasks. Typically you won't need to look in that + directory. + + --- + + Let's get started with tasks. Here is the 30-second + tutorial on basic takwarrior usage. + +task add Read task documents later We Add two tasks. +task add priority:H Pay bills + + Easy. Do you see that second one has a High priority? + +task ls Now let's look at those tasks. They are ordered by + priority. Let's mark number 2 as done: + +task 2 done +task ls + + Task 2 is now gone. Now we can delete that remaining task, + because, well, why bother now we are already using task: + +task 1 delete +task ls + + And that's all you *need* to know. These four commands + will allow you to use taskwarrior effectively. If you are + new to taskwarrior, it is recommended that you stop here, + and go manage your task lists. We don't want you to be + overwhelmed, when what you really need is a way to + organize and get things done. + + When you are comfortable with basic taskwarrior usage, + there are many other features you can learn about. While + you are not expected to learn all of them, or even find + them useful, you might just find exactly what you need. + +---------------------------------------- End ------------------------------------------------------- + diff --git a/doc/misc/tutorial/02_help/script.txt b/doc/misc/tutorial/02_help/script.txt new file mode 100644 index 000000000..a4650ed69 --- /dev/null +++ b/doc/misc/tutorial/02_help/script.txt @@ -0,0 +1,55 @@ +[Make window 116x32 for movie recording, light text, dark background] + +On the left are the typed commands. On the right is the audio track. Where the +left and right are aligned, the audio should match the commands. + + +---------------------------------------- Help ------------------------------------------------------ + + There are several forms of help available. We will look at + the various options. + +# http//taskwarrior.org If you find you have any questions, you can get answers in + several ways. The website has user forums, issue tracking + and online documentation, including this tutorial. + + There is also a command reference PDF that we recommend + you download and use. It shows all the supported commands + and options at a glance. + +# IRC #taskwarrior You can join the Taskwarrior IRC channel to pose questions, + or join in the discussion. + +# support@taskwarrior.org Or you can submit your request by email. The various + support options are all volunteer-run. + +task help There is a built in help page which summarizes commands, + reports and other details. + +man task Finally, you have several man pages installed that contain + all the written documentation, including this tutorial. + The main man page offers syntax and command help. + +man taskrc The taskrc page describes all the supported configuration + options (and there are many), which you can use to + customize the behavior of taskwarrior. + +man task-color Use of color, color rules and themes are described in the + task color page. + +man task-tutorial The tutorial faq is simply an aggregated collection of all + the tutorials. + +man task-sync This page describes the various sync alternatives, with + examples to help you keep your tasks lists up to date. + + --- + + If you find a bug, or even suspect you found a bug, please + let us know. Ideally you would send an email to + support@taskwarrior.org, describe the problem, and include +task diagnostics information about your installation. The 'diagnostics' + command provides the details we might need to diagnose the + problem. + +---------------------------------------- End ------------------------------------------------------- diff --git a/doc/misc/tutorial/NN_configuration/script.txt b/doc/misc/tutorial/NN_configuration/script.txt new file mode 100644 index 000000000..cc82aa0e9 --- /dev/null +++ b/doc/misc/tutorial/NN_configuration/script.txt @@ -0,0 +1,64 @@ +[Make window 116x32 for movie recording, light text, dark background] + +On the left are the typed commands. On the right is the audio track. Where the +left and right are aligned, the audio should match the commands. + + +---------------------------------------- Configuration --------------------------------------------- + +cat ~/.taskrc The taskwarrior configuration file is minimal. This means + it contains only what is needed to override the default + settings. Initially you see that the config file contains + just one setting which points to your data directory. + +task show The 'show' command displays all the configuration settings + with their current values. These are all described in the + taskrc man page. + +task show hyph You can provide a pattern, to limit the results to only + settings that match the pattern. + +task config hypenate off The config command is used to modify the configuration, + here we are turning off hyphenation. Notice that changes + require confirmation. + +task show hyph Now when we look at the setting, we see that it is now + highlighted to indicate that it not longer has the default + value. + +task config hyphenate on We can turn that setting back on. + +task config hyphenate Alternatively we can just remove the setting, and rely on + the default. This is a better choice because it de- + clutters your configuration file. + +task config answer 42 In this example, we set the configuration variable 'answer' + to have a value of 42. + +task show answer The 'show' command indicates that the setting is not + recognized. This could indicate a mistake with the setting + name. It is harmless to have unrecognized settings, but + also pointless. + +task config answer '' Specifying an empty value using quotes is how you would + set a blank value without restoring default settings. + +task config answer In this case, deleting the setting is correct. + + --- + +task rc.hyphenate=off list A very powerful feature is the ability to override the + configuration variables temporarily. Here we are running + the 'list' report with hyphenation temporarily disabled. + +task rc.data.location=/other/path list You can also override the data directory to use a different + task list ... + +task rc:~/.other_taskrc list Or you can override the configuration file completely. + +TASKDATA=/other/path task list The TASKDATA environment variable can also be used to + specify an alternate data directory, and ... + +TASKRC=~/.other_taskrc list The TASKRC variable can override the configuration file. + +---------------------------------------- End ------------------------------------------------------- diff --git a/doc/misc/tutorial/README b/doc/misc/tutorial/README new file mode 100644 index 000000000..316d65088 --- /dev/null +++ b/doc/misc/tutorial/README @@ -0,0 +1,34 @@ +This is an outline of the tutorial contents. The numbered directories indicate +the general order in which the tutorials should be viewed, because the commands +used build on prior knowledge. + +The non-numbered directories just represent the sections of the old tutorial. +Because of the old 15-minute limit on video size, the old tutorial was broken +into two parts, and edited down so that it fit. This new effort avoids this by +having many, smaller sections that explore features at a greater depth. + +01_intro + First time use + Setup + version + 30-second Tutorial + add + ls + done + delete + +02_help + Support options + Web site + Command Reference + IRC + Email + Man pages + Reporting bugs + +NN_configuration + show command + config command + rc overrides + TASKDATA, TASKRC + diff --git a/doc/misc/tutorial/configuration/run.200 b/doc/misc/tutorial/configuration/run.200 deleted file mode 100755 index bfcfb2bec..000000000 --- a/doc/misc/tutorial/configuration/run.200 +++ /dev/null @@ -1,520 +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 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 - -# 18 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 - -# 19 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 - -# 20 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 - -# 21 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 - -# 22 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 - -# 23 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 - -# 24 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 <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 <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 - -# 25 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 - -# 26 Wrap up -echo Wrap up -------------------------------------------------------------- -echo $ task version -task version - -exit - diff --git a/doc/misc/tutorial/configuration/script.200.txt b/doc/misc/tutorial/configuration/script.200.txt deleted file mode 100644 index 0d745f9d5..000000000 --- a/doc/misc/tutorial/configuration/script.200.txt +++ /dev/null @@ -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 - diff --git a/doc/misc/tutorial/extra.txt b/doc/misc/tutorial/extra.txt index f4f9544ca..907f9b385 100644 --- a/doc/misc/tutorial/extra.txt +++ b/doc/misc/tutorial/extra.txt @@ -1,30 +1,41 @@ - Calendar trick ln -s `which task` ./cal ./cal -Synch +Metadata + +Sync push pull merge + sync (needs 2.3.0 & task server) -Logo +Logo? Version Verbosity + on + off + nothing 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 +Setup + Where the files are + themes + external scripts + TASKDATA= + TASKRC= + http://tasktools.org/latest + +Reporting bugs + +Holidays + diff --git a/doc/misc/tutorial/help/run.200 b/doc/misc/tutorial/help/run.200 deleted file mode 100755 index bfcfb2bec..000000000 --- a/doc/misc/tutorial/help/run.200 +++ /dev/null @@ -1,520 +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 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 - -# 18 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 - -# 19 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 - -# 20 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 - -# 21 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 - -# 22 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 - -# 23 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 - -# 24 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 <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 <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 - -# 25 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 - -# 26 Wrap up -echo Wrap up -------------------------------------------------------------- -echo $ task version -task version - -exit - diff --git a/doc/misc/tutorial/help/script.200.txt b/doc/misc/tutorial/help/script.200.txt deleted file mode 100644 index d19a11131..000000000 --- a/doc/misc/tutorial/help/script.200.txt +++ /dev/null @@ -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. - diff --git a/doc/misc/tutorial/intro/run.200 b/doc/misc/tutorial/intro/run.200 deleted file mode 100755 index bfcfb2bec..000000000 --- a/doc/misc/tutorial/intro/run.200 +++ /dev/null @@ -1,520 +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 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 - -# 18 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 - -# 19 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 - -# 20 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 - -# 21 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 - -# 22 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 - -# 23 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 - -# 24 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 <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 <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 - -# 25 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 - -# 26 Wrap up -echo Wrap up -------------------------------------------------------------- -echo $ task version -task version - -exit - diff --git a/doc/misc/tutorial/intro/script.200.txt b/doc/misc/tutorial/intro/script.200.txt deleted file mode 100644 index 4c484f2c5..000000000 --- a/doc/misc/tutorial/intro/script.200.txt +++ /dev/null @@ -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 - diff --git a/doc/misc/tutorial/shell/script.200.txt b/doc/misc/tutorial/shell/script.txt similarity index 97% rename from doc/misc/tutorial/shell/script.200.txt rename to doc/misc/tutorial/shell/script.txt index b252661d6..5e9c9fb34 100644 --- a/doc/misc/tutorial/shell/script.200.txt +++ b/doc/misc/tutorial/shell/script.txt @@ -18,5 +18,3 @@ task> quit ---------------------------------------- End ------------------------------------------------------- -Show use of rlwrap. - diff --git a/src/Config.cpp b/src/Config.cpp index a21def780..1adfa5c0d 100644 --- a/src/Config.cpp +++ b/src/Config.cpp @@ -108,12 +108,12 @@ std::string Config::_defaults = "abbreviation.minimum=2 # Shortest allowed abbreviation\n" "\n" "# Dates\n" - "dateformat=m/d/Y # Preferred input and display date format\n" + "dateformat=Y-M-D # Preferred input and display date format\n" "dateformat.holiday=YMD # Preferred input date format for holidays\n" - "dateformat.edit=m/d/Y H:N:S # Preferred display date format when editing\n" - "dateformat.info=m/d/Y H:N:S # Preferred display date format for information\n" - "dateformat.report=m/d/Y # Preferred display date format for reports\n" - "dateformat.annotation=m/d/Y # Preferred display date format for annotations\n" + "dateformat.edit=Y-M-D H:N:S # Preferred display date format when editing\n" + "dateformat.info=Y-M-D H:N:S # Preferred display date format for information\n" + "dateformat.report= # Preferred display date format for reports\n" + "dateformat.annotation= # Preferred display date format for annotations\n" "weekstart=Sunday # Sunday or Monday only\n" "displayweeknumber=yes # Show week numbers on calendar\n" "due=7 # Task is considered due in 7 days\n" diff --git a/src/shell/Readline.cpp b/src/shell/Readline.cpp index eaddafd10..de003cd4a 100644 --- a/src/shell/Readline.cpp +++ b/src/shell/Readline.cpp @@ -44,6 +44,11 @@ std::string Readline::gets (const std::string& prompt) #ifdef HAVE_READLINE // Get a line from the user. char *line_read = readline (prompt.c_str ()); + if (!line_read) // Exit when CTRL-D is pressed + { + std::cout << "exit\n"; + return "exit"; + } #else std::string line_read; std::cout << prompt; @@ -52,11 +57,11 @@ std::string Readline::gets (const std::string& prompt) #ifdef HAVE_READLINE // If the line has any text in it, save it on the history. - if (line_read && *line_read) + if (*line_read) add_history (line_read); #endif - std::string ret (line_read); + std::string ret(line_read); #ifdef HAVE_READLINE free (line_read); @@ -66,7 +71,7 @@ std::string Readline::gets (const std::string& prompt) } //////////////////////////////////////////////////////////////////////////////// -bool Readline::interactive_mode (const std::istream& in) +bool Readline::interactiveMode (const std::istream& in) { return (&in == &std::cin && isatty (0) == 1); } @@ -74,7 +79,9 @@ bool Readline::interactive_mode (const std::istream& in) //////////////////////////////////////////////////////////////////////////////// Wordexp::Wordexp (const std::string &str) { - wordexp (str.c_str (), &_p, 0); + std::string tmpStr(str); + escapeSpecialChars(tmpStr); + wordexp (tmpStr.c_str (), &_p, 0); } //////////////////////////////////////////////////////////////////////////////// @@ -96,3 +103,20 @@ char** Wordexp::argv () } //////////////////////////////////////////////////////////////////////////////// +char* Wordexp::argv (int i) +{ + return _p.we_wordv[i]; +} + +//////////////////////////////////////////////////////////////////////////////// +void Wordexp::escapeSpecialChars(std::string& str) +{ + size_t i = 0; + while ((i = str.find_first_of ("$*?!|&;<>(){}~#@", i)) != std::string::npos) + { + str.insert(i, 1, '\\'); + i += 2; + } +} + +//////////////////////////////////////////////////////////////////////////////// diff --git a/src/shell/Readline.h b/src/shell/Readline.h index 648022e79..ff634cbb6 100644 --- a/src/shell/Readline.h +++ b/src/shell/Readline.h @@ -38,7 +38,7 @@ class Readline { public: static std::string gets (const std::string& prompt); - static bool interactive_mode (const std::istream& in); + static bool interactiveMode (const std::istream& in); private: // No construction or destruction. @@ -52,11 +52,14 @@ private: class Wordexp { public: - Wordexp (const std::string &str); + Wordexp (const std::string& str); ~Wordexp (); int argc (); char** argv (); + char* argv (int i); + + void escapeSpecialChars(std::string& str); private: wordexp_t _p; diff --git a/src/shell/main.cpp b/src/shell/main.cpp index 5d554c30e..340da8a3b 100644 --- a/src/shell/main.cpp +++ b/src/shell/main.cpp @@ -31,7 +31,6 @@ #include #include #include -#include #ifdef CYGWIN #include @@ -115,8 +114,8 @@ int main (int argc, const char** argv) std::cout << (context.color () ? bold.colorize (PACKAGE_STRING) : PACKAGE_STRING) << " shell\n\n" - << STRING_CMD_SHELL_HELP1 << "\n" - << STRING_CMD_SHELL_HELP2 << "\n" + << STRING_CMD_SHELL_HELP1 << '\n' + << STRING_CMD_SHELL_HELP2 << '\n' << STRING_CMD_SHELL_HELP3 << "\n\n"; // Make a copy because context.clear will delete them. @@ -147,9 +146,13 @@ int main (int argc, const char** argv) std::string prompt (context.config.get ("shell.prompt") + " "); context.clear (); - if (Readline::interactive_mode (in)) + if (Readline::interactiveMode (in)) { input = Readline::gets (prompt); + + // if a string has nothing but whitespaces, ignore it + if (input.find_first_not_of (" \t") == std::string::npos) + continue; } else { @@ -159,7 +162,7 @@ int main (int argc, const char** argv) if (input.find_first_not_of (" \t") == std::string::npos) continue; - std::cout << prompt << input << "\n"; + std::cout << prompt << input << '\n'; } try @@ -169,7 +172,7 @@ int main (int argc, const char** argv) for (int i = 0; i < w.argc (); ++i) { if (std::find (quit_commands.begin (), quit_commands.end (), - lowerCase (w.argv ()[i])) != quit_commands.end ()) + lowerCase (w.argv (i))) != quit_commands.end ()) { context.clearMessages (); return 0; @@ -183,13 +186,13 @@ int main (int argc, const char** argv) catch (const std::string& error) { - std::cerr << error << "\n"; + std::cerr << error << '\n'; return -1; } catch (...) { - std::cerr << STRING_UNKNOWN_ERROR << "\n"; + std::cerr << STRING_UNKNOWN_ERROR << '\n'; return -2; } } diff --git a/test/annotate.t b/test/annotate.t index 01c58104b..d055ba1c0 100755 --- a/test/annotate.t +++ b/test/annotate.t @@ -40,7 +40,8 @@ if (open my $fh, '>', 'annotate.rc') "report.rrr.description=rrr\n", "report.rrr.columns=id,description\n", "report.rrr.sort=id+\n", - "color=off\n"; + "color=off\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'annotate.rc', 'Created annotate.rc'); } diff --git a/test/bug.1036.t b/test/bug.1036.t index 782f56ded..18a8bb499 100755 --- a/test/bug.1036.t +++ b/test/bug.1036.t @@ -33,7 +33,8 @@ use Test::More tests => 4; # Create the rc file. if (open my $fh, '>', 'bug.rc') { - print $fh "data.location=.\n"; + print $fh "data.location=.\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'bug.rc', 'Created bug.rc'); } diff --git a/test/bug.368.t b/test/bug.368.t index db0f0926a..2b2a3c9b0 100755 --- a/test/bug.368.t +++ b/test/bug.368.t @@ -34,7 +34,7 @@ use Test::More tests => 4; if (open my $fh, '>', 'bug.rc') { print $fh "data.location=.\n", - "dateformat=m/d/Y\n", + "dateformat.info=m/d/Y\n", "confirmation=no\n"; close $fh; ok (-r 'bug.rc', 'Created bug.rc'); diff --git a/test/bug.628.t b/test/bug.628.t index d3ff20f94..ddfa0ada7 100755 --- a/test/bug.628.t +++ b/test/bug.628.t @@ -47,7 +47,7 @@ qx{../src/task rc:bug.rc add wait:\\"Wed Jan 01 2020\\" A buggy task 2>&1}; # Result: Immediately delete the created task my $output = qx{../src/task rc:bug.rc waiting 2>&1}; -like ($output, qr/1\/1\/2020/ms, 'a b D Y dateformat correctly parsed.'); +like ($output, qr/Jan 01 2020/ms, 'a b D Y dateformat correctly parsed.'); # Cleanup. unlink qw(pending.data completed.data undo.data backlog.data bug.rc); diff --git a/test/bug.annual.t b/test/bug.annual.t index 0cc8191ce..83edc9feb 100755 --- a/test/bug.annual.t +++ b/test/bug.annual.t @@ -33,7 +33,8 @@ use Test::More tests => 13; # Create the rc file. if (open my $fh, '>', 'annual.rc') { - print $fh "data.location=.\n"; + print $fh "data.location=.\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'annual.rc', 'Created annual.rc'); } diff --git a/test/bug.before.t b/test/bug.before.t index cd7e3046b..e10fab9ab 100755 --- a/test/bug.before.t +++ b/test/bug.before.t @@ -36,7 +36,8 @@ if (open my $fh, '>', 'before.rc') { print $fh "data.location=.\n", "confirmation=no\n", - "dateformat=m/d/Y\n"; + "dateformat=m/d/Y\n", + "dateformat.info=m/d/Y\n"; close $fh; ok (-r 'before.rc', 'Created before.rc'); } diff --git a/test/bug.range.t b/test/bug.range.t index 6fda24427..6adb4752a 100755 --- a/test/bug.range.t +++ b/test/bug.range.t @@ -34,7 +34,8 @@ use Test::More tests => 5; if (open my $fh, '>', 'range.rc') { print $fh "data.location=.\n", - "confirmation=no\n"; + "confirmation=no\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'range.rc', 'Created range.rc'); } diff --git a/test/color.due.t b/test/color.due.t index 3fb83a4e2..b96bb916b 100755 --- a/test/color.due.t +++ b/test/color.due.t @@ -35,7 +35,8 @@ if (open my $fh, '>', 'color.rc') { print $fh "data.location=.\n", "color.due=red\n", - "_forcecolor=1\n"; + "_forcecolor=1\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'color.rc', 'Created color.rc'); } diff --git a/test/color.duetoday.t b/test/color.duetoday.t index e74222c48..c8e7d68ce 100755 --- a/test/color.duetoday.t +++ b/test/color.duetoday.t @@ -35,7 +35,8 @@ if (open my $fh, '>', 'color.rc') { print $fh "data.location=.\n", "color.due.today=red\n", - "_forcecolor=1\n"; + "_forcecolor=1\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'color.rc', 'Created color.rc'); } diff --git a/test/color.overdue.t b/test/color.overdue.t index 3ddd8297c..49d626dc9 100755 --- a/test/color.overdue.t +++ b/test/color.overdue.t @@ -35,7 +35,8 @@ if (open my $fh, '>', 'color.rc') { print $fh "data.location=.\n", "color.overdue=red\n", - "_forcecolor=1\n"; + "_forcecolor=1\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'color.rc', 'Created color.rc'); } diff --git a/test/date.iso.t b/test/date.iso.t index d1eca0234..d1a7dfe9e 100755 --- a/test/date.iso.t +++ b/test/date.iso.t @@ -34,7 +34,7 @@ use Test::More tests => 4; if (open my $fh, '>', 'iso.rc') { print $fh "data.location=.\n", - "dateformat=m/d/Y\n"; + "dateformat.info=m/d/Y\n"; close $fh; ok (-r 'iso.rc', 'Created iso.rc'); } diff --git a/test/default.t b/test/default.t index cebe9e83e..b591a78ab 100755 --- a/test/default.t +++ b/test/default.t @@ -37,7 +37,8 @@ if (open my $fh, '>', 'default.rc') "default.command=list\n", "default.project=PROJECT\n", "default.priority=M\n", - "default.due=eom\n"; + "default.due=eom\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'default.rc', 'Created default.rc'); } diff --git a/test/denotate.t b/test/denotate.t index 9b44d822a..dbae50684 100755 --- a/test/denotate.t +++ b/test/denotate.t @@ -39,7 +39,8 @@ if (open my $fh, '>', 'denotate.rc') "confirmation=off\n", "report.rrr.description=rrr\n", "report.rrr.columns=id,description\n", - "report.rrr.sort=id+\n"; + "report.rrr.sort=id+\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'denotate.rc', 'Created denotate.rc'); } diff --git a/test/import.t b/test/import.t index 2dcfd80f8..3108190ec 100755 --- a/test/import.t +++ b/test/import.t @@ -33,7 +33,8 @@ use Test::More tests => 13; # Create the rc file. if (open my $fh, '>', 'import.rc') { - print $fh "data.location=.\n"; + print $fh "data.location=.\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'import.rc', 'Created import.rc'); } diff --git a/test/import.yaml.t b/test/import.yaml.t index 5d50668fa..135d9335f 100755 --- a/test/import.yaml.t +++ b/test/import.yaml.t @@ -33,7 +33,8 @@ use Test::More tests => 16; # Create the rc file. if (open my $fh, '>', 'import.rc') { - print $fh "data.location=.\n"; + print $fh "data.location=.\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'import.rc', 'Created import.rc'); } diff --git a/test/roundtrip.t b/test/roundtrip.t index fcd7e8b6e..b2cd1a734 100755 --- a/test/roundtrip.t +++ b/test/roundtrip.t @@ -36,7 +36,8 @@ if (open my $fh, '>', 'roundtrip.rc') print $fh "data.location=.\n", "verbose=off\n", "confirmation=no\n", - "defaultwidth=100\n"; + "defaultwidth=100\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'roundtrip.rc', 'Created roundtrip.rc'); } diff --git a/test/sequence.t b/test/sequence.t index b71cd35d7..10e2adc02 100755 --- a/test/sequence.t +++ b/test/sequence.t @@ -34,7 +34,8 @@ use Test::More tests => 26; if (open my $fh, '>', 'seq.rc') { print $fh "data.location=.\n", - "confirmation=off\n"; + "confirmation=off\n", + "dateformat.annotation=m/d/Y\n"; close $fh; ok (-r 'seq.rc', 'Created seq.rc'); } diff --git a/test/uda_date.t b/test/uda_date.t index 5eacfda34..2430f0c0a 100755 --- a/test/uda_date.t +++ b/test/uda_date.t @@ -40,7 +40,8 @@ if (open my $fh, '>', 'uda.rc') "report.uda.description=UDA Test\n", "report.uda.columns=id,extra,description\n", "report.uda.sort=extra,description\n", - "report.uda.labels=ID,Extra,Description\n"; + "report.uda.labels=ID,Extra,Description\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'uda.rc', 'Created uda.rc'); } diff --git a/test/uuid.t b/test/uuid.t index 12bd849a8..ab2cac603 100755 --- a/test/uuid.t +++ b/test/uuid.t @@ -33,7 +33,8 @@ use Test::More tests => 26; # Create the rc file. if (open my $fh, '>', 'uuid.rc') { - print $fh "data.location=.\n"; + print $fh "data.location=.\n", + "dateformat=m/d/Y\n"; close $fh; ok (-r 'uuid.rc', 'Created uuid.rc'); }