File: template.awk

package info (click to toggle)
samba-doc-ja 2.2.8a%2Bja1.0-0.1
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 34,192 kB
  • ctags: 22,693
  • sloc: ansic: 197,587; sh: 8,073; perl: 5,377; makefile: 1,489; awk: 1,146; exp: 1,143; csh: 216
file content (18 lines) | stat: -rw-r--r-- 457 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# template file handling

function print_template(f, tplname, v,
			LOCAL, i, pat, line)
{
	tplname="templates/"tplname;
	if (numlines(tplname) <= 0) fatal("no template "tplname);
	while ((getline line < tplname) > 0) {
		while ((i = match(line,"@[a-zA-Z_]*@")) != 0) {
			pat=substr(line,i+1,RLENGTH-2);
			if (v[pat] == "") fatal("no value for "pat" in "tplname);
			gsub("@"pat"@", v[pat], line);
		}
		
		xprintf(f, "%s\n", line);
	}
	close(tplname);
}