And replace tabs by spaces.
To illustrate the interest of this new variable, here is an action
to replace the original add to allow a priority to be set when adding.
The action itself relies on the original add, therefore the need for
this new envvar.
action=$1
shift
[ "$action" = "usage" ] && {
echo " add pri PRIORITY \"THING I NEED TO DO +project @context\""
echo " add an item and prioritize it in one step"
echo ""
exit
}
. $TODOTXT_CFG_FILE
TODOTXT_UNDEF_CUSTOM_ACTIONS=1
PRIORITY=false
if [ x"$1" = x"pri" -o x"$1" = x"p" ] && [[ x"$2" =~ x[a-zA-Z] ]]; then
PRIORITY=$2
shift
shift
fi
if $TODO_SH add "$@" && [ $PRIORITY != false ]; then
# figure out the line of what we just added, and "do" it
line=`wc -l "$TODO_FILE" | cut -d' ' -f1`
$TODO_SH pri "$line" $PRIORITY
fi
This patch does 2 things:
- Allowing environment variables corresponding to options (e.g. VERBOSE for -v)
to be predefined in the user environment instead of having to always use
the corresponding option.
- Adding namespace TODOTXT_ to those envvars to avoid clashes in user environment
todo.action.d scripts can call recursively todo.sh and this patch preserves
the options/envvars through the calls.
As a bonus, now the user can export in advance one of those variables in
his/her environment and it would have the same effect as using the todo.sh
corresponding option.
export TODOTXT_AUTO_ARCHIVE=0 is same as option -a
export TODOTXT_CFG_FILE=CONFIG_FILE is same as option -d CONFIG_FILE
export TODOTXT_FORCE=1 is same as option -f
export TODOTXT_PRESERVE_LINE_NUMBERS=0 is same as option -n
export TODOTXT_PLAIN=1 is same as option -p
export TODOTXT_DATE_ON_ADD=1 is same as option -t
export TODOTXT_VERBOSE=1 is same as option -v
Signed-off-by: Gina Trapani <ginatrapani@gmail.com>
.
Dave Hein noticed the extended regular expressions (regex) in the
original patch don't work by default on Mac OS X (FreeBSD sed). Now
using his suggested regex format: [[:space:]]@[^[:space:]]\{1,\}
.
Also changed: I misapplied part of the patch originally. That's now
fixed. I expanded part of the regular expression in the list
sub-expression so that I could change part of the coloring code.
.
Let users override default commands by creating a script in
~/.todo.actions.d/ with the same name as a default command. Idea by Don
Harper and David A. Harding; patch by Harding.
.
The patch adds the following logic and increases the indent level for
the case statement:
.
+if [ -d "$HOME/.todo.actions.d" -a -x "$HOME/.todo.actions.d/$action" ]
+then
+ CFG_FILE="$CFG_FILE" "$HOME/.todo.actions.d/$action" "$@"
+else
+ case $action in
.
Adds three new switches that hide priorty, context, and project text in
list output.
.
Changes proposed by Dave Hein. Original patch by Dave Hein. Revised
patch by David A. Harding. Thread starts at
http://tech.groups.yahoo.com/group/todotxt/message/1848