Files
not-much-fuzz/src/awk/lastmessageinthread.awk

50 lines
825 B
Awk

BEGIN {
RS = "\x0c"
FS = "\n"
}
/^message}/ {
mheader = header
mpart = part
mparts = parts
level = 0
multipart = ""
header = ""
part = ""
parts = ""
}
/^header{/ {
header = $0
}
/^(part|attachment)}/ {
level--
}
/^(part|attachment){/ {
parts = sprintf("%s\n%"(2*level)"s%s", parts, "", substr($1, index($1, "ID")))
level++
}
# /^part{ ID: [[:digit:]]+, Content-type: multipart\/alternative/ {
# multipart = "alternative"
# }
# /^part{ ID: [[:digit:]]+, Content-type: multipart\/mixed/ {
# multipart = "mixed"
# }
/^part{ ID: [[:digit:]]+, Content-type: text\/plain/ {
part = $0
}
END {
split(mheader, a, "\n")
delete a[1]
# delete a[2]
for (line in a) {
print a[line]
}
split(mpart, a, "\n")
delete a[1]
for (line in a) {
print a[line]
}
print "Parts:"mparts
}