.PAGE SIZE 60,80 .TITLE ^BFLAG CHARACTERS\B .LAYOUT 1 .! Titles and page numbers centered .FLAGS ACCEPT ¨ .! This allows us to use underscores freely .DISPLAY NUMBER "^B","\B" .! Page number boldfaced .SET PARAGRAPH 0 .AUTOPARAGRAPH .FIGURE 7 .HEADERS FLAG CHARACTERS ^6 .FIGURE 1 ^B________________________________________________________________________________\B .FIGURE 2 RNO uses several characters as ^Bflag characters\B. This means that if you need to use any of these characters as regular text, you must first disable RNO's special use of them. The default flag characters are: .FIGURE.NO FILL ¨_ ¨# ¨& ¨^ ¨\ ¨. tab ^2 .FILL.P The period is a flag only when it occurs in column 1 of an input line. None of these are flags when used between LITERAL and END LITERAL commands. In most cases, the flag character informs RNO to perform some special function, but the character itself does not appear in the output document. The functions of the various flags are discussed below. If you need to use one of these as text, the easiest way to get RNO to accept it normally is to precede the character by an underscore. This is why the underscore is called the ^BAccept Flag\B; it causes RNO to accept the following character as a normal character. To use the underscore itself as a regular character, you just use two underscores everywhere you want one to appear. This is probably the most common thing that document writers forget. For example, if you need the string "^B¨#123¨\45¨_01¨_A\B" printed in your document, and you forget to use Accept Flags before the characters ^B¨#\B, ^B¨\\B, and ^B¨_\B, then the string will appear incorrectly in the document as "^B 1234501A\B". To get the proper output, the input string must look like "^B¨_¨#123¨_¨\45¨_¨_01¨_¨_A\B". Of course, if you use any of these characters extensively in your text, it can be very tedious to go through the entire input placing Accept Flags where they are needed. Fortunately, there are alternatives. You can turn off any interfering flags, if you do not need their function in your document. Or you can redefine a flag to be another character which your document never uses. For example, you can easily redefine the Accept Flag to be a tilde (^B~\B) if your document contains too many underscores to worry about, but does not contain any tildes. There are other optional flag characters which are initially unused, but may be turned on by using one of the FLAGS commands. These are: .FIGURE.NO FILL ¨$ ¨= ¨% ¨+ ¨< ¨> ¨| ¨{ ¨} ^2 .FILL.P In addition, the RNO commands FLAGS SPECIAL and FLAGS ESCAPE allow you to define other flags and give them meanings specific to your document. If any optional or user-defined flags are turned on, then the rules above apply: whenever the character is used as normal text, you must precede it with Accept Flag. .FIGURE 1 DEFAULT FLAGS ^5 ^B¨_##ACCEPT FLAG\B .lm5.p The underscore character is the Accept Flag. When used immediately before any flag character (including another underscore), it disables the flag character and causes it to be treated as normal text. The Accept Flag itself does not appear in the output document. If a normal space or a tab character is preceded by an Accept Flag, the space or tab is treated as a Non-expandable Space (see below). If any other normal character is preceded by an Accept Flag, the Accept Flag disappears and the following character is treated normally. .lm-5 ^B¨###SPACE FLAG, or NON-EXPANDABLE SPACE, or QUOTED SPACE\B .lm5.p When processing the text of a document, RNO often expands spaces (blanks) between words to multiple spaces in order to ^Bjustify\B a line, i.e. to make the right margin even. RNO also converts single spaces after periods, colons, question marks, and exclamation points to two spaces (or more, if necessary for justification). Anywhere a blank occurs in text is considered a candidate spot for ending a line and starting another. The number sign is the flag called the ^BNon-expandable Space\B or ^BQuoted Space\B. Each time it is used in the input text, it appears in the output document as exactly one space. RNO does not expand this space to justify the line or to pad after a sentence, and does not break a line at this point. .lm-5 ^B¨&##UNDERLINE FLAG\B .lm5.p The ampersand controls ^&underlining\&. When this Underline Flag is used in the input text, the single character following it is underlined. For example, "^B¨&A¨&B¨&C\B" becomes "^B&A&B&C\B". To underline an entire sequence of text, you precede the sequence with the string "^B¨^¨&\B" and follow it with the string "^B¨\¨&\B". Spaces within the sequence are not underlined (this includes normal spaces, Non-expandable Spaces, and spaces preceded by an Accept Flag). Individual spaces or tabs can be underlined by immediately preceding them with the Underline Flag. You can also have RNO underline all spaces by issuing the UNDERLINE SPACES command. You can control exactly what characters are underlineable by using the UNDERLINE and NO UNDERLINE commands. Words which contain individually-underlined characters are not considered for automatic hyphenation. .lm-5 ^B¨^##UPPERCASE FLAG, or MODE LOCK\B .lm5.p The circumflex character, the Uppercase Flag, has several uses. When used alone, it causes the following character to be capitalized. When used in the string "^B¨^¨&\B", it turns on underlining. Used as "^B¨^¨<\B" or "^B¨^¨^\B", it (respectively) turns on or off "upper case" mode, described under the Capitalize Flag. The string "^B¨^¨^\B" also turns off "lower case" mode, which is described below. The Uppercase Flag is also often used as the first character of ^Bescape sequences\B; see the section on ESCAPE SEQUENCES for more information. Note that the Uppercase Flag and the Capitalize Flag are very different; the similarity in their names can be confusing. .lm-5 ^B¨\##LOWERCASE FLAG, or MODE UNLOCK\B .lm5.p The backslash is the Lowercase Flag and, like the uppercase flag, has multiple uses. When used alone, it causes the following character to be lower-cased. When used in the string "^B¨\¨\\B", it places RNO in "lower case" mode. All input text following this string is converted to lower case, except where explicitly capitalized using the Uppercase Flag. This mode is turned off by specifying "^B¨^¨^\B", which causes all following text to be used in its original case without conversion. The string "^B¨\¨&\B" turns off underlining. The Lowercase Flag is also often used as the first character of ^Bescape sequences\B; see the section on ESCAPE SEQUENCES for more information. .lm-5 ^B¨.##CONTROL FLAG\B .lm5.p The period is the Control Flag. All input lines which contain the Control Flag in column 1 are assumed to be RNO commands, and not part of the text of the document. If the period is preceded by a space or any other character, then the line is not considered a command line. Since several RNO commands may be placed on one line, periods past column 1 may be used as Control Flags, but only if there was a period in column 1. .lm-5 .lm-5 ^Btab##TAB FLAG\B .lm5.p The tab character is considered a flag because you can turn its function (horizontal spacing) off and on and you can assign its function to a different character. When turned off, a tab is treated as a space. .lm-5 .FIGURE 1 OPTIONAL FLAGS ^5 ^B¨$##SUBSTITUTE FLAG\B .lm5.p The dollar sign is the Substitute Flag. You must issue the FLAGS SUBSTITUTE command before you use this flag. This flag is used to indicate the beginning of a ^Bsubstitution label\B. RNO removes the substitution label and replaces it with the text associated with the label. substitution labels can be thought of as variable names, which are replaced by some string value at the points they are referenced in the text. See the section on SUBSTITUTIONS for more information. .lm-5 ^B¨=##HYPHENATE FLAG\B .lm5.p The equal sign is the Hyphenate Flag. You must issue the FLAGS HYPHENATE command before using this flag. If a word is preceded by a Hyphenate Flag, that word will NOT be hyphenated. If the Hyphenate Flag is embedded inside a word, then hyphenation, if necessary, is only done at a point where the flag occurs (it may be used in multiple places within a word). Automatic hyphenation is not tried on words which use the Hyphenate Flag. .; .;***** THE FOLLOWING SENTENCE CONTAINS INFORMATION WHICH MAY BE INCORRECT ***** .; If the Hyphenate Flag appears at the very end of a line, it indicates that the next line is a continuation of the current one, and that a hyphen should be used at this point. .lm-5 ^B¨%##OVERSTRIKE FLAG\B .lm5.p .FLAGS OVERSTRIKE The percent sign is the Overstrike Flag. You must issue the FLAGS OVERSTRIKE command to use overstriking. Each occurrence of the Overstrike Flag is converted to a backspace, so that the preceding character and the following character are printed in the same column. This can be used to create characters not available on the printer. Note, however, that not all printers support backspacing. Multiple overstriking is allowed: for instance, the input string "^B¨|¨%O¨%-\B" creates the output "^B¨|%O%-\B". .NO FLAGS OVERSTRIKE .lm-5 ^B¨+##PERIOD FLAG\B .lm5.p .FLAGS PERIOD The plus sign is the Period Flag. You must issue the FLAGS PERIOD command to use this flag. Each occurrence of the Period Flag followed by a space generates an extra space. For example "^BA¨+ Z\B" appears in the output document as "^BA+ Z\B". .NO FLAGS PERIOD .lm-5 ^B¨<##CAPITALIZE FLAG\B .lm5.p The less-than character is the Capitalize Flag. You must issue the FLAGS CAPITALIZE command before using this flag. If this flag appears at the beginning of a word, that word is capitalized. The string "^B¨^¨<\B" places RNO into "upper case" mode; all subsequent text is capitalized until the string "^B¨^¨^\B" appears. Upper case mode is useful mainly on terminals which do not support both upper and lower case. Note that the Capitalize Flag and the Uppercase Flag are very different; the similarity in their names can be confusing. .lm-5 ^B¨>##INDEX FLAG and SUBINDEX FLAG\B .lm5.p The greater-than character is actually two flags, which can be separately enabled. After FLAGS INDEX has been issued, "^B¨>\B" is the Index Flag, and is used in the text of the document to mark terms to be included in the index. After FLAGS SUBINDEX has been issued, "^B¨>\B" is the Subindex Flag, which is used in the RNO command INDEX to indicate subindex terms. Note that these two flags do not conflict, and may coexist, since the Index Flag is only used in document text, and the Subindex Flag is only used in the INDEX command. See the section on INDEXING for more information. .lm-5 ^B¨|##BREAK FLAG\B .lm5.p The vertical bar is the Break Flag. You must issue the FLAGS BREAK command before using this flag. The Break Flag is used to mark where a word or expression may be broken at the end of a line. No hyphen is inserted if the word is broken at a Break Flag. A word may contain both Hyphenation Flags and Break Flags. Automatic hyphenation is not tried on words containing Break Flags. The related AUTOBREAK command allows line breaks to occur automatically when a specified character occurs in the text. The Break Flag is also used in conjunction with the TAB RIGHT command to indicate where a string is to be justified. .; .;***** THE FOLLOWING SENTENCE CONTAINS INFORMATION WHICH MAY BE INCORRECT ***** .; If the Break Flag appears at the very end of a line, it indicates that the next line is a continuation of the current one. .lm-5 ^B¨{ and }##EQUATION FLAGS\B .lm5.p The left and right brace characters are the Equation Flags. The FLAGS EQUATION command must be issued before these flags are used. These flags cannot be redefined to be different characters. See the section on FORMATTING EQUATIONS for details. .lm-5 ^BUSER-DEFINED FLAGS\B .lm5.p By using the RNO commands FLAGS ESCAPE and FLAGS SPECIAL, you may cause characters of your own choosing to become flag characters. Any flag character you define must not be an existing flag, and must not be alphabetic, numeric, or a space. User-defined flags follow the same rules as all other flags; they cause RNO to perform some special function, and do not get printed in the output document. See the section on ESCAPE SEQUENCES for more information. .lm-5 .FIGURE 1 COMMANDS RELATED TO FLAGS^5 There are four generic RNO commands which control the processing of flag characters. They are: .FIGURE.NO FILL FLAGS flag_name ENABLE FLAGS flag_name NO FLAGS flag_name DISABLE FLAGS flag_name .FILL.P where 'flag_name' is the name of one of the flags described in the preceding section, or the keyword ALL (described below). The FLAGS command ^&turns on\& recognition of a flag; NO FLAGS ^&turns off\& the recognition. The FLAGS command can also be used to redefine a flag to be a different character than the default. For example, the command: .FIGURE.NO FILL .FLAGS ACCEPT ~ .FILL.P changes the Accept Flag from the underscore character to the tilde. It also turns on recognition of the Accept Flag (if it was previously turned off). The ENABLE FLAGS and DISABLE FLAGS commands ^&enable\& and ^&disable\& recognition of a flag. Note that the end effect is the same as ^&turning on\& and ^&turning off\& recognition: when recognition is turned off, and/or disabled, then the flag character is not used by RNO for any special function. In this case you can use the character freely in your text without having to precede it with the Accept Flag. When recognition is turned on ^Band\B enabled, RNO uses the character as a flag as defined in the preceding section. Initially, all flags are ^&enabled\&; the default flags have recognition ^&turned on\&, and the optional flags have recognition ^&turned off\&. Disabling a flag cannot be reversed by turning on the flag; only by enabling it. Turning a flag off cannot be reversed by enabling it; only by turning it back on. The Control Flag is a special case. There are no commands DISABLE FLAGS CONTROL or ENABLE FLAGS CONTROL. You can turn off the Control Flag with the command NO FLAGS CONTROL, but then your input can contain no more RNO commands, since a command line is defined by a Control Flag occurring in column 1. You can change the Control Flag using the FLAGS CONTROL command, but then all following commands (including those from REQUIRE files) must use the new flag character. The command DISABLE FLAGS ALL ^&disables\& recognition of all flags except for the Control Flag and the Tab Flag. ENABLE FLAGS ALL reverses this. Confusingly, NO FLAGS ALL and FLAGS ALL are identical to DISABLE FLAGS ALL and ENABLE FLAGS ALL. None of these four commands modify the ^&off/on\& status of any flags; just the ^&disabled/enabled\& status. Using NO FLAGS ALL followed by one or more ENABLE FLAGS commands is the easiest way to disable all flags except for a few which you explicitly want enabled. .FIGURE 1 COMMANDS INDIRECTLY RELATED TO FLAGS^5 The commands described above control the ^&recognition\& of the various flags. In many instances, there are other commands which enable and disable the ^&functions\& which the flag characters perform. For instance, there are commands ENABLE UNDERLINING and DISABLE UNDERLINING; the default is ENABLE UNDERLINING. If the Underline Flag is enabled and turned on (the default), but DISABLE UNDERLINING is issued, then the output document will include no underlined text; the underlining ^&function\& is disabled. Note, however, that any Underline Flags (^B¨&\B) in the input will still be removed unless preceded by Accept Flags, since the Underline ^&Flag\& is still enabled and turned on. Therefore, you can disable the use of a function either by disabling the function itself, or by disabling or turning off the flags which perform the function. It is sometimes easier to disable the function, especially when the flags are already present in the document input.