On Mon, Aug 11, 2008 at 22:47, Petr Baudis <pasky@xxxxxxx> wrote: > Hi, > > On Sat, Aug 09, 2008 at 08:48:56PM +0200, Bert Wesarg wrote: >> Git config supports multiple values for the same config key, so support it >> for these TopGit config options, too. >> >> New in v2: >> Print a RFC2822 compliant header. >> >> Signed-off-by: Bert Wesarg <bert.wesarg@xxxxxxxxxxxxxx> > > oops, I'm really sorry! I thought I already commented on this while > apparently, I forgot to. > >> --- >> tg-create.sh | 35 ++++++++++++++++++++++++++++++++--- >> 1 files changed, 32 insertions(+), 3 deletions(-) >> >> diff --git a/tg-create.sh b/tg-create.sh >> index 6cce7ed..d7ee1d2 100644 >> --- a/tg-create.sh >> +++ b/tg-create.sh >> @@ -100,13 +100,42 @@ git checkout -b "$name" >> echo "$deps" | sed 's/ /\n/g' >"$root_dir/.topdeps" >> git add "$root_dir/.topdeps" >> >> +# Print a RFC2822 compliant header ($2) with values from the config option >> +# ($1 without the topgit. prefix) >> +get_multi_config() >> +{ >> + # Do we need to escape it for awk double quotes? >> + prefix="$2" >> + prefix_align="$(printf "%*s " "${#2}" "")" >> + >> + git config --get-all topgit.$1 | >> + awk ' >> + BEGIN { >> + line = "" >> + prefix = "'"$prefix"': " >> + } >> + { >> + if (line != "") { >> + print prefix line "," >> + prefix = "'"$prefix_align"'" >> + } >> + line = $0 >> + } >> + END { >> + if (line != "") { >> + print prefix line >> + } >> + } >> + ' >> +} >> + > > I'm not too happy about this, for several reasons: > > (i) This code is so awfully complicated. For my first awk script, its very clean and not that complicated. I think ;-) > > (ii) It would be simpler to just prefix all the further lines > with a tab; wouldn't something like > > sed '2,$s/^/\t/' No objections with this. > > actually work? > > (iii) This is troublesome because now header values can span > multiple lines. Until now, we were just blisfully ignorant about this > possibility. At least tg export needs to be adjusted to account for this > now, and I fear dealing with this will be pretty annoying when > prototyping new features. Than we should go back to v1. As I asked in a previous line: "But do we generate a valid mail with tg patch, or just a patch file with some special looking lines?" Bert > -- > Petr "Pasky" Baudis -- 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