Mike Bianchi <mbian...@foveal.com>: > I propose the hygienic feature as a first project after we agree on > the mission statement. > > \# declare all groff macros hygienic, default > .hygienic ON GROFFALL > > \# declare all groff macros not hygienic > \# excludes .hygienic > .hygienic OFF GROFFALL > > \# change given macros hygienic modes > .hygienic { OFF | ON } macroname ... > > .macroset macrosetname macroname ... ? > .hygienic { OFF | ON } macrosetname ... ? > > \# set hygienic mode > .hygienic { DISABLE | ENABLE }
I had a simpler design in mind. My premise is that once hygienic mode has been set we in general don't want or need to unset it, and that's going to be the very last thing a macro package does. Thus, all macros and requests start out unhygienic, and: # Declare macros or requests hygienic .hygienic name... # Disable all non-hygienic macros .hygiene -- <a href="http://www.catb.org/~esr/">Eric S. Raymond</a>