2 # grog -- guess options for groff command
3 # Like doctype in Kernighan & Pike, Unix Programming Environment, pp 306-8.
17 opts
="$opts $arg"; shift;;
23 egrep -h '^\.(P|[LI]P|[pnil]p|Dd|Tp|Dp|De|Cx|Cl|Oo|Oc|TS|EQ|TH|SH|so|\[|R1)' $
* \
24 |
sed -e '/^\.so/s/^.*$/.SO_START\
28 |
egrep '^\.(P|[LI]P|[pnil]p|Dd|Tp|Dp|De|Cx|Cl|Oo|Oc|TS|EQ|TH|SH|\[|R1|SO_START|SO_END)' \
30 /^\.SO_START$/ { so = 1 }
31 /^\.SO_END$/ { so = 0 }
32 /^\.TS/ { tbl++; if (so > 0) soelim++ }
33 /^\.PS([ 0-9.<].*)?$/ { pic++; if (so > 0) soelim++ }
34 /^\.EQ/ { eqn++; if (so > 0) soelim++ }
35 /^\.(R1|\[)/ { refer++; if (so > 0) soelim++ }
42 /^\.(Tp|Dp|De|Cx|Cl)/ { mdoc_old++ }
50 if (pic > 0 || tbl > 0 || eqn > 0 || refer > 0) {
52 if (soelim > 0) printf "s"
53 if (refer > 0) printf "R"
54 if (pic > 0) printf "p"
55 if (tbl > 0) printf "t"
56 if (eqn > 0) printf "e"
60 else if (SH > 0 && TH > 0)
67 if (mdoc_old > 0 || Oo > 0)
77 }' "opts=$opts" "files=$*" -