@@ -142,6 +142,7 @@ help()
142142 TODOTXT_PRESERVE_LINE_NUMBERS is same as option -n (0)/-N (1)
143143 TODOTXT_PLAIN is same as option -p (1)/-c (0)
144144 TODOTXT_DATE_ON_ADD is same as option -t (1)/-T (0)
145+ TODOTXT_PRIORITY_ON_ADD=pri default priority A-Z
145146 TODOTXT_VERBOSE=1 is same as option -v
146147 TODOTXT_DISABLE_FILTER=1 is same as option -x
147148 TODOTXT_DEFAULT_ACTION="" run this when called with no arguments
@@ -482,6 +483,7 @@ OVR_TODOTXT_FORCE="$TODOTXT_FORCE"
482483OVR_TODOTXT_PRESERVE_LINE_NUMBERS=" $TODOTXT_PRESERVE_LINE_NUMBERS "
483484OVR_TODOTXT_PLAIN=" $TODOTXT_PLAIN "
484485OVR_TODOTXT_DATE_ON_ADD=" $TODOTXT_DATE_ON_ADD "
486+ OVR_TODOTXT_PRIORITY_ON_ADD=" $TODOTXT_PRIORITY_ON_ADD "
485487OVR_TODOTXT_DISABLE_FILTER=" $TODOTXT_DISABLE_FILTER "
486488OVR_TODOTXT_VERBOSE=" $TODOTXT_VERBOSE "
487489OVR_TODOTXT_DEFAULT_ACTION=" $TODOTXT_DEFAULT_ACTION "
@@ -601,6 +603,7 @@ TODOTXT_FORCE=${TODOTXT_FORCE:-0}
601603TODOTXT_PRESERVE_LINE_NUMBERS=${TODOTXT_PRESERVE_LINE_NUMBERS:- 1}
602604TODOTXT_AUTO_ARCHIVE=${TODOTXT_AUTO_ARCHIVE:- 1}
603605TODOTXT_DATE_ON_ADD=${TODOTXT_DATE_ON_ADD:- 0}
606+ TODOTXT_PRIORITY_ON_ADD=${TODOTXT_PRIORITY_ON_ADD:- }
604607TODOTXT_DEFAULT_ACTION=${TODOTXT_DEFAULT_ACTION:- }
605608TODOTXT_SORT_COMMAND=${TODOTXT_SORT_COMMAND:- env LC_COLLATE=C sort -f -k2}
606609TODOTXT_DISABLE_FILTER=${TODOTXT_DISABLE_FILTER:- }
740743if [ -n " $OVR_TODOTXT_DATE_ON_ADD " ] ; then
741744 TODOTXT_DATE_ON_ADD=" $OVR_TODOTXT_DATE_ON_ADD "
742745fi
746+ if [ -n " $OVR_TODOTXT_PRIORITY_ON_ADD " ] ; then
747+ TODOTXT_PRIORITY_ON_ADD=" $OVR_TODOTXT_PRIORITY_ON_ADD "
748+ fi
743749if [ -n " $OVR_TODOTXT_DISABLE_FILTER " ] ; then
744750 TODOTXT_DISABLE_FILTER=" $OVR_TODOTXT_DISABLE_FILTER "
745751fi
@@ -761,6 +767,9 @@ ACTION=${1:-$TODOTXT_DEFAULT_ACTION}
761767[ -z " $ACTION " ] && usage
762768[ -d " $TODO_DIR " ] || mkdir -p $TODO_DIR 2> /dev/null || dieWithHelp " $1 " " Fatal Error: $TODO_DIR is not a directory"
763769( cd " $TODO_DIR " ) || dieWithHelp " $1 " " Fatal Error: Unable to cd to $TODO_DIR "
770+ [ -z " $TODOTXT_PRIORITY_ON_ADD " ] \
771+ || echo " $TODOTXT_PRIORITY_ON_ADD " | grep -q " ^[A-Z]$" \
772+ || die " TODOTXT_PRIORITY_ON_ADD should be a capital letter from A to Z (it is now \" $TODOTXT_PRIORITY_ON_ADD \" )."
764773
765774[ -f " $TODO_FILE " -o -c " $TODO_FILE " ] || > " $TODO_FILE "
766775[ -f " $DONE_FILE " -o -c " $DONE_FILE " ] || > " $DONE_FILE "
@@ -790,6 +799,11 @@ _addto() {
790799 now=$( date ' +%Y-%m-%d' )
791800 input=$( echo " $input " | sed -e ' s/^\(([A-Z]) \)\{0,1\}/\1' " $now /" )
792801 fi
802+ if [[ -n " $TODOTXT_PRIORITY_ON_ADD " ]]; then
803+ if ! echo " $input " | grep -q ' ^([A-Z])' ; then
804+ input=$( echo -n " ($TODOTXT_PRIORITY_ON_ADD ) " ; echo " $input " )
805+ fi
806+ fi
793807 echo " $input " >> " $file "
794808 if [ $TODOTXT_VERBOSE -gt 0 ]; then
795809 TASKNUM=$( sed -n ' $ =' " $file " )
0 commit comments