.FOOTNOTE This document and software is in the public domain and may be distributed provided Iowa State University, Dept of Biomedical Eng, and its author are credited for its development. -- Mark M Mehl (April 1987) .END FOOTNOTE .qchapter I THESIS FORMATTING WITH RUNOFF/RNOTHESIS .!Below, the following two commands lines would NOT normally be in a thesis .SET PARAGRAPH ,1 .!Set the paragraph spacing to double spacing .SPACING 1 .!Set the beginning of the document to single spacing .majsect Preface .BLANK .!This line prevents paragraph indentaion and would NOT normally be in a thesis In 1980, the Iowa State University Computation Center (ISUCC) purchased a text formatting program called SCRIPT. But SCRIPT was more than a text formatter; it also served as a high-level programming language, and so the ISUTHESIS program macros (SCRIPT subroutines) were born. Now the public-domain program, Bonner Lab RUNOFF, also supports macro definitions; therefore, a set of macros similar to those in ISUTHESIS have been developed. They are collectively known as RNOTHESIS. Although there are several differences between the two macro libraries, many of the examples here come directly out of the ^&ISUTHESIS\& manual, which is credited to Mark Rupert of the ISUCC. This document is intended as a brief guide to RNOTHESIS; it is not a substitute for the ^&Bonner Lab RUNOFF\& manual. It merely illustrates some examples using the RNOTHESIS command macros and does not address every possible situation. Before using either RUNOFF or RNOTHESIS, you should skim through Chapters I thru IV of the ^&Bonner Lab RUNOFF\& manual (detailed version) paying particular attention to the first two pages of Chapters II, III, IV, and V included. It is the initial material within each of these chapters that contains the absolute necessities. You should also be familiar with the RUNOFF commands listed at the beginning of Chapter IV; Chapter V discusses these commands in detail. .IF BME .!Section internal to the Biomedical Eng Dept, ISU Although fairly reliable, if you discover any bugs in RNOTHESIS, copy the file causing the problem in the PUBLIC area, PUB:, and place the incorrectly formatted output in my mailbox with a description of the problem. Of course, if I am around, it would be easiest just to show me the problem. Many problems are easily fixed. .ENDIF BME If you have suggestions to offer concerning RUNOFF, RNOTHESIS, or these examples, please let us know. .bbA Users not affiliated with Iowa State University (ISU) should direct their ideas and comments to Dennis Jensen, ISU DECUS contact; ISU users may direct their comments to me. .BLANK .TEXT .NO FILL .TABS PROPORTIONAL 3,R,C Dennis Jensen~ ~Mark#M#Mehl Ames Laboratory~ ~Dept.#of#Biomedical#Eng. 258H Metals Development~ ~IOWA#STATE#UNIVERSITY IOWA STATE UNIVERSITY~ ~$REVDATE$ Ames, IA 50011 (515) 294-7909 .FILL .END TEXT .ebA .B .TEST TEXT 6 .majsect Invoking RUNOFF/RNOTHESIS There are 3 possible methods to invoke a program on a RT-11/TSX system. The method which omits the equal sign in the file specification is commonly used for RUNOFF. .RUNOFF input-spec output-spec .B .TEXT If the equal sign is used, the order of the input and output specifications must be reversed. This alternative method is illustrated in the example below where the LP_: printer is the output device and SY:LP,DK:MYTEXT are two concatenated input files. .bbA .RUNOFF LP:_=SY:LP,DK:MYTEXT .B Notice that "LP" is specified ^&twice\&; more about this will be discussed later. .END TEXT .ebA .section The input file specification The input-spec consists of a list of 1 to 6 file names to be concatenated as the input. In this list, the device control file always comes first, of which there are two: SY:TT and SY:LP.$FN$+ .footbegin The system device, SY:, is that area on the main disk where the operating system--and other supporting programs which control the computer--reside. Major program utilities (such as RUNOFF, FORTRAN, and HGRAPH) also reside on the SY_: device. .footend There is not a device control file for the letter-quality printer, LQ:, since its escape control codes are internally stored in RUNOFF. The second file name on the input-spec is your own format control .bbA file--DK:MYCTRL.RNO--which allows you to customize the output file to fit your needs. An example control file for RNOTHESIS is given below. .BLANK .TEXT .LM+4 .NO FILL .! <----- The optional VARIANT command line would go here .REQUIRE "SY:THES2" .! ---------- Beginning of user's customizations .AUTOPARAGRAPH .!Enable autoparagraphing if desired ----Other user customizations go here such as . . . 1) redefining layout or format, 2) defining and/or enabling FLAG characters or functions, 3) command definitions or redefinitions, 4) variable substitution definitions, 5) or any other global operation. .! ---------- Ending of user's customizations .REQUIRE "SY:THEEND" .END TEXT .LM .FILL .BLK (Please note that Bonner Lab RUNOFF regards command lines as comments if an exclamation mark or semicolon immediately follows the "control flag" character--which is normally a period--as shown in the example above.) A more complete example of a DK:MYCTRL.RNO control file is given on the system .ebA disk as SY:THECTL.RNO. Copy this file into your own DK_: default directory, then modify it to conform to your particular needs. This is the place to define your own command macros, define simple variable names for complex escape sequences like $O2V or $MO2V, .BLK;set hyphenation, define flags and flag functions, tabs, or even override the RNOTHESIS format to fit special needs. You should begin your control file with .bbA the RUNOFF ".VARIANT" command to optionally select special thesis-formatting attributes (discussed later in the "RNOTHESIS formatting options" section) followed by the ".REQUIRE SY:THES2" command .ebA to call the main RNOTHESIS control file. You must end your control file with either ".REQUIRE SY:THEEND" or--faster yet--copy in the contents of SY:THEEND.RNO into the bottom of your own control file; there are only .bbA 7 lines. .ebA This will save the computer time looking for SY:THEEND.RNO on disk. After your control file spec comes the list of text files which are to be formatted. Since the input file specification cannot have over 6 file names, when the input includes both a device and personal control file (SY:TT and DK:MYCTRL), only 4 more text files can follow. If this is inadequate, create a concatenation control file (IMR1A.RNO) using the RUNOFF ".REQUIRED" command, then include this control file as part of the input specification. .B .TEXT .NO FILL .!Shut fill mode off so that autoparagraphing is disabled .! This is IMR1A.RNO, a RUNOFF control file which .! combines INTR1A.RNO, METH1A.RNO, and RSLT1A.RNO .REQUIRE "INTR1A" .REQUIRE "METH1A" .REQUIRE "RSLT1A" .FILL .!Restore fill mode to reenable filling and autoparagraphing .END TEXT When concatenating--regardless of method--each file must end with a "return" character; otherwise, the last line of one file will be continued on to the first line of the next. A "return" character is inserted whenever the RETURN key is depressed. .TEXT Here are 3 input file spec's all specifying the same file names. Note that all input file names end with the default ".RNO" extension type. .LS .LE To format output for the video terminal, TT: .B.I;SY:TT,DK:MYCTRL,INTR1A,METH1A,RSLT1A,BIB2B .TEXT .LE To format output for the dot-matrix "line printer", LP: .B.I;SY:LP,DK:MYCTRL,(INTR,METH,RSLT)1A,BIB2B/P:12.:17. .TEXT .LE To format output for the letter-quality printer, LQ: .B.I;MYCTRL.RNO,INTR1A.RNO,METH1A.RNO,RSLT1A.RNO,BIB2B.RNO .END TEXT .END LIST The Command String Interpreter (CSI) automatically assumes the most recent disk-device spec defines the device for the following file names without a device spec. For example, in the first 2 lines above, the CSI assumes INTR1A,METH1A, etc_. must be associated with the DK_: default area (your directory) since DK_: is the last device spec given in the command string; see DK:MYCTRL. In the last line, no device name is ever given; therefore, it assumes the DK_: default device. The second line uses a technique called "factoring" (with the parentheses) to abbreviate the list. Look under the "Factoring File Specifications" section in the ^&Keyboard Command\& chapter of the ^&RT-11 System User's Guide\& for more information if you're not already familiar with this technique. The second line also uses the /P command switch option to print pages 12 (decimal) thru 17 (decimal). As with any CSI command string, a decimal number must be followed by a decimal point; otherwise, its octal value is used instead. Refer to the ^&CSI\& chapter of the ^&RT-11 System Utilities Manual\& for more information about CSI syntax and the ^&Operating Procedures\& chapter of the ^&Bonner Lab RUNOFF\& manual for a complete listing of the RUNOFF switch options. .section The output specification The output specification begins with the device name or device:file name to receive the formatted, printer-ready output. The second name in the output specification is a disk file to store the RUNOFF source for generating the table of contents for the document. To explain further, when RUNOFF first formats a document, it cannot tell what the document headings (and corresponding page numbers) are so it cannot generate a table of contents on the initial printout. Instead, it generates an "information source file" that the user can customize (by editing afterwards) then process through RUNOFF to generate the table of contents as a separate output. If the user wants a list of figures and tables along with the table of contents, then the SY:THETOC.RNO control file can be used to implement the final operation. .NOTE .NO JUSTIFY One may choose to copy SY:THETOC.RNO into their own DK_: area so they can modify it to fit their own special needs. .END NOTE .TEXT Examples using RUNOFF with both input ^&and\& output spec's follow: .LIST .LE Uses the video terminal, TT:, for the output .define number list /TTOUTEX$/ .bbA .RUNOFF ^&SY:TT\&,DK:MYCTRL,METH1A,RSLT1A ^&TT\&: .TEXT .NOTE .NO JUSTIFY Notice that the TT spec is specified ^&twice\&. The first specification, SY:TT, calls the device control file that defines device-specific control sequences for underscoring, bolding, etc_. particular to the video terminal; this is part of the ^&input\& spec. The second TT is part of the ^&output\& spec and directs the output of RUNOFF to the TT_: device. (Moreover, recall there is no SY:LQ device control file for the letter-quality printer, as shown in example _#4, since it is contained within the RUNOFF program itself.) .ebA .BLANK;Also note, when formatting the output for the video terminal (via SY:TT), RNOTHESIS will omit the left margin indent. This prevents the output lines from wrapping around on the terminal screen. .END NOTE .TEXT .LE This example uses the dot-matrix "line printer", LP:, for the output. .bbA In addition, the /P switch option is included so that RUNOFF prints only pages 8 thru 12 (decimal). .define number list /LPOUTEX$/ .RUNOFF SY:LP,DK:MYCTRL,METH1A,RSLT1A/P:8.:12_. LP: .ebA .TEXT .LE Same as above, but places the output in DK:OUTPUT.DOC for later printing on the LP_: printer. Note that ".DOC" is the default file extension type for the output file specification. .RUNOFF SY:LP,DK:MYCTRL,METH1A,RSLT1A OUTPUT .TEXT .LE Formats and prints output on the letter-quality printer, LQ:, and saves the table of contents information in DK:TBINFO.RNT, which is later formatted and printed on the LQ_: printer. .B .NO FILL .!Indent and turn off filling and autoparagraphing .RUNOFF MYCTRL,(IMR,DIS)1A,BIB2B,APEN3C LQ:,TBINFO .RUNOFF MYCTRL,TBINFO.RNT LQ: .FILL .!Return left margin and filling/autoparagraphing to normal .TEXT .NOTE .NO JUSTIFY For the first command line, recall that ^&IMR\&1A.RNO is the control file from above that concatenates &INTR1A, &METH1A, and &RSLT1A. .B;Also concerning the first command line, the default file extension type for a table of contents information file (such as TBINFO) is ".RNT". .END NOTE 1 .TEXT .LE Alternately, this example stores the formatted table in DK:TABLE.DOC for later editing and printing on the LQ_: printer. Moreover, this example uses the SY:THETOC.RNO control file to produce a list of figures and tables as well. .B .NO FILL .!Indent and turn off filling and autoparagraphing .RUNOFF MYCTRL,SY:THETOC TABLE .EDIT TABLE.DOC .FILL .!Return left margin and filling/autoparagraphing to normal .TEXT .NOTE .NO JUSTIFY Although editing the formatted TABLE.DOC output--as illustrated above--may be the simplest method for the first-time RUNOFF user, editing the unformatted TBINFO.RNT file (prior to formatting) is more powerful and the method of choice. .B;The unformatted table-of-contents information file must be named "TBINFO.RNT" when using SY:THETOC.RNO for formatting. This is because SY:THETOC.RNO calls this information file by name during formatting. .END NOTE 1 .END TEXT .END LIST .section User-defined command language for RUNOFF/RNOTHESIS In practice, the command specifications given above are rarely used. Instead, they are "abbreviated" via several techniques: .LS .LE The use of "defined keys" under TSX-Plus allows any program to be invoked (or file name specified) by pressing a single key. Refer to the "Single-line Editor" section in the ^&Basic Operation\& chapter of the ^&TSX-Plus Reference Manual\& (must be version 6.0 or later) for more information concerning the DEFINE KEY command. Further information on the DEFINE KEY command may be found in the ^&Keyboard Commands\& chapter as well. .LE The use of command files under TSX-Plus to define frequently used command operations where up to 7 parameters may be passed into the command-procedure definition. Refer to the ^&Command Files\& chapter of the ^&TSX-Plus Reference Manual\& for more information. .IF BME .!Section internal to the Biomedical Eng Dept, ISU .BLANK .bbA The RUNOFF command file, SY:RNO.COM, demonstrates TSX-Plus parameter passing. Documentation (with examples) for this command file is available in the DOC_: directory as DOC:RNO.DOC. .ebA .ENDIF BME .LE The use of the User Command Linkage (UCL) to customize your own command language for frequently used command operations where 1 parameter may be passed into the command definition. This is described below. .END LIST In addition to its efficiency, the last technique is the easiest to learn, define, and use. When using UCL, it is useful to create a LOGON.COM command file that is automatically invoked each time you logon. This file should contain all the UCL commands you commonly define. An example LOGON.COM command file for defining RUNOFF operations is given below. Please take note--for the purpose of this example--the personal control file MYCTRL.RNO has been ^&renamed\& to THECTL.RNO to prevent confliction between personal format-control files used for letters and papers. .TEXT .BLANK .NO FILL .NO FLAGS ALL R TSXUCL .!This line runs the TSXUCL program TTLET*TER :== _R RUNOFF SY:TT,DK:LETCTL,^ TT: TTPAP*PER :== _R RUNOFF SY:TT,DK:PAPCTL,^ TT: TTT*HESIS :== _R RUNOFF SY:TT,DK:THECTL,^ TT: LPT*HESIS :== _R RUNOFF SY:LP,DK:THECTL,^ LP: LQT*HESIS :== _R RUNOFF THECTL,^ LQ: .IMMEDIATE IFNOT BME; MOD*IFY :== _SET PRIORITY 56\_EDIT ^\_SET PRIORITY 50 FX*THESIS :== MODIFY ^.RNO\TTTHESIS ^ !This is a comment line that terminates the TSXUCL program .FLAGS ALL .FILL .BLANK .END TEXT The first and last line in the above command definitions are optional, but they will significantly speed up execution of the LOGON.COM file if included. This is because the TSXUCL program is invoked only once rather than repetitively for each new command definition. The "__R " is also optional for speeding up command processing. The defined commands may be abbreviated anywhere after the "*". .NOTE NOTE: Using command files .NO JUSTIFY Please note, you execute command files with an "@" (no intervening space), rather than a "RUN#" keyboard command, where ".COM" is the assumed file extension type. If you requested LOGON file processing when your TSX account was created, then the system will automatically issue a "@LOGON" to execute your LOGON.COM file at the beginning of each logon session; however, you will need to execute it again to establish any changes you made to LOGON.COM during a given logon session. .BLK Once again, refer to the ^&Command Files\& chapter of the ^&TSX-Plus Reference Manual\& for complete information. .END NOTE .TEXT The UCL commands defined in the above command file can now be used as follows: .LS .LE This example formats and outputs METH1A.RNO and RSLT1A.RNO to the video terminal as in example _#$TTOUTEX$ of the "Output Specification" section given above. .TTTHE (METH,RSLT)1A .TEXT .LE This example performs the same operation but outputs to the dot-matrix printer as in example _#$LPOUTEX$ of the "Output Specification" section given above. .bbA Once again, the /P switch option instructs RUNOFF to only print pages 8 thru 12. .LPT (METH,RSLT)1A/P:8.:12. .ebA .TEXT .LE This last example is a two step process using the "fix thesis" UCL command to invoke the editor at high priority via the UCL command "MODIFY" then--upon exiting the editor--invoke the UCL command TTTHESIS to process the just-edited material directly out on the terminal for evaluation. .FXTHES METH1A .B .TEXT There are two things to recognize in this last example: .LS .LE UCL commands such as MODIFY and TTTHESIS can be nested within other UCL command definitions such as FXTHESIS. .TEXT .LE Several command operations--separated by a backslash--can be combined on a single UCL command definition like that of FXTHESIS. .END TEXT .END LIST 0 .END LIST All UCL commands currently defined can be listed using the TSX keyboard command "SHOW COMMANDS". If you plan to use UCL, spend 20 minutes reading the 4 page section, "User Defined Commands", in the ^&Keyboard Commands\& chapter of the ^&TSX-Plus Reference Manual\&. This will fully describe UCL and save you a great deal of time in the long run. .BLANK .bbA .majsect I RUNOFF/RNOTHESIS Text Formatting Considerations .section RNOTHESIS formatting options RNOTHESIS supports several thesis layouts, all of which are acceptable to the thesis office. You select a given layout by defining the appropriate RNOTHESIS options (or RUNOFF variants) with a RUNOFF ".VARIANT" command line. This command line must be placed just before the ".REQUIRE 'SY:THES2'" command line in your thesis control file, MYCTRL.RNO, as illustrated in the following example. .BLANK .TEXT .LM+5 .LITERAL .VARIANT NUM_HEAD ROMAN .!VARIANT cmd line precedes REQUIRE cmd ln .REQUIRE "SY:THES2" ----User customizations go here .REQUIRE "SY:THEEND" .END LITERAL .LM .END TEXT There are several RNOTHESIS options available, which are discussed below. You may specify all, one, or none of them on the RUNOFF ".VARIANT" command line to define your particular layout. .subsection The\& NUM__CHAP ^&option The NUM__CHAP variant enables chapter-|number prefixing of table, figure, and equation numbers so that "Figure 3.2" depicts the second figure in chapter three. This variant also enables numbering of the chapters themselves ^&without\& enabling the numbering of lower section levels. If you are going to be using chapter-number prefixing, you will also need to peruse the appendix section at the back which discusses the ^&usage\& of this feature. .subsection The\& NUM__HEAD ^&option The NUM__HEAD variant enables the numbering of ^&all\& heading levels, chapter headings included. The numbering at all levels is Arabic unless the ROMAN variant is also specified. The NUM__CHAP and the NUM__HEAD may be specified together to obtain both chapter-number prefixing and heading numbering simultaneously. If neither the NUM__CHAP nor NUM__HEAD variants are specified, then no heading numeration is performed in the document; that is, "no numeration" is the default setting. .subsection The\& ROMAN ^&option The ROMAN variant causes RNOTHESIS to employ upper-case Roman numeration for chapters, upper-case letters for major sections, Arabic numeration for sections, lower-case letters for subsections, and lower-case Roman numeration for subsubsections. If the ROMAN variant is ^¬\& specified, then Arabic numeration is used for all heading levels. .BLANK .TEXT .NO FILL .TABS PROPORTIONAL 4,8,,,8 ~ARABIC NUMERATION ~ROMAN NUMERATION ~3. Chapter ~III. Chapter ~3.4. Major Section ~ D. Major Section ~3.4.2. Section ~ 2. Section ~3.4.2.3. Subsection ~ c. Subsection ~3.4.2.3.4. Subsubsection ~ iv. Subsubsection .FILL .END TEXT .section Special formatting with RUNOFF flag functions RUNOFF recognizes a few special characters for "flagging" (or depicting) special text-formatting operations such as underlining, super/subscripting, bolding, Greek lettering, or overstriking. Since these special characters only serve to flag text-formatting operations, they are never printed in the output. For example, .DISABLE FLAGS ALL the ampersand (&) flag character is used with the uparrow (^) "begin operation" and backslash (\) "end operation" escape-flag characters to embrace text to be underlined. Likewise, the asterisk (*) flag character is used to designate text to be bolded. .TEXT .NOTE EXAMPLES: Using underlining, bolding, and escape flags .NO JUSTIFY TEXT INPUT (SOURCE): .BREAK This is some ^&text to be underlined\&, and this is some ^*text to be bolded\*. .BLANK .ENABLE FLAGS ALL TEXT OUTPUT (PRINTOUT): .BREAK This is some ^&text to be underlined\&, and this is some ^*text to be bolded\*. .END NOTE 1 .END TEXT In the above output, the underlining and bolding operations are performed where flag characters were encountered. Often times, you will want RUNOFF to regard (what is otherwise defined as) a flag character as ordinary "printable" character. This can be done in three ways: .LIST .LE;By preceding the flag character by an accept-flag character; the __ underscore is the default accept-flag character. For example, ___& will cause the ampersand to print. .LE;By disengaging total recognition of the flag character (by RUNOFF) using the RUNOFF ".DISABLE FLAGS XXXXX" command. For example, the command ".DISABLE FLAGS UNDERLINE" will allow the ampersand to print as a normal character until an ".ENABLE FLAGS UNDERLINE" command is encountered in the input. The ".DISABLE FLAGS ALL" command is used, in conjunction with the ".ENABLE FLAGS ALL" command, to temporarily allow nearly all flag characters to print (say for a figure or table). Consult the discussion on the ".ENABLE FLAGS" command in the ^&Bonner Lab RUNOFF\& manual for details. Special care should be exercised when disabling flags used by RNOTHESIS for any length of time. Although RNOTHESIS performs a ".SAVE STATUS" of the flag states and a ".RESTORE STATUS" as needed, unwanted results can still occur. Use the accept-flag method, discussed above, when in doubt. .LE;By defining the flag-depicted operation to be associated with an alternate character--otherwise rarely used in the text--using the RUNOFF ".FLAGS XXXXX" command. For example, ".FLAGS UNDERLINE _~" defines the tilde sign--rather than the ampersand sign--as the underline flag; therefore, the ampersand will now be regarded (and printed) as a normal character. .NOTE IMPORTANT .NO JUSTIFY This third method is intended for the ^&experienced\& RUNOFF user who is thoroughly familiar with the internal usage of flags in RNOTHESIS and the device-driver flag-escape characters used for his printer(s). Be cautious of what flags are redefined! .END NOTE 0 .END LIST The first method discussed is preferred when there is only an occasional problem requiring a flag character to print. In contrast, if a table (or figure) requires the printing of many dollar signs, which is the substitution-flag character, then the second method--using ".DISABLE FLAGS SUBSTITUTE" ^&in the body\& of the table--should be employed. RNOTHESIS will automatically perform a ".RESTORE STATUS" upon completion of the table to restore flag states as they were before. Along with the normal flag characters recognized by RUNOFF: .DISABLE FLAGS ALL &#_ .BR;RNOTHESIS also defines/enables: ^\|+${} .ENABLE FLAGS ALL .BLK One of the above methods will have to be employed in order to print these characters, with one exception: the _+ period flag will print normally--as a plus sign--in an ".equ(list) begin" and ".equ(list) end" definition block because RNOTHESIS disables period-flag recognition (.DISABLE FLAGS PERIOD) here. .subsection Imbedded horizontal space processing RUNOFF has two modes of text justification. With line filling turned off (via ".NO FILL"), RUNOFF produces output lines that closely follow the input lines without shuffling words between lines to give a more right-justified appearance. This mode is often used in tables or figures where the typist has manually arranged the text. In contrast, with line filling turned on (via ".FILL"), RUNOFF assembles each output line--removing any excess spaces--to produce a relatively justified right margin (".NO JUSTIFY" mode) or a flush right margin (".JUSTIFY" mode). RNOTHESIS principally operates in the fill, no-justify mode. The filling process normally places one space between each word unless it ends with "terminal punctuation" (such as a period), then the filling process places two. This filling technique can present occasional problems when text ^&must\& stay together, or when special spacing is required at the end of a sentence or after an abbreviation. RUNOFF flag functions are then employed to achieve the desired spacing as discussed below. .subsub End-of-sentence double spacing If a word ends with a terminal-punctuation mark (as defined by the RUNOFF ".PERIOD" command) such as a period, colon, or question mark; then that punctuation is followed by double spaces. If double spacing is required after a character that is not a terminal-punctuation mark (such as a parenthesis or footnote number), then it must be followed with a _+ period flag. .TEXT .NOTE EXAMPLES: Using the period flag .DISABLE FLAGS ALL .NO FILL such as after a parenthesis.)+ Insert a period flag. after a footnote superscript.^>3^<+ Insert a period flag. .ENABLE FLAGS ALL .FILL .END NOTE 1 .END TEXT .subsub Obtaining a single space after a period\& Occasionally, a single space is required after a terminal-punctuation mark such as a period. This single space is achieved--on a case by case bases--by preceding the punctuation mark with an accept-flag (or quote) character. .NOTE EXAMPLES: Using the accept flag .NO JUSTIFY .SPACING 1 These are some examples of using the accept (__) flag to get a single space following a period such as in the abbreviations e.g___. i.e___. etc___. or in a name like Dept___. of Engineering. .END NOTE 1 .subsub Unseparable spacing Occasionally, text must be kept together within the same line such as in a name, heading, or formula. This effect is achieved .DISABLE FLAGS ALL with the required-space (#) flag character. This can occur in titles or words such as W#A#R#N#I#N#G or in names like Mr.#Johnson and U.S.#Marines. With the name examples, the required-space flag serves both to prevent the name from being split across lines as well as to force a single space after a period. .ENABLE FLAGS ALL The required-space flag is also used to reserve a position for a Greek letter in an equation (See the "Output device considerations" section of this document for details.) or to define a group of items to be centered by tabulation (e.g_. when centering "item groups" within a table). .TEST TEXT 13 .NOTE EXAMPLE: Tab centering with the required-space flag .DISABLE FLAGS ALL .NO FLAGS TAB .NO FILL .SPACING 1 EXAMPLE INPUT: .BLANK .FLAGS TAB ~ .!Define the tilde to be a tab operation .!Below, setup 3 columns, and center on . . . .TABS PROPORTIONAL 3,C,C,C .!the column partitions ~^&COLUMN#HEADING#1 ~COLUMN#HEADING#2\& .BLANK ~line#1,#column#1 ~line#1,#column#2 ~ln#2,#col#1 ~ln#2,#col#2 .ENABLE FLAGS ALL .FLAGS TAB ~ .BLANK 2 .TEST TEXT 7 EXAMPLE OUTPUT: .BLANK .TABS PROPORTIONAL 3,C,C,C ~^&COLUMN#HEADING#1 ~COLUMN#HEADING#2\& .BLANK ~line#1,#column#1 ~line#1,#column#2 ~ln#2,#col#1 ~ln#2,#col#2 .END NOTE 1 .subsub Separable spacing One or more horizontal spaces, which ^&can\& be broken across output lines, may be generated by placing an accept-flag character in front of each space; this produces a "quoted space" (__#). In the example below, a series of asterisks are separated by 3 spaces. The series may be split between output lines at the middle where there are quoted spaces (__#) but not at the ends where there are required spaces (_#). .BLANK .DISABLE FLAGS ALL EXAMPLE: *###*###*_ _ _ *###*###* .ENABLE FLAGS ALL .BLANK .majsect I Output Processing and Operational Considerations .section Output device considerations This section discusses possible problems (and solutions) of using "special output features" on different types of terminals and printers. These "special features" include superscripting, subscripting, equation formatting, multiple character pitches, and multiple fonts (including Greek letters). RUNOFF/RNOTHESIS generates appropriate control codes for many kinds of output devices; however, not all devices can support all features. .subsection Video terminals The more advanced graphics terminals should support all special features with the possible exception of multiple fonts (including Greek letters). Graphics terminals would be the GIGI, VT125, and VT200 series terminals. The older terminals|--such as the VT100--|support some superscripting and subscripting when doubling spacing; however, none of the other special features (including underscoring) are well supported. .IF BME .!Section internal to the Biomedical Eng Dept, ISU In the Biomedical Engineering Department, the GIGI terminal and the VT103 terminal in the PDP-11 room both have some graphics capability to support most of the special features (including underscoring) except multiple font types. The remaining terminals on our system support few special features. .ENDIF BME .subsection Dot-matrix printers .IMMEDIATE TEST TEXT Like the video terminals discussed above, the newer matrix printers (both impact and ink-jet) will support all the special features (including multiple fonts). Older matrix printers (like the LA120 .IMMEDIATE IF BME;in Biomedical Engineering .NO SPACE;) may only support multiple horizontal pitches, but none of the other features. In these instances, RUNOFF will try its best to perform whatever formatting the printer can support. The example thesis control file, SY:THECTL.RNO, illustrates alternative formatting of some variable names (for the older matrix printer) that would otherwise require the super/subscripting feature. This example|--repro=duced below--allows these subscripted variables to still appear nicely on the older matrix printer. .TEXT .BLANK .LM +5 .LITERAL .IF LP .!Don't define super/subscripting variables for the LP: ptr .DEFINE SUBSTITUTE /V/V .DEFINE SUBSTITUTE /CO2V/$VCO2 .DEFINE SUBSTITUTE /O2V/$VO2 .DEFINE SUBSTITUTE /MO2V/$O2Vmax .ELSE LP .!Define V-dot CO2, etc. for all other output devices .FLAGS OVERSTRIKE .DEFINE SUBSTITUTE /V/^(.^)%V .DEFINE SUBSTITUTE /CO2V/$V^^> .DEFINE SUBSTITUTE /O2V/$V^^> .DEFINE SUBSTITUTE /MO2V/$O2V^ .ENDIF LP .END LITERAL .LM .!Restore default formatting settings .END TEXT .subsection Daisywheel printers Daisywheel printers (such as the Diablo 630 .IMMEDIATE IF BME;in Biomedical Engineering .NO SPACE;) will support most of the special features. When performing super/subscripting or equation formatting, however, it may be necessary to set the paper release so that the paper-feed rollers engage the paper. This is because the tractor feed alone will not accurately shift paper direction for these operations. When your special requirements are complete, return the paper release to its normal "disengaged" position for tractor-feed operation. If you do not, the roller drive will fight the tractor-feed mechanism causing the paper to eventually tear or bind in the printer. Although bolding and shadow printing are available (but not allowed in a thesis), the standard 88/96 character daisywheel printer will not support multiple fonts. If you still must have Greek letters, this can be achieved by placing a RUNOFF required-space flag character (normally a _# sign) where a Greek letter should be. Later, after printing, the desired Greek letters may be typed in (or rubbed on) over the required-space positions. .ebA .section Printing draft copies Although automatic hyphenation may be desirable in the final copy, using the RUNOFF ".DISABLE HYPHENATION" command will significantly speed up RUNOFF processing for draft copies. .bbA There is also a RUNOFF switch option, /H:N, that will request "no hyphenation". Refer to the ^&Operating Procedures\& chapter of the ^&Bonner Lab RUNOFF\& manual for a complete listing and discussion of RUNOFF switch options. .ebA When printing draft copies, always use the dot-matrix printer, LP:. Not only is this printer 3 times cheaper to use (2 cents/page) than the letter-quality printer (6 cents/page), but it's 3 times faster as well. .bbA .NOTE .NO JUSTIFY Please note, however, that ^¬\& all dot-matrix printers will support all RUNOFF special features (such as equation formatting or Greek lettering). See the "Output device considerations" section for more discussion. .END NOTE 1 .ebA Paper may also be saved by asking RUNOFF/RNOTHESIS to single space material within a paragraph--as was done in this document--by adding the following control lines to your thesis control file, MYCTRL.RNO: .BLK .NO FILL .SPACING 1 .!Use single spacing .SET PARAGRAPH ,1 .!Place 1 blank line between paragraphs .FILL .IF BME .!Section internal to the Biomedical Eng Dept, ISU Some departments (such as Journalism) require their students to purchase their own ribbons .bbA (at _$4.25 each) .ebA from the bookstore for use on the letter-quality printer in addition to a _$25/semester microcomputer usage fee. Please be conservative with our printing resources so our system can remain free (or at minimal cost) as long as possible. Everyone will benefit. .ENDIF BME .BREAK .SPACING .!Restore normal thesis spacing .SET PARAGRAPH ,0 .!Restore normal thesis paragraphing