|
|
1.1 ! root 1: .ds f. maha.1.tbl ! 2: .\" tbl maha.1.tbl | troff -man ! 3: .TH MAHA 1 5/23/85 ! 4: .UC 4 ! 5: .tr -\- ! 6: .\" differences between troff and nroff compensated here: ! 7: .ie t .ds sc \(sc ! 8: .el .ds sc section\ ! 9: .ds lq \&"\" ! 10: .ds rq \&"\" ! 11: .if t \ ! 12: . ds lq `` ! 13: .if t \ ! 14: . ds rq '' ! 15: .SH NAME ! 16: maha - make and print interpress files ! 17: .SH SYNOPSIS ! 18: .B maha ! 19: [ options ] [ files ] ! 20: .SH DESCRIPTION ! 21: .I Maha ! 22: (maharani-the Interpress version of the program czarina) reads in text ! 23: files, converts them to interpress format and ships them to an ! 24: interpress printer. It also performs some simple page formatting. ! 25: .PP ! 26: The environment variable MAHA may be used to specify default options. ! 27: The value of MAHA is parsed as a string of arguments before the arguments ! 28: that appear on the command line. For example, "MAHA=`-f Classic/8'" sets ! 29: your default body font to 8 point Classic. ! 30: .PP ! 31: The possible options are: ! 32: .TP ! 33: .BI - n ! 34: Prints output ! 35: .I n ! 36: columns per page (note that ! 37: .I n ! 38: is limited to one digit) ! 39: .TP ! 40: .BI -b \ banner ! 41: Uses ! 42: .I ! 43: banner ! 44: to label the output. It will appear on the cover page ! 45: on the line labeled \*(lqDocument\*(rq. ! 46: .TP ! 47: .BI -c \ n ! 48: Causes ! 49: .I n ! 50: copies of the output to be printed. The default is 1. ! 51: .TP ! 52: .BI -f \ font\ \ \ \ \ ! 53: Sets the font to be used for the body of each page. ! 54: The default is \*(lqVintage-Printwheel/10\*(rq. ! 55: .TP ! 56: .BI -F \ font ! 57: Sets the font to be used for page headings. ! 58: The default is \*(lqModern-Bold/12\*(rq. ! 59: .TP ! 60: .BI -H \ header ! 61: Sets the format for page headings to the string ! 62: .IR header . ! 63: Certain formatting options can be embedded in this string. See the ! 64: section below entitled \*(lqHeader Format\*(rq. ! 65: The default header is constructed from the file name, its last ! 66: modification date, and a page and line number. ! 67: .TP ! 68: .BI -h \ header ! 69: Appends the string ! 70: .I header ! 71: to the current header format string. This can be used to append ! 72: something to the default header. ! 73: .TP ! 74: .B -l ! 75: Causes line printer simulation mode to be used: pages will be 66 lines ! 76: long and headers will be omitted. ! 77: .TP ! 78: .BI -n \ name ! 79: Sets the delivery address of your output (the \*(lqFor\*(rq field on the ! 80: cover sheet) to ! 81: .IR name . ! 82: The default is your full name as recorded in the gecos field of the password ! 83: file (\*(lq/etc/passwd\*(rq). ! 84: .TP ! 85: .BI -o \ file\ \ \ \ \ ! 86: The interpress code is written into ! 87: .IR file . ! 88: The default is generated from the process i.d. of the program. ! 89: .TP ! 90: .B -r ! 91: Rotates the output 90 degrees on the page (landscape mode). ! 92: This is good for output that requires a wide paeg or for program listings ! 93: when specifying two columns. Some people like the program listings produced ! 94: by the command \*(lq\fBmaha -2 -r\fP files\*(rq. ! 95: .TP ! 96: .B -R ! 97: Forces portrait mode. This overrides the ! 98: .B -r ! 99: option. It is useful if the environment variable MAHA sets ! 100: .BR -r . ! 101: .TP ! 102: .BI -s \ pages ! 103: Selects pages to be printed. ! 104: .I Pages ! 105: may be a single page specification (eg. \*(lq5\*(rq), a range ! 106: of pages (\*(lq5-10\*(rq), ! 107: or a list of page specifications (eg. \*(lq3,11-13\*(rq). Note ! 108: that this syntax is identical to that accepted by the ! 109: .B -o ! 110: option of ! 111: .IR troff . ! 112: .TP ! 113: .B -t ! 114: Causes page headings (titles) to be omitted. ! 115: .sp ! 116: .PP ! 117: .B "Specifying Fonts" ! 118: .PP ! 119: The naming scheme for fonts is a slight variant on the universal naming ! 120: scheme used by interpress. See \*(sc3.2.2 in ! 121: .I "Interpress Electronic Printing Standard" ! 122: (\s8XSIS\s0 048404) for a description of universal names. ! 123: Each identifier of a universal font name is ! 124: separated by a slash (\*(lq/\*(rq). If the final identifier in ! 125: the name is nothing more than a series of digits, ! 126: as in \*(lqClassic/8\*(rq, then it is taken to be a point size. The actual ! 127: universal name is formed by removing this last identifier. ! 128: If the last part of the name is not strictly a number, then the ! 129: point size is assumed to be 10. ! 130: Since most ! 131: environments use the same prefix for a universal font name, ! 132: A standard prefix of several identifiers ! 133: is prepended to every font name given on the command line. ! 134: This can be overridden by placing a slash at the front of the given name ! 135: in which case the universal name is formed by simply removing the slash ! 136: from the front of the name. Note that the point size calculation mentioned ! 137: above will still be performed on this type of name. ! 138: .PP ! 139: Here are some examples that should clear the air: ! 140: .sp ! 141: .TS ! 142: .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 ! 143: .de 35 ! 144: .ps \n(.s ! 145: .vs \n(.vu ! 146: .in \n(.iu ! 147: .if \n(.u .fi ! 148: .if \n(.j .ad ! 149: .if \n(.j=0 .na ! 150: .. ! 151: .nf ! 152: .nr #~ 0 ! 153: .if n .nr #~ 0.6n ! 154: .ds #d .d ! 155: .if \(ts\n(.z\(ts\(ts .ds #d nl ! 156: .fc ! 157: .nr 33 \n(.s ! 158: .rm 80 81 82 ! 159: .nr 80 0 ! 160: .nr 38 \wName Given ! 161: .if \n(80<\n(38 .nr 80 \n(38 ! 162: .nr 38 \wClassic ! 163: .if \n(80<\n(38 .nr 80 \n(38 ! 164: .nr 38 \wModern/12 ! 165: .if \n(80<\n(38 .nr 80 \n(38 ! 166: .nr 38 \w/Rice/TimesRoman ! 167: .if \n(80<\n(38 .nr 80 \n(38 ! 168: .nr 38 \w/Rice/TimesRoman/Italic/8 ! 169: .if \n(80<\n(38 .nr 80 \n(38 ! 170: .nr 38 \w/Rice/VileBlob/8/10 ! 171: .if \n(80<\n(38 .nr 80 \n(38 ! 172: .80 ! 173: .rm 80 ! 174: .nr 81 0 ! 175: .nr 38 \wUniversal Name ! 176: .if \n(81<\n(38 .nr 81 \n(38 ! 177: .nr 38 \wXerox/XC1-1-1/Classic ! 178: .if \n(81<\n(38 .nr 81 \n(38 ! 179: .nr 38 \wXerox/XC1-1-1/Modern ! 180: .if \n(81<\n(38 .nr 81 \n(38 ! 181: .nr 38 \wRice/TimesRoman ! 182: .if \n(81<\n(38 .nr 81 \n(38 ! 183: .nr 38 \wRice/TimesRoman/Italic ! 184: .if \n(81<\n(38 .nr 81 \n(38 ! 185: .nr 38 \wRice/VileBlob/8 ! 186: .if \n(81<\n(38 .nr 81 \n(38 ! 187: .81 ! 188: .rm 81 ! 189: .nr 82 0 ! 190: .nr 38 \wPoint Size ! 191: .if \n(82<\n(38 .nr 82 \n(38 ! 192: .nr 38 \w10 ! 193: .if \n(82<\n(38 .nr 82 \n(38 ! 194: .nr 38 \w12 ! 195: .if \n(82<\n(38 .nr 82 \n(38 ! 196: .nr 38 \w10 ! 197: .if \n(82<\n(38 .nr 82 \n(38 ! 198: .nr 38 \w8 ! 199: .if \n(82<\n(38 .nr 82 \n(38 ! 200: .nr 38 \w10 ! 201: .if \n(82<\n(38 .nr 82 \n(38 ! 202: .82 ! 203: .rm 82 ! 204: .nr 38 1n ! 205: .nr 79 0 ! 206: .nr 40 \n(79+(0*\n(38) ! 207: .nr 80 +\n(40 ! 208: .nr 41 \n(80+(3*\n(38) ! 209: .nr 81 +\n(41 ! 210: .nr 42 \n(81+(3*\n(38) ! 211: .nr 82 +\n(42 ! 212: .nr TW \n(82 ! 213: .if t .if (\n(TW+\n(.o)>7.65i .tm Table at line 150 file maha.1.tbl is too wide - \n(TW units ! 214: .nr #I \n(.i ! 215: .in +(\n(.lu-\n(TWu-\n(.iu)/2u ! 216: .fc ! 217: .nr #T 0-1 ! 218: .nr #a 0-1 ! 219: .eo ! 220: .de T# ! 221: .ds #d .d ! 222: .if \(ts\n(.z\(ts\(ts .ds #d nl ! 223: .mk ## ! 224: .nr ## -1v ! 225: .ls 1 ! 226: .ls ! 227: .. ! 228: .ec ! 229: .ta \n(80u \n(81u \n(82u ! 230: .nr 31 \n(.f ! 231: .nr 35 1m ! 232: \&\h'|\n(40u'Name Given\h'|\n(41u'Universal Name\h'|\n(42u'Point Size ! 233: .ta \n(80u \n(81u \n(82u ! 234: .nr 31 \n(.f ! 235: .nr 35 1m ! 236: \&\h'|\n(40u'\h'|\n(41u'\h'|\n(42u' ! 237: .ta \n(80u \n(81u \n(82u ! 238: .nr 31 \n(.f ! 239: .nr 35 1m ! 240: \&\h'|\n(40u'Classic\h'|\n(41u'Xerox/XC1-1-1/Classic\h'|\n(42u'10 ! 241: .ta \n(80u \n(81u \n(82u ! 242: .nr 31 \n(.f ! 243: .nr 35 1m ! 244: \&\h'|\n(40u'Modern/12\h'|\n(41u'Xerox/XC1-1-1/Modern\h'|\n(42u'12 ! 245: .ta \n(80u \n(81u \n(82u ! 246: .nr 31 \n(.f ! 247: .nr 35 1m ! 248: \&\h'|\n(40u'/Rice/TimesRoman\h'|\n(41u'Rice/TimesRoman\h'|\n(42u'10 ! 249: .ta \n(80u \n(81u \n(82u ! 250: .nr 31 \n(.f ! 251: .nr 35 1m ! 252: \&\h'|\n(40u'/Rice/TimesRoman/Italic/8\h'|\n(41u'Rice/TimesRoman/Italic\h'|\n(42u'8 ! 253: .ta \n(80u \n(81u \n(82u ! 254: .nr 31 \n(.f ! 255: .nr 35 1m ! 256: \&\h'|\n(40u'/Rice/VileBlob/8/10\h'|\n(41u'Rice/VileBlob/8\h'|\n(42u'10 ! 257: .fc ! 258: .nr T. 1 ! 259: .T# 1 ! 260: .in \n(#Iu ! 261: .35 ! 262: .TE ! 263: .if \n-(b.=0 .nr c. \n(.c-\n(d.-10 ! 264: .sp ! 265: If a font name has the unfortunate characteristic of containing nothing but ! 266: numbers in its last identifier, it can still be specified by always appending ! 267: a point size to the name, as in the last example above. ! 268: .sp ! 269: .PP ! 270: .B "Header Format" ! 271: .PP ! 272: The string that is used to build the header can have format options embedded ! 273: in it. Each formatting option is preceded with the character \*(lq%\*(rq in ! 274: a manner similar to ! 275: .IR printf (3S) ! 276: strings in C. The following format characters are recognized: ! 277: .sp ! 278: .TS ! 279: .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 ! 280: .de 35 ! 281: .ps \n(.s ! 282: .vs \n(.vu ! 283: .in \n(.iu ! 284: .if \n(.u .fi ! 285: .if \n(.j .ad ! 286: .if \n(.j=0 .na ! 287: .. ! 288: .nf ! 289: .nr #~ 0 ! 290: .if n .nr #~ 0.6n ! 291: .ds #d .d ! 292: .if \(ts\n(.z\(ts\(ts .ds #d nl ! 293: .fc ! 294: .nr 33 \n(.s ! 295: .rm 80 81 ! 296: .nr 80 0 ! 297: .nr 38 \wf ! 298: .if \n(80<\n(38 .nr 80 \n(38 ! 299: .nr 38 \wt ! 300: .if \n(80<\n(38 .nr 80 \n(38 ! 301: .nr 38 \wp ! 302: .if \n(80<\n(38 .nr 80 \n(38 ! 303: .nr 38 \wl ! 304: .if \n(80<\n(38 .nr 80 \n(38 ! 305: .80 ! 306: .rm 80 ! 307: .nr 81 0 ! 308: .nr 38 \wcurrent file name ! 309: .if \n(81<\n(38 .nr 81 \n(38 ! 310: .nr 38 \wlast modified time of the current file ! 311: .if \n(81<\n(38 .nr 81 \n(38 ! 312: .nr 38 \wcurrent page number ! 313: .if \n(81<\n(38 .nr 81 \n(38 ! 314: .nr 38 \wline number for the top line of the current page ! 315: .if \n(81<\n(38 .nr 81 \n(38 ! 316: .81 ! 317: .rm 81 ! 318: .nr 38 1n ! 319: .nr 79 0 ! 320: .nr 40 \n(79+(0*\n(38) ! 321: .nr 80 +\n(40 ! 322: .nr 41 \n(80+(3*\n(38) ! 323: .nr 81 +\n(41 ! 324: .nr TW \n(81 ! 325: .if t .if (\n(TW+\n(.o)>7.65i .tm Table at line 172 file maha.1.tbl is too wide - \n(TW units ! 326: .nr #I \n(.i ! 327: .in +(\n(.lu-\n(TWu-\n(.iu)/2u ! 328: .fc ! 329: .nr #T 0-1 ! 330: .nr #a 0-1 ! 331: .eo ! 332: .de T# ! 333: .ds #d .d ! 334: .if \(ts\n(.z\(ts\(ts .ds #d nl ! 335: .mk ## ! 336: .nr ## -1v ! 337: .ls 1 ! 338: .ls ! 339: .. ! 340: .ec ! 341: .ta \n(80u \n(81u ! 342: .nr 31 \n(.f ! 343: .nr 35 1m ! 344: \&\h'|\n(40u'f\h'|\n(41u'current file name ! 345: .ta \n(80u \n(81u ! 346: .nr 31 \n(.f ! 347: .nr 35 1m ! 348: \&\h'|\n(40u't\h'|\n(41u'last modified time of the current file ! 349: .ta \n(80u \n(81u ! 350: .nr 31 \n(.f ! 351: .nr 35 1m ! 352: \&\h'|\n(40u'p\h'|\n(41u'current page number ! 353: .ta \n(80u \n(81u ! 354: .nr 31 \n(.f ! 355: .nr 35 1m ! 356: \&\h'|\n(40u'l\h'|\n(41u'line number for the top line of the current page ! 357: .fc ! 358: .nr T. 1 ! 359: .T# 1 ! 360: .in \n(#Iu ! 361: .35 ! 362: .TE ! 363: .if \n-(b.=0 .nr c. \n(.c-\n(d.-7 ! 364: .sp ! 365: If a percent sign is followed by a character not in the list above, then ! 366: that character gets printed (without the leading percent sign). Note that a ! 367: percent sign can still be printed in the header by placing two in the ! 368: format. The default format string is: ! 369: .sp ! 370: .nf ! 371: .ce ! 372: "%f %t Page %p, line %l" ! 373: .fi ! 374: .SH ENVIRONMENT ! 375: .DT ! 376: MAHA strings of options to be used by ! 377: .IR maha . ! 378: .PP ! 379: .SH FILES ! 380: /etc/passwd contains information about system users ! 381: .SH "SEE ALSO" ! 382: cz(1) czarina ! 383: .PP ! 384: Interpress Electronic Printing Standard, \s8XSIS\s0 048404 ! 385: .SH BUGS ! 386: The document name doesn't appear on the banner page like it should. ! 387: This is really the fault of the queueing software. ! 388: .PP ! 389: Maha will not ! 390: realize that a file is already in interpress format and skip the ! 391: conversion phase. ! 392: .PP
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.