1# template file handling 2 3function print_template(f, tplname, v, 4 LOCAL, i, pat, line) 5{ 6 tplname="templates/"tplname; 7 if (numlines(tplname) <= 0) fatal("no template "tplname); 8 while ((getline line < tplname) > 0) { 9 while ((i = match(line,"@[a-zA-Z_]*@")) != 0) { 10 pat=substr(line,i+1,RLENGTH-2); 11 if (v[pat] == "") fatal("no value for "pat" in "tplname); 12 gsub("@"pat"@", v[pat], line); 13 } 14 15 xprintf(f, "%s\n", line); 16 } 17 close(tplname); 18} 19