Marco Stornelli <marco.stornelli@xxxxxxxxx> writes: > The current script has got the following problems: > > 1) It doesn't work if the language used by Thunderbird is not english; > 2) The field To: filled by format-patch is not evaluated; > 3) The field Cc: is loaded from Cc used in the commit message > instead of using the Cc field filled by format-patch in the email > header. > > Added comments for point 1), added parsing of To: for point 2) and > added parsing of Cc: in the email header for point 3), removing the > Cc: parsing from commit message. > > Signed-off-by: Marco Stornelli <marco.stornelli@xxxxxxxxx> > --- Thanks. [+cc Lukas]. A few new issues your patch introduced: - MAILHEADER is only set once to read from sed, and then used once to be echoed to another file. Just send sed output to the file. - The "s/Subject/Oggetto/g" bit in my previous review. (find the fix-up at the end). > > v4: create a tmp file to allow correct perl parsing > v3: parse only To: and Cc: in the email header, fix some comments > v2: changed the commit message to reflect better the script implementation > v1: first draft > > contrib/thunderbird-patch-inline/appp.sh | 26 ++++++++++++++++++++++---- > 1 files changed, 22 insertions(+), 4 deletions(-) > > diff --git a/contrib/thunderbird-patch-inline/appp.sh b/contrib/thunderbird-patch-inline/appp.sh > index 5eb4a51..0daeb29 100755 > --- a/contrib/thunderbird-patch-inline/appp.sh > +++ b/contrib/thunderbird-patch-inline/appp.sh > @@ -6,6 +6,9 @@ > > # ExternalEditor can be downloaded at http://globs.org/articles.php?lng=en&pg=2 > > +# NOTE: You must change some words in this script according to the language > +# used by Mozilla Thunderbird, as <Subject>, <To>, <Don't remove this line>. > + > CONFFILE=~/.appprc > > SEP="-=-=-=-=-=-=-=-=-=# Don't remove this line #=-=-=-=-=-=-=-=-=-" > @@ -26,17 +29,32 @@ fi > cd - > /dev/null > > SUBJECT=`sed -n -e '/^Subject: /p' "${PATCH}"` > -HEADERS=`sed -e '/^'"${SEP}"'$/,$d' $1` > BODY=`sed -e "1,/${SEP}/d" $1` > CMT_MSG=`sed -e '1,/^$/d' -e '/^---$/,$d' "${PATCH}"` > DIFF=`sed -e '1,/^---$/d' "${PATCH}"` > +MAILHEADER=`sed '/^$/q' "${PATCH}"` > +PATCHTMP="${PATCH}.tmp" > + > +echo $MAILHEADER > $PATCHTMP > + > +export PATCHTMP > +CCS=`perl -e 'local $/=undef; open FILE, $ENV{'PATCHTMP'}; $text=<FILE>; > +close FILE; $addr = $1 if $text =~ /Cc: (.*?(,\n .*?)*)\n/s; $addr =~ s/\n//g; > +print $addr;'` > + > +TO=`perl -e 'local $/=undef; open FILE, $ENV{'PATCHTMP'}; $text=<FILE>; > +close FILE; $addr = $1 if $text =~ /To: (.*?(,\n .*?)*)\n/s; $addr =~ s/\n//g; > +print $addr;'` > > -CCS=`echo -e "$CMT_MSG\n$HEADERS" | sed -n -e 's/^Cc: \(.*\)$/\1,/gp' \ > - -e 's/^Signed-off-by: \(.*\)/\1,/gp'` > +rm -rf $PATCHTMP > > +# Change Subject: before next line according to Thunderbird language > +# for example: > +# SUBJECT=`echo $SUBJECT | sed -e 's/Subject/Oggetto/g'` > echo "$SUBJECT" > $1 > +# Change To: according to Thunderbird language > +echo "To: $TO" >> $1 > echo "Cc: $CCS" >> $1 > -echo "$HEADERS" | sed -e '/^Subject: /d' -e '/^Cc: /d' >> $1 > echo "$SEP" >> $1 > > echo "$CMT_MSG" >> $1 I also wonder what would happen if To: and Cc: in the input were split into continuation lines, but that was already present in the version before your patch, so the attached fix-up won't touch that part, but you may want to think about it. contrib/thunderbird-patch-inline/appp.sh | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git c/contrib/thunderbird-patch-inline/appp.sh w/contrib/thunderbird-patch-inline/appp.sh index 0daeb29..18d8bfa 100755 --- c/contrib/thunderbird-patch-inline/appp.sh +++ w/contrib/thunderbird-patch-inline/appp.sh @@ -11,6 +11,7 @@ CONFFILE=~/.appprc +# Change "Dont' remove this line" to what Thunderbird writs for your language SEP="-=-=-=-=-=-=-=-=-=# Don't remove this line #=-=-=-=-=-=-=-=-=-" if [ -e "$CONFFILE" ] ; then LAST_DIR=`grep -m 1 "^LAST_DIR=" "${CONFFILE}"|sed -e 's/^LAST_DIR=//'` @@ -32,10 +33,8 @@ SUBJECT=`sed -n -e '/^Subject: /p' "${PATCH}"` BODY=`sed -e "1,/${SEP}/d" $1` CMT_MSG=`sed -e '1,/^$/d' -e '/^---$/,$d' "${PATCH}"` DIFF=`sed -e '1,/^---$/d' "${PATCH}"` -MAILHEADER=`sed '/^$/q' "${PATCH}"` PATCHTMP="${PATCH}.tmp" - -echo $MAILHEADER > $PATCHTMP +sed '/^$/q' "${PATCH}" >"$PATCHTMP" export PATCHTMP CCS=`perl -e 'local $/=undef; open FILE, $ENV{'PATCHTMP'}; $text=<FILE>; @@ -50,7 +49,7 @@ rm -rf $PATCHTMP # Change Subject: before next line according to Thunderbird language # for example: -# SUBJECT=`echo $SUBJECT | sed -e 's/Subject/Oggetto/g'` +# SUBJECT=`echo $SUBJECT | sed -e 's/Subject:/Oggetto:/'` echo "$SUBJECT" > $1 # Change To: according to Thunderbird language echo "To: $TO" >> $1 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html