diff --git a/src/commands/CmdBurndown.cpp b/src/commands/CmdBurndown.cpp index ef11f4b85..a9eab1ac6 100644 --- a/src/commands/CmdBurndown.cpp +++ b/src/commands/CmdBurndown.cpp @@ -933,7 +933,7 @@ CmdBurndownMonthly::CmdBurndownMonthly () { _keyword = "burndown.monthly"; _usage = "task burndown.monthly []"; - _description = "Shows a graphical burndown chart, by month."; + _description = "Shows a graphical burndown chart, by month"; _read_only = true; _displays_id = false; } @@ -971,7 +971,7 @@ CmdBurndownWeekly::CmdBurndownWeekly () { _keyword = "burndown.weekly"; _usage = "task burndown.weekly []"; - _description = "Shows a graphical burndown chart, by week."; + _description = "Shows a graphical burndown chart, by week"; _read_only = true; _displays_id = false; } @@ -1009,7 +1009,7 @@ CmdBurndownDaily::CmdBurndownDaily () { _keyword = "burndown.daily"; _usage = "task burndown.daily []"; - _description = "Shows a graphical burndown chart, by day."; + _description = "Shows a graphical burndown chart, by day"; _read_only = true; _displays_id = false; } diff --git a/src/en-US.h b/src/en-US.h index 148937431..75f40cc8f 100644 --- a/src/en-US.h +++ b/src/en-US.h @@ -171,8 +171,8 @@ // commands/Cmd* #define STRING_CMD_CONFLICT "Custom report '{1}' conflicts with built-in task command." -#define STRING_CMD_VERSION_USAGE "Shows the taskwarrior version number." -#define STRING_CMD_VERSION_USAGE2 "Shows only the taskwarrior version number." +#define STRING_CMD_VERSION_USAGE "Shows the taskwarrior version number" +#define STRING_CMD_VERSION_USAGE2 "Shows only the taskwarrior version number" #define STRING_CMD_VERSION_GPL "Taskwarrior may be copied only under the terms of the GNU General Public License, which may be found in the taskwarrior source kit." #define STRING_CMD_VERSION_DOCS "Documentation for taskwarrior can be found using 'man task', 'man taskrc', 'man task-tutorial', 'man task-color', 'man task-sync', 'man task-faq' or at http://taskwarrior.org" #define STRING_CMD_VERSION_BUILT "{1} {2} built for " @@ -182,29 +182,29 @@ #define STRING_CMD_LOGO_USAGE "Displays the Taskwarrior logo" #define STRING_CMD_LOGO_COLOR_REQ "The logo command requires that color support is enabled." #define STRING_CMD_EXEC_USAGE "Executes external commands and scripts" -#define STRING_CMD_URGENCY_USAGE "Displays the urgency measure of a task." +#define STRING_CMD_URGENCY_USAGE "Displays the urgency measure of a task" #define STRING_CMD_URGENCY_RESULT "task {1} urgency {2}" -#define STRING_CMD_ADD_USAGE "Adds a new task." +#define STRING_CMD_ADD_USAGE "Adds a new task" #define STRING_CMD_ADD_FEEDBACK "Created task {1}." #define STRING_CMD_ADD_BAD_ATTRIBUTE "Unrecognized attribute '{1}'." #define STRING_CMD_MOD_UNEXPECTED "Unexpected argument '{1}' found while modifying a task." -#define STRING_CMD_LOG_USAGE "Adds a new task that is already completed." +#define STRING_CMD_LOG_USAGE "Adds a new task that is already completed" #define STRING_CMD_LOG_NO_RECUR "You cannot log recurring tasks." #define STRING_CMD_LOG_NO_WAITING "You cannot log waiting tasks." #define STRING_CMD_LOG_LOGGED "Logged task." -#define STRING_CMD_IDS_USAGE_RANGE "Shows only the IDs of matching tasks, in the form of a range." -#define STRING_CMD_IDS_USAGE_LIST "Shows only the IDs of matching tasks, in the form of a list." -#define STRING_CMD_IDS_USAGE_ZSH "Shows the IDs and descriptions of matching tasks." -#define STRING_CMD_EXPORT_USAGE "Exports tasks in JSON format." -#define STRING_CMD_INFO_USAGE "Shows all data and metadata for specified tasks." +#define STRING_CMD_IDS_USAGE_RANGE "Shows only the IDs of matching tasks, in the form of a range" +#define STRING_CMD_IDS_USAGE_LIST "Shows only the IDs of matching tasks, in the form of a list" +#define STRING_CMD_IDS_USAGE_ZSH "Shows the IDs and descriptions of matching tasks" +#define STRING_CMD_EXPORT_USAGE "Exports tasks in JSON format" +#define STRING_CMD_INFO_USAGE "Shows all data and metadata for specified tasks" #define STRING_CMD_INFO_BLOCKED "This task blocked by" #define STRING_CMD_INFO_BLOCKING "This task is blocking" #define STRING_CMD_INFO_RECUR_UNTIL "Recur until" #define STRING_CMD_INFO_MODIFICATION "Modification" #define STRING_CMD_INFO_TOTAL_ACTIVE "Total active time" -#define STRING_CMD_UNDO_USAGE "Reverts the most recent change to a task." +#define STRING_CMD_UNDO_USAGE "Reverts the most recent change to a task" #define STRING_CMD_UNDO_MODS "The undo command does not allow further task modification." -#define STRING_CMD_STATS_USAGE "Shows task database statistics." +#define STRING_CMD_STATS_USAGE "Shows task database statistics" #define STRING_CMD_STATS_CATEGORY "Category" #define STRING_CMD_STATS_DATA "Data" #define STRING_CMD_STATS_TOTAL "Total" @@ -223,32 +223,32 @@ #define STRING_CMD_STATS_AVG_PEND "Average time pending" #define STRING_CMD_STATS_DESC_LEN "Average desc length" #define STRING_CMD_STATS_CHARS "{1} characters" -#define STRING_CMD_REPORTS_USAGE "Lists all supported reports." +#define STRING_CMD_REPORTS_USAGE "Lists all supported reports" #define STRING_CMD_REPORTS_REPORT "Report" #define STRING_CMD_REPORTS_DESC "Description" #define STRING_CMD_REPORTS_SUMMARY "{1} reports" -#define STRING_CMD_TAGS_USAGE "Shows a list of all tags used." -#define STRING_CMD_COMTAGS_USAGE "Shows only a list of all tags used, for autocompletion purposes." +#define STRING_CMD_TAGS_USAGE "Shows a list of all tags used" +#define STRING_CMD_COMTAGS_USAGE "Shows only a list of all tags used, for autocompletion purposes" #define STRING_CMD_TAGS_SINGLE "1 tag" #define STRING_CMD_TAGS_PLURAL "{1} tags" #define STRING_CMD_TAGS_NO_TAGS "No tags." -#define STRING_CMD_HISTORY_USAGE_M "Shows a report of task history, by month." +#define STRING_CMD_HISTORY_USAGE_M "Shows a report of task history, by month" #define STRING_CMD_HISTORY_YEAR "Year" #define STRING_CMD_HISTORY_MONTH "Month" #define STRING_CMD_HISTORY_ADDED "Added" #define STRING_CMD_HISTORY_COMP "Completed" #define STRING_CMD_HISTORY_DEL "Deleted" #define STRING_CMD_HISTORY_NET "Net" -#define STRING_CMD_HISTORY_USAGE_A "Shows a report of task history, by year." +#define STRING_CMD_HISTORY_USAGE_A "Shows a report of task history, by year" #define STRING_CMD_HISTORY_AVERAGE "Average" #define STRING_CMD_HISTORY_LEGEND "Legend: {1}, {2}, {3}" #define STRING_CMD_HISTORY_LEGEND_A "Legend: + added, X completed, - deleted" -#define STRING_CMD_GHISTORY_USAGE_M "Shows a graphical report of task history, by month." -#define STRING_CMD_GHISTORY_USAGE_A "Shows a graphical report of task history, by year." +#define STRING_CMD_GHISTORY_USAGE_M "Shows a graphical report of task history, by month" +#define STRING_CMD_GHISTORY_USAGE_A "Shows a graphical report of task history, by year" #define STRING_CMD_GHISTORY_YEAR "Year" #define STRING_CMD_GHISTORY_MONTH "Month" #define STRING_CMD_GHISTORY_NUMBER "Number Added/Completed/Deleted" -#define STRING_CMD_DONE_USAGE "Marks the specified task as completed." +#define STRING_CMD_DONE_USAGE "Marks the specified task as completed" #define STRING_CMD_DONE_PROCEED "Proceed with change?" #define STRING_CMD_DONE_COMPLETED "Completed {1} '{2}'." #define STRING_CMD_DONE_NOT_PENDING "Task {1} '{2}' is neither pending nor waiting." @@ -266,50 +266,50 @@ #define STRING_CMD_PROJECTS_SUMMARY2 "{1} projects" #define STRING_CMD_PROJECTS_TASK "({1} task)" #define STRING_CMD_PROJECTS_TASKS "({1} tasks)" -#define STRING_CMD_SUMMARY_USAGE "Shows a report of task status by project." +#define STRING_CMD_SUMMARY_USAGE "Shows a report of task status by project" #define STRING_CMD_SUMMARY_PROJECT "Project" #define STRING_CMD_SUMMARY_REMAINING "Remaining" #define STRING_CMD_SUMMARY_AVG_AGE "Avg age" #define STRING_CMD_SUMMARY_COMPLETE "Complete" -#define STRING_CMD_COUNT_USAGE "Shows only the number of matching tasks." -#define STRING_CMD_DELETE_USAGE "Deletes the specified task." +#define STRING_CMD_COUNT_USAGE "Shows only the number of matching tasks" +#define STRING_CMD_DELETE_USAGE "Deletes the specified task" #define STRING_CMD_DELETE_QUESTION "Permanently delete task {1} '{2}'?" #define STRING_CMD_DELETE_RECURRING "Deleting recurring task {1} '{2}'." #define STRING_CMD_DELETE_DELETING "Deleting task {1} '{2}'." #define STRING_CMD_DELETE_CONF_RECUR "This is a recurring task. Do you want to delete all pending recurrences of this same task?" #define STRING_CMD_DELETE_NOT "Task not deleted." #define STRING_CMD_DELETE_NOTPEND "Task {1} '{2}' is neither pending nor waiting." -#define STRING_CMD_DUPLICATE_USAGE "Duplicates the specified tasks, and allows modifications." +#define STRING_CMD_DUPLICATE_USAGE "Duplicates the specified tasks, and allows modifications" #define STRING_CMD_DUPLICATE_NON_REC "Note: task {1} was a recurring task. The duplicate task is not." #define STRING_CMD_DUPLICATE_DONE "Duplicated {1} '{2}'." -#define STRING_CMD_START_USAGE "Marks specified task as started." +#define STRING_CMD_START_USAGE "Marks specified task as started" #define STRING_CMD_START_DONE "Started {1} '{2}'." #define STRING_CMD_START_ALREADY "Task {1} '{2}' already started." -#define STRING_CMD_STOP_USAGE "Removes the 'start' time from a task." +#define STRING_CMD_STOP_USAGE "Removes the 'start' time from a task" #define STRING_CMD_STOP_NOT "Task {1} '{2}' not started." #define STRING_CMD_STOP_DONE "Stopped {1} '{2}'." -#define STRING_CMD_APPEND_USAGE "Appends text to an existing task description." +#define STRING_CMD_APPEND_USAGE "Appends text to an existing task description" #define STRING_CMD_APPEND_DONE "Appended to task {1}." #define STRING_CMD_APPEND_SUMMARY "Appended {1} task." #define STRING_CMD_APPEND_SUMMARY_N "Appended {1} tasks." -#define STRING_CMD_PREPEND_USAGE "Prepends text to an existing task description." +#define STRING_CMD_PREPEND_USAGE "Prepends text to an existing task description" #define STRING_CMD_PREPEND_DONE "Prepended to task {1}." #define STRING_CMD_PREPEND_SUMMARY "Prepended {1} task." #define STRING_CMD_PREPEND_SUMMARY_N "Prepended {1} tasks." #define STRING_CMD_XPEND_NEED_TEXT "Additional text must be provided." -#define STRING_CMD_ANNO_USAGE "Adds an annotation to an existing task." +#define STRING_CMD_ANNO_USAGE "Adds an annotation to an existing task" #define STRING_CMD_ANNO_DONE "Annotated {1} '{2}'" #define STRING_CMD_ANNO_SUMMARY "Annotated {1} task." #define STRING_CMD_ANNO_SUMMARY_N "Annotated {1} tasks." -#define STRING_CMD_COLUMNS_USAGE "Displays supported columns and styles." +#define STRING_CMD_COLUMNS_USAGE "Displays supported columns and styles" #define STRING_CMD_COLUMNS_NOTE "* Means default format, and therefore optional. For example, 'due' and 'due.formatted' are equivalent." -#define STRING_CMD_COLUMNS_USAGE2 "Displays only a list of supported columns." -#define STRING_CMD_DENO_USAGE "Deletes an annotation." +#define STRING_CMD_COLUMNS_USAGE2 "Displays only a list of supported columns" +#define STRING_CMD_DENO_USAGE "Deletes an annotation" #define STRING_CMD_DENO_WORDS "An annotation pattern must be provided." #define STRING_CMD_DENO_NONE "The specified task has no annotations that can be deleted." #define STRING_CMD_DENO_FOUND "Found annotation '{1}' and deleted it." #define STRING_CMD_DENO_NOMATCH "Did not find any matching annotation to be deleted for '{1}'." -#define STRING_CMD_IMPORT_USAGE "Imports JSON files." +#define STRING_CMD_IMPORT_USAGE "Imports JSON files" #define STRING_CMD_IMPORT_SUMMARY "Imported {1} tasks." #define STRING_CMD_SHELL_USAGE "Launches an interactive shell" diff --git a/test/bug.835.t b/test/bug.835.t new file mode 100755 index 000000000..7054cd74b --- /dev/null +++ b/test/bug.835.t @@ -0,0 +1,55 @@ +#! /usr/bin/perl +################################################################################ +## taskwarrior - a command line task list manager. +## +## Copyright 2006 - 2011, Paul Beckingham, Federico Hernandez. +## All rights reserved. +## +## This program is free software; you can redistribute it and/or modify it under +## the terms of the GNU General Public License as published by the Free Software +## Foundation; either version 2 of the License, or (at your option) any later +## version. +## +## This program is distributed in the hope that it will be useful, but WITHOUT +## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +## FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +## details. +## +## You should have received a copy of the GNU General Public License along with +## this program; if not, write to the +## +## Free Software Foundation, Inc., +## 51 Franklin Street, Fifth Floor, +## Boston, MA +## 02110-1301 +## USA +## +################################################################################ + +use strict; +use warnings; +use Test::More tests => 3; + +# Create the rc file. +if (open my $fh, '>', 'bug.rc') +{ + print $fh "data.location=.\n"; + close $fh; + ok (-r 'bug.rc', 'Created bug.rc'); +} + +qx{../src/task rc:bug.rc add pro:main.subproject Test}; +my $output = qx{../src/task rc:bug.rc ls}; +like ($output, qr/main\.subproject/, "hierarchical project ok"); + +# Cleanup. +unlink qw(pending.data completed.data undo.data backlog.data synch.key bug.rc); +ok (! -r 'pending.data' && + ! -r 'completed.data' && + ! -r 'undo.data' && + ! -r 'backlog.data' && + ! -r 'synch.key' && + ! -r 'bug.rc', 'Cleanup'); + +exit 0; +