#!/usr/bin/awk -f NR > 1 { gismu = substr($0, 1,5) rafsi = substr($0, 7,12) key = substr($0,20,20) alias = substr($0,41,20) body = substr($0,62,95) comm = substr($0,169,length($0)-168) line = sprintf ("\\g{%s}{%s}{%s}{%s}\n {%s}\n {%s}\n", gismu, rafsi, key, alias, body, comm) gsub(/ +/," ",line) gsub(/{ / ,"{",line) gsub(/ }/ ,"}",line) gsub(/1x10/,"$1\\times 10",line) gsub(/1\*10/,"$1\\times 10",line) gsub(/10\*\*-/,"10^{-",line) gsub(/10\*\*/,"10^{",line) gsub(/\^\{\-?[0-9]+/,"&}$",line) gsub(/x1 /,"\\xa\\ ",line); gsub(/x1/,"\\xa",line) gsub(/x2 /,"\\xb\\ ",line); gsub(/x2/,"\\xb",line) gsub(/x3 /,"\\xc\\ ",line); gsub(/x3/,"\\xc",line) gsub(/x4 /,"\\xd\\ ",line); gsub(/x4/,"\\xd",line) gsub(/x5 /,"\\xe\\ ",line); gsub(/x5/,"\\xe",line) gsub(/cf. /,"cf.\\ ",line) gsub(/\// ,"\\s " ,line) gsub(/1\\s /,"1/",line) gsub(/1\/[01]+/,"$&$",line) gsub(/%/ ,"\\%" ,line) gsub(/#/ ,"\\#" ,line) gsub(/ &/ ," \\\\&",line) gsub(/\015/,"" ,line) print line }