% qwertz manual replacement file % produces nroff using the man macros + ".if n .ds Q \\&\"\n" ".if t .ds Q ``\n" ".if n .ds U \\&\"\n" ".if t .ds U ''\n" ".TH \"[TITLE]\" [SECTNUM] \n" % James Clark's trick to prevent unintended paragraph % breaks ".tr \\&\n" % Number registers for lists ".nr bi 0\n" % initialize begin items ".nr ll 0\n" % list level, stores current level ".nr el 0\n" % current enumeration level % Not all list levels are enumerations, as % itemizations can be embedded within enumerations % and vice versa % type of list level is in \n(t\n(ll, where % 0 : itemize, 1 : enumerate, 2: description % enumerator for an enumeration level is in % \n(e\n(el -- i.e. \n(e1=2 means current item of % enumeration level 1 is 2 % context-sensitive paragraph macro % SDT: Use `empty' DS and DE macros since the preroff.sed script % relies on them for identifying `code' sections ".de DS\n..\n.de DE\n..\n" ".de Pp\n" ".ie \\\\n(ll>0 \\{\\\n" % within list? ".ie \\\\n(bi=1 \\{\\\n" % first par element of item? ".nr bi 0\n" % reset bi flag % if itemization, mark with a bullet ".if \\\\n(t\\\\n(ll=0 \\{.IP \\\\(bu\\}\n" % itemize % if enumeration: increment and print enumerator % for this enumeration level ".if \\\\n(t\\\\n(ll=1 \\{.IP \\\\n+(e\\\\n(el.\\}\n" % if first par element of descrip, do nothing ".\\}\n" ".el .sp \n" % subsequent par element of item ".\\}\n" ".el \\{\\\n" % not within list ".ie \\\\nh=1 \\{\\\n" % first par after heading ".LP\n" ".nr h 0\n" % reset h flag ".\\}\n" ".el .PP \n" ".\\}\n" "..\n" + ".SH " "\n\n"

+ ".Pp" +

+ ".nr ll +1\n" % increment list level ".nr el +1\n" % increment enumeration level ".nr t\\n(ll 1\n" % set type of level to enum ".nr e\\n(el 0 1\n" % initialize enumerator ".af e\\n(el \\*(f\\n(el\n" % style of enumerator ".if \\n(ll>1 .RS" + + ".if \\n(ll>1 .RE\n" ".nr el -1\n" % decrement enumeration level ".nr ll -1" + % decrement list level + ".nr ll +1\n" % increment list level ".nr t\\n(ll 0\n" % set type of level to itemize ".if \\n(ll>1 .RS" + + ".if \\n(ll>1 .RE\n" ".nr ll -1" + % decrement list level + ".nr ll +1\n" % increment list level ".nr t\\n(ll 2\n" % set type of level to descrip ".if \\n(ll>1 .RS" + + ".if \\n(ll>1 .RE\n" ".nr ll -1\n" + % decrement list level % number register bi means "begin item". Used in the .P macro to print % bullets or numbers at beginning of first paragraph of an item. % If bi=1 then the paragraph is the first one of the item. + ".nr bi 1\n.Pp" + + ".IP \"" "\"\n" ".nr bi 1" + "\\*Q" "\\*U" + ".RS\n" ".nr LL \\n(LL-\\n(PI" + + ".nr LL \\n(LL+\\n(PI\n" ".RE" + "\\fI" "\\fP" "\\fB" "\\fP" "\\fI" "\\fP" "\\f(HR" "\\fP" "\\f(HI" "\\fP" "\\f(CR" "\\fP" + ".PP\n.ft HI" + + ".ft P" + % within code and verb, first turn off the escape mechanism + ".DS\n" ".sp\n" ".ft CR\n" % ".eo \n" ".nf" + + ".DE\n" ".fi \n" ".ec\n" ".ft P\n" ".sp" + + ".DS\n" ".sp \n" ".ft CR\n" % ".eo \n" ".nf" + + ".DE\n" ".fi \n" ".ec\n" ".ft P\n" ".sp" +