awk ' # reroman
#   Output: string (tab) arab1            [(space) arab2]
#   Input:  string (tab) arab1 or roman1  [(space) arab2 or roman2]

BEGIN	{ FS = OFS = "\t"
	  # set a[1] = "i", a[2] = "ii", ...
	  s =   "i ii iii iv v vi vii viii ix x"
	  s = s " xi xii xiii xiv xv xvi xvii xviii xix xx"
	  s = s " xxi xxii xxiii xxiv xxv xxvi xxvii xxviii xxix xxx"
	  split(s, a, " ")
	}
$2 < 0	{ n = split($2, b, " ")
	  for (i = 1; i <= n; i++) {
		if (b[i] >= 0) continue
	  	j = 1000 + b[i]
	  	if (j in a) b[i] = a[j]
	  	else print "reroman: bad number: " $0  | "cat 1>&2"
	  }
	  $2 = b[1]
	  if (n > 1) $2 = b[1] " " b[2]
	}
	{ print }
' $*
