BEGIN { SUBDIR["input-method-*"] = "MIM/"; SUBDIR["font-layouter-*"] = "FLT/"; SUBDIR["standard-language-iso639"] = "LANGDATA/"; IGNORED["language-name-*"] = 1; KEY=""; XINCLUDEFMT="\n"; } /^ 0; i++) KEY=KEY"-"substr($0, RSTART + 6, RLENGTH - 6); print; next; } /[^<]*<\/filename>/ { if (IGNORED[KEY]) print; else { from = match($0, "[^<]*"); to = from + RLENGTH; printf "%s", substr($0, 1, from - 1); TAIL = substr($0, to); FILE = substr($0, from + 10, to - from - 21); COMMAND = "cd "M17NDB"/"SUBDIR[KEY]"; ls "FILE; COMMAND | getline LINE; print ""LINE""; printf XINCLUDEFMT, M17NDB"/"SUBDIR[KEY]LINE; while (COMMAND | getline LINE) { print ""LINE""; printf XINCLUDEFMT, M17NDB"/"SUBDIR[KEY]LINE; } if (length(TAIL) > 0 && ! match(TAIL, "^[ \t]*$")) print TAIL; } next; } { print; }