|
|
1.1 ! root 1: ' # month name ! 2: .if "\nd"0" .nr m \n(mo-1 ! 3: .if "\nm"0" .ds ]m January ! 4: .if "\nm"1" .ds ]m February ! 5: .if "\nm"2" .ds ]m March ! 6: .if "\nm"3" .ds ]m April ! 7: .if "\nm"4" .ds ]m May ! 8: .if "\nm"5" .ds ]m June ! 9: .if "\nm"6" .ds ]m July ! 10: .if "\nm"7" .ds ]m August ! 11: .if "\nm"8" .ds ]m September ! 12: .if "\nm"9" .ds ]m October ! 13: .if "\nm"10" .ds ]m November ! 14: .if "\nm"11" .ds ]m December ! 15: ' # set the date ! 16: .if n \{.nr m \nm+1 ! 17: . ie \nd .ds ]W Modified \nm/\nd/\ny ! 18: . el .ds ]W Printed \n(mo/\n(dy/\n(yr\} ! 19: .if t \{.ie \nd .ds ]W \*(]m \nd, 19\ny ! 20: . el .ds ]W \*(]m \n(dy, 19\n(yr\} ! 21: .if t .tr *\(** ! 22: .ie n \{\ ! 23: . ds lq \&"\" ! 24: . ds rq \&"\" ! 25: .\} ! 26: .el \{\ ! 27: . ds rq '' ! 28: . ds lq `` ! 29: .\} ! 30: .de UC ! 31: .if t \{\ ! 32: . ie "\\$1"" .ds ]W 3rd Berkeley Distribution ! 33: . el .ds ]W \\$1th Berkeley Distribution ! 34: .\} ! 35: .. ! 36: ' # reset the basic page layout ! 37: .de }E ! 38: .}f ! 39: .in \\n()Ru+\\n(INu ! 40: .ll \\n(LLu ! 41: .. ! 42: ' # default tabs ! 43: .de DT ! 44: 'ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i ! 45: .. ! 46: ' # set type font and size ! 47: .de }f ! 48: .ps 10 ! 49: .ft 1 ! 50: .. ! 51: ' # handle the head of the page ! 52: .de }H ! 53: .ev 1 ! 54: .}C ! 55: 'sp .5i ! 56: .ft 1 ! 57: .ps 10 ! 58: .tl @\\*(]H@\\*(]D@\\*(]H@ ! 59: 'sp .5i ! 60: .ev ! 61: .ns ! 62: .. ! 63: ' # handle the foot of the page ! 64: .de }F ! 65: .ev 1 ! 66: .ft 1 ! 67: .ps 10 ! 68: 'sp .5i ! 69: ' # .tl @\\*(]W@\\*(]L@%@ ! 70: .tl @@- % -@@ ! 71: 'bp ! 72: .ev ! 73: .. ! 74: ' # the cut mark ! 75: .if n .ig ! 76: .de }C ! 77: .po .1i ! 78: .tl '-' ! 79: .po ! 80: .. ! 81: ' # the final cut mark ! 82: .de }M ! 83: .}N ! 84: .wh -1p }C ! 85: .ll \\n(LLu ! 86: .. ! 87: ' # no runout unless there was a .TH ! 88: .de }K ! 89: .}N ! 90: .pl 1 ! 91: .ll \\n(LLu ! 92: .. ! 93: .em }K ! 94: ' # set title and heading ! 95: .de TH ! 96: .PD ! 97: .DT ! 98: .if n .nr IN .5i ! 99: .if t .nr IN .5i ! 100: .nr LL \\n(.l ! 101: .ds ]H \\$1\|(\|\\$2\|) ! 102: .ds ]D Power 6 Unix Programmer's Manual ! 103: .wh 0 }H ! 104: .if t .wh -1i }F ! 105: .if n .wh -1.167i }F ! 106: .em }M ! 107: .if \\n(nl .bp 1 ! 108: .ds ]L \\$3 ! 109: .}E ! 110: .DT ! 111: .nr )I .5i ! 112: .nr )R 0 ! 113: .if n .na ! 114: .mk ka ! 115: .if !'\\n(ka'-1' .bp ! 116: .if t .ds ]W 7th Edition ! 117: .. ! 118: ' # section heading ! 119: .de SH ! 120: .}X 0 ! 121: .nr )E 2 ! 122: \&\\$1 \|\\$2 \|\\$3 \|\\$4 \|\\$5 \|\\$6 ! 123: .. ! 124: ' # sub section heading ! 125: .de SS ! 126: .}X \\n()Ru+\\n(INu ! 127: \&\\$1 \|\\$2 \|\\$3 \|\\$4 \|\\$5 \|\\$6 ! 128: .br ! 129: .. ! 130: ' # subroutine for section heading ! 131: .de }X ! 132: .}E ! 133: .ti \\$1 ! 134: .sp \\n()Pu ! 135: .ne 2 ! 136: .nr )R 0 ! 137: .fi ! 138: .it 1 }N ! 139: .SM ! 140: .B ! 141: .. ! 142: ' # end of SH (cf }X above and }N below) ! 143: .de }2 ! 144: .nr )E 0 ! 145: .}E ! 146: .nr )I .5i ! 147: .ns ! 148: .. ! 149: ' # italic ! 150: .de I ! 151: .ft 2 ! 152: .it 1 }N ! 153: .if !"\\$1"" \&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 ! 154: .. ! 155: ' # bold ! 156: .de B ! 157: .ft 3 ! 158: .it 1 }N ! 159: .if !"\\$1"" \&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 ! 160: .. ! 161: ' # small ! 162: .de SM ! 163: .ps 9 ! 164: .it 1 }N ! 165: .if !"\\$1"" \&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 ! 166: .. ! 167: ' # combinations of Roman, italic, bold ! 168: .de RI ! 169: .}S 1 2 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" ! 170: .. ! 171: .de VS ! 172: 'if '\\$1'4' .mc \s12\(br\s0 ! 173: .. ! 174: .de VE ! 175: 'mc ! 176: .. ! 177: .de RB ! 178: .}S 1 3 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" ! 179: .. ! 180: .de IR ! 181: .}S 2 1 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" ! 182: .. ! 183: .de IB ! 184: .}S 2 3 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" ! 185: .. ! 186: .de BR ! 187: .}S 3 1 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" ! 188: .. ! 189: .de BI ! 190: .}S 3 2 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" ! 191: .. ! 192: ' # make special case of shift out of italic ! 193: .de }S ! 194: .ds ]F ! 195: .if "\\$1"2" .if !"\\$5"" .ds ]F\^ ! 196: .ie !"\\$4"" .}S \\$2 \\$1 "\\$3\f\\$1\\$4\\*(]F" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9" ! 197: .el \\$3 ! 198: .}f ! 199: .. ! 200: ' # paragraph ! 201: .de LP ! 202: .PP ! 203: .. ! 204: .de PP ! 205: .sp \\n()Pu ! 206: .ne 2 ! 207: .}E ! 208: .nr )I .5i ! 209: .ns ! 210: .. ! 211: ' # paragraph distance ! 212: .de PD ! 213: .if t .nr )P .4v ! 214: .if n .nr )P 1v ! 215: .if !"\\$1"" .nr )P \\$1v ! 216: .. ! 217: ' # hanging indent ! 218: .de HP ! 219: .sp \\n()Pu ! 220: .ne 2 ! 221: .if !"\\$1"" .nr )I \\$1n ! 222: .ll \\n(LLu ! 223: .in \\n()Ru+\\n(INu+\\n()Iu ! 224: .ti \\n()Ru+\\n(INu ! 225: .}f ! 226: .. ! 227: ' # indented paragraph ! 228: .de IP ! 229: .TP \\$2 ! 230: \&\\$1 ! 231: .. ! 232: ' # hanging label ! 233: .de TP ! 234: .if !"\\$1"" .nr )I \\$1n ! 235: .sp \\n()Pu ! 236: .in \\n()Ru ! 237: .nr )E 1 ! 238: .ns ! 239: .it 1 }N ! 240: .di ]B ! 241: .. ! 242: ' # end of TP (cf }N below) ! 243: .de }1 ! 244: .ds ]X \&\\*(]B\\ ! 245: .nr )E 0 ! 246: .if !"\\$1"" .nr )I \\$1n ! 247: .}f ! 248: .ll \\n(LLu ! 249: .in \\n()Ru+\\n(INu+\\n()Iu ! 250: .ti \\n(INu ! 251: .ie !\\n()Iu+\\n()Ru-\w@\\*(]X@u-3p \{\\*(]X ! 252: .br\} ! 253: .el \\*(]X\h@|\\n()Iu+\\n()Ru@\c ! 254: .}f ! 255: .. ! 256: ' # handle end of 1-line features ! 257: .de }N ! 258: .if \\n()E .br ! 259: .di ! 260: .if "\\n()E"0" .}f ! 261: .if "\\n()E"1" .}1 ! 262: .if "\\n()E"2" .}2 ! 263: .nr )E 0 ! 264: .. ! 265: ' # increase relative indent ! 266: .de RS ! 267: .nr ]\\n+()p \\n()I ! 268: .nr )\\n()p \\n()R ! 269: .ie !"\\$1"" .nr )R +\\$1n ! 270: .el .nr )R +\\n()I ! 271: .nr )I .5i ! 272: .}E ! 273: .. ! 274: ' # decrease relative indent ! 275: .de RE ! 276: .if !"\\$1"" \{.ie "\\$1"0" .nr )p 1 1 ! 277: . el .nr )p \\$1 1\} ! 278: .ds ]i \\*(]I\\n()p ! 279: .ds ]r \\*(]R\\n()p ! 280: .nr )I \\*(]i ! 281: .nr )R \\*(]r ! 282: .if \\n()p .nr )p -1 ! 283: .}E ! 284: .. ! 285: .nr )p 0 1 ! 286: .ds ]I \\\\n(] ! 287: .ds ]R \\\\n() ! 288: .bd S 3 3 ! 289: .if t .ds R \(rg ! 290: .if n .ds R (Reg.) ! 291: .ds S \s10 ! 292: .hy 14
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.