.keep tabs .LEFT MARGIN .ifnot hlp .hl 1 Tab Stops .endif hlp .helpc TABs Lists of items may be conveniently expressed in tabular form using the tab key and the _.TAB STOPS command. Every time you press the "tab" key you have entered a tab into the text. Just as on a typewriter a tab will make the text begin at the next tab stop. .ifnot small The tab stops are set using the _.TAB STOPS command. You can right justify or center justify the items by specifying a right stop. When tabbing it is suggested that you use the _.NO JUSTIFY command or the _.NO FILL command. Having justification on will either give you error messages, or cause unpredictable results. Remember that tab stops to the left of the left margin are not effective. You should also _.DISABLE HYPHENATION when using the tab feature. .endif small .LEFT MARGIN +5 .if hlp .if RSX .ts +10,+10,+10,+10,+10,+10 .i5;ADDITIONAL HELP AVAILABLE: STOPS PROPORTIONAL RIGHT LEFT disabled ExA ExB ExC ExD ExE .J .endif rsx .endif hlp .helpd STOPS .br .q _.TAB STOPS ["ell"][+n1],["ell"][+n2], . . . .qq _.TS ["ell"][+n1],["ell"][+n2], . . . .p.x TAB>STOPS This command clears all previous tabs, then sets new ones. Each n specifies the column number for the tab stop That is n2 must be bigger than n1 and so on. If a tab stop is +n then it will be n more than the previous one. If the first stop is +n then it will be n more than the left margin. If the n is prefaced by either R, C, or L then the text is right, center, or left justified. If the number is preceeded by a literal then the text inside the literal is used as an ellipses to fill in the space generated by the tab. .ifnot small The maximum literal size is 15 characters. .i5;DEFAULT: _.TAB STOPS 8,16,24,32,40,48,56,64,.#.#. .i5;(+- tab stops are defined differently in DSR) .i5;(The R,L parameters, and ellipses are not available in DSR) .if hlp .if RSX.i5;ADDITIONAL HELP AVAILABLE: example .endif rsx .endif hlp helpe example .s.c;Example: .i5;_.TAB STOPS +5,+10,+10,+10,+10 .br;Sets up a series of stops every 10 columns with the first one 5 from the left margin. .i5;_.TAB STOPS 10,20,30,40,50 .br;Also sets up a series of stops every 10 columns, but the first stop is at columnt 10. The first tab is 10 from the left margin only if the left margin is at zero. .i5;_.TAB STOPS ". " L20,C25,R40 .br;Sets up the first column to be filled with ellipses with the text left justified on column 20, center justified at 25, and right justified at 40. .endif small .helpd PROPORTIONAL .q _.TAB PROPORTIONAL n,["ell"][+-n1],["ell"][+-n2],,, .qq _.TABP n,["ell"][+-n1],["ell"][+-n2],,, .p.x TAB>PROPORTIONAL This sets tab stops to create n columns across a page between the left and right margins. The first column begins at the left margin and ends at the first tab stop. The second column begins at the first tab stop and ends at the second one. The last one ends at the right margin. n must be 2 or larger. Tab stops are set so that all unspecified columns have equal width. You specify column 1 by specifying n1, column 2 by n2 and so on. When you omit a column it is unspecified. If you specify a column as either + or -n then it is n larger or smaller than the unspecified ones. Using + or - you may increase or decrease each column width from an evenly spaced one. .ifnot small A column width may not exceed 127. The actual number of tab stops set up is n-1. So if you want 3 columns only 2 tab stops are set up. You may specify ellipses, and right or left justification as in the _.TAB STOPS command. .br;(Not available in DSR) .if hlp .if RSX.i5;ADDITIONAL HELP AVAILABLE: example .endif rsx .endif hlp .helpe example .p For example you wish to set up 7 columns with 10 spaces in the second column, and 5 spaces in the 6'th column: .i5;_.TAB PROPORTIONAL 7,,10,,,,5 .br;Another example is to set up 7 columns with the first and last only 5 spaces wide to allow for indeted columns: .i5;_.TAB PROPORTIONAL 7,5,,,,,,5 .br;This last example is a typical setup for a table. Now if you set up your table and after looking at the result you need to increase column 2 by 2 spaces and decrease column 4 by 1 space you use: .i5;_.TAB PROPORTIONAL 7,5,+2,,-1,,,5 .s;When this command is used all previously specified tab stops are cleared. This command is normally used instead of _.TAB STOPS for evenly proportioning your columns. .endif small .helpd LEFT .q _.TAB LEFT .qq _.TL .p.x TAB>LEFT This sets unspecified tabs to left justification. If you do not specify either _.TAB LEFT or RIGHT then _.TAB LEFT is assumed. .ifnot small The following example illustrates the _.TAB LEFT command. .i5;(Not available in DSR) You type in the following text: .s.ts +8,+8,+8,+8,+8 .literal .NO FILL .TAB STOPS +10,+10,+10,+10 .TAB LEFT 12345678901234567890123456789012345678901234567890 NAME Jan Feb Mar April Jones 152.75 0.00 3.78 1000.50 Smith 4.95 300.22 5.75 54.95 .end literal .s.i5; Which produces the following text: .s.NO FILL .TAB STOPS +10+10,+10,+10 .TAB LEFT 12345678901234567890123456789012345678901234567890 NAME Jan Feb Mar April Jones 152.75 0.00 3.78 1000.50 Smith 4.95 300.22 5.75 54.95 .fill.end text.tab left .endif small .helpd RIGHT .br .q _.TAB RIGHT .qq _.TR .p.x TAB>RIGHT This causes the text following an unspecified tab to be right justified. This command is the opposite of _.TAB LEFT. The text is right justified at the next tab terminator. The text is considered to be terminated by either a space, tab, end of line, break character, or autobreak character. .ifnot small If the break character is used to define the right side of the text, then the _.FLAGS BREAK command must be issued. This allows typing tables with the text right justified, or with an arbitrary point (defined by the break) lined up. .i5;(Not available in DSR) .text .i5;For example you enter the following text: .s.ts +8,+8,+8,+8,+8 .literal .NO FILL .TAB STOPS +20,+10,+10,+10 .TAB RIGHT 12345678901234567890123456789012345678901234567890 NAME Jan Feb Mar April Jones 152.75 0.00 3.78 1000.50 Smith 4.95 300.22 5.75 54.95 .end literal .s.i5; Which produces the following text: .s.NO FILL .TAB STOPS +20+10,+10,+10 .TAB RIGHT 12345678901234567890123456789012345678901234567890 NAME Jan Feb Mar April Jones 152.75 0.00 3.78 1000.50 Smith 4.95 300.22 5.75 54.95 .fill.end text.tab left .etx .helpd ExA .br .s.c;^&EXAMPLES\& .p.text The first example of this is listing a column of figures right justified. You type in the following text: .s.tab stops +8,+8,+8,+8,+8 .literal .NO FILL .TAB STOPS R+20,R+10,R+10,R+10 12345678901234567890123456789012345678901234567890 NAME Jan Feb Mar April Jones 152.75 0.00 3.78 1000.50 Smith 4.95 300.22 5.75 54.95 .end literal .s.i5; Which produces the following text: .p .NO FILL .TAB STOPS R+20,R+10,R+10,R+10 12345678901234567890123456789012345678901234567890 NAME Jan Feb Mar April Jones 152.75 0.00 3.78 1000.50 Smith 4.95 300.22 5.75 54.95 .p.fill .tx.tab left .helpd ExB .br The second example is columns of figures lined up along the decimal points using the break flag. You input the following lines: .p .ts +8,+8,+8,+8,+8 .lt .NO FILL .FLAGS BREAK .TAB STOPS R+10,R+10,R+10,R+10 12345678901234567890123456789012345678901234567890 1|.23 3|.1415 75|.2 789|.0 55|.2 100|.98765 .EL .s.i5; Which produces the following text: .S.NO FILL .FLAGS BREAK .TAB STOPS R+10,R+10,R+10,R+10 12345678901234567890123456789012345678901234567890 1|.23 3|.1415 75|.2 789|.0 55|.2 100|.98765 .end text .s.FILL .tab left.nfl break .helpd ExC .br Here is another way of lining up decimal points using autobreak! .p .ts +8,+8,+8,+8,+8 .literal .NO FILL .FLAGS BREAK .TAB STOPS R+10,R+10,R+10,R+10 .AUTOBREAK "." 12345678901234567890123456789012345678901234567890 1.23 3.1415 75.2 789.0 55.2 100.98765 .END LITERAL .s.i5; Which produces the following text: .p .NO FILL .FLAGS BREAK .TAB STOPS R+10,R+10,R+10,R+10 .AUTOBREAK "." 12345678901234567890123456789012345678901234567890 1.23 3.1415 75.2 789.0 55.2 100.98765 .nab "." .FILL .tab left.nfl break .text .p .helpd ExD .br Here is an example of centered justifying. The following text: .nf.s.ts +8,+8,+8,+8,+8 .tab left _.tabp 5,C7,C,C,C,C7 .tr .nf 123456789012345678901234567890123456789012345678901234567890 Mary Prunella Eve Sue Theresa Sadie Helen Agripinella Produces: .tabp 5,C7,C,C,C,C7 .tr .nf 123456789012345678901234567890123456789012345678901234567890 Mary Prunella Eve Sue Theresa Sadie Helen Agripinella .FILL .nfl break .etx .helpd ExE .s.c;Laundry lists .p You may wish to set up a series of tab stops to produce a list of items. If no item needs to go in any particular column you may produce the desired effect by setting _.FILL _.NO JUSTIFY. Each item may be preceeded by a tab. If you wish the left hand column to line up with the left margin use _.NO KEEP TABS. Otherwise the first column will line up on the first tab stop. .helpd disabled .s.c;Note .p Tab stops are disabled and converted to single spaces when: .list 0 .le;After _.RIGHT .le;After _.CENTER .le;During equations .le;Inside titles/subtitles .els 0 .endif small .helpc ELLIPSES .q _.ELLIPSES .qq _.ELL .qn _.NO ELLIPSES .qn _.NELL .x NO>ELLIPSES .p.x ELLIPSES _.ELLIPSES causes tabbed text to be filled with ellipses rather than spaces. .ifnot small This command only changes tab stops that do not have ellipses associated with them. In other words if you tab and this feature is enabled the text will be padded by ellipses (#.#.#.#.) rather than spaces between tab stops. .i5;DEFAULT: _.NO ELLIPSES .i5;(Not available in DSR) .if hlp .if RSX .I5;ADDITIONAL HELP AVAILABLE: example .endif rsx .endif hlp .helpd example .s; For example you type in the following text: .s.ts +8,+8,+8,+8,+8 .literal .NO FILL .TAB STOPS " "R+15,R+13,R+13,R+13 12345678901234567890123456789012345678901234567890 NAME Jan Feb Mar .ELLIPSES Jones 152.75 0.00 3.78 .NO ELLIPSES Smith 4.95 300.22 5.75 .ELLIPSES Brown 0.00 1056.19 25.49 .end literal .s.i5; Which produces the following text: .NO FILL .TAB STOPS " "R+15,R+13,R+13,R+13 12345678901234567890123456789012345678901234567890 NAME Jan Feb Mar .ell .ELLIPSES Jones 152.75 0.00 3.78 .NO ELLIPSES Smith 4.95 300.22 5.75 .ELLIPSES Brown 0.00 1056.19 25.49 .nell .no ellipses .tl .fill .endif small .ts +8,+8,+8,+8,+8,+8,+8,+8,+8,+8,+8,+8