X-Git-Url: https://git.stderr.nl/gitweb?p=matthijs%2Fupstream%2Fbackupninja.git;a=blobdiff_plain;f=lib%2Fparseini.in;h=a6282dc59f4717f94acbcb929ec2f6abfa352bf8;hp=6f56d4228dc3efd1e44ef556bcd46dd14713d262;hb=fba2c87657169dd0e0262659c22824602dc439cb;hpb=9208b449da1a1df50c2759946c9931f456af1e87 diff --git a/lib/parseini.in b/lib/parseini.in index 6f56d42..a6282dc 100644 --- a/lib/parseini.in +++ b/lib/parseini.in @@ -1,3 +1,4 @@ +# -*- mode: awk; indent-tabs-mode: nil; -*- # # parseini --- parses 'ini' style configuration files. # @@ -8,27 +9,26 @@ # # example ini file: # -# fruit = apple -# fruit = pear -# multiline = this is a multiline \ -# parameter +# fruit = apple +# fruit = pear +# multiline = this is a multiline \ +# parameter # -# # this is a comment +# # this is a comment +# [colors] +# red = yes +# green = no +# blue = maybe # -# [colors] -# red = yes -# green = no -# blue = maybe -# -# [ocean] -# fish = red -# fish = blue +# [ocean] +# fish = red +# fish = blue # # example usage: -# > awk -f parseini S=ocean P=fish testfile.ini +# > awk -f parseini S=ocean P=fish testfile.ini # would return: -# red -# blue +# red +# blue # BEGIN { @@ -92,7 +92,9 @@ END { if (v ~ /\\$/) { v = substr(v, 1, length(v)-1) sub(/[ \r\t]+$/, "", v) - } + } else { + continueline = 0 + } if (v) value[nvalue++] = v } else if (v ~ MATCH) { @@ -119,7 +121,7 @@ END { for (x = 0; x < nline; ++x) { sub(/^[ \r\t]+/, "", line[x]) sub(/[ \r\t]+$/, "", line[x]) - } + } # output the final result for (x = 0; x < nline; ++x)