home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / KAYPRO / OUTLINER.LBR / OUTLINER.DZC / OUTLINER.DOC
Text File  |  2000-06-30  |  19KB  |  363 lines

  1.                               O U T L I N E R
  2.  
  3.                                 release 1.0
  4.  
  5.                            an Outline Processor
  6.                                   U&U Ltd
  7.  
  8.                               Copyright 1987
  9.                               David A. Usher
  10.                             62 Turkey Hill Road
  11.                             Ithaca, N.Y.  14850
  12.  
  13.   (You may use or copy the program and documentation, but not sell them)
  14.  
  15.  
  16. What it is:
  17.  
  18.      Outliner  is  an outline processor,  that is it can be used  to  write
  19. outlines  or  organize ideas with a minimum of fuss.    I have used it  for
  20. preparing agendas,  research seminars, and outlines for papers.   This is a
  21. no-nonsense outliner,  with streamlined editing and few  restrictions,  but
  22. without some of the bells and whistles.
  23.  
  24. What it runs on:
  25.  
  26.      The program was written for a Z80 and CP/M 2.2,  with 64K of RAM.  The
  27. version  here ("OKP.COM") will run on a Kaypro with video attributes  (e.g.
  28. the 2x).    The TPA should be free up to C350H.    I have compiled versions
  29. for  other Z80 computers,  including one that will run with a terminal that
  30. does not have line-insert/line-delete.
  31.  
  32.  
  33. HOW TO GET STARTED - A SHORT TUTORIAL
  34.  
  35.      Anyone  with  a  working knowledge of WordStar will have  very  little
  36. trouble  learning to use this program;  many of the commands are the  same.
  37. Before  starting this brief tutorial,  please make sure that you have  some
  38. free  space on your disk (about 30K bytes should be enough),  and that  the
  39. following files there:
  40.  
  41. OKP.COM        (The Outliner program)
  42. TEST.OTL       (A practice outline.  All outlines produced by Outliner have
  43.                the extension .OTL)
  44. COMMANDS.OTL   (An outline file that contains a list of all the commands)
  45. TODISK10.COM   (A utility file)
  46.  
  47.  
  48.      Run  Outliner by typing OKP followed by a carriage  return  (CR),  and
  49. clear  the sign-on screen by hitting the space bar.   You are now presented
  50. with  a menu.   Choose "C" ("Create a file"),  and it will ask you for  the
  51. name of the outline file that you wish to create.   Type in the name "TINY"
  52. followed  by CR.    You do not need to type in the extension (.OTL) as that
  53. will be added automatically.
  54.  
  55.      Note  that the top line of the screen  shows the name of the file  and
  56. the  number of free lines left (222),  and it reminds you that that  insert
  57. mode is on.   Verify that typing ^V (control V) turns insert mode off,  and
  58. that typing ^V again turns it back on.
  59.  
  60.      Now type the following text (leaving out the quotation marks):
  61.  
  62. "This is the first entry in my outline, and it is at level 0."
  63.  
  64.      If  you  make  a mistake in typing this line,  you  can  use  familiar
  65. WordStar  commands  to edit out the mistakes:  ^G deletes the character  on
  66. which the cursor is presently sitting,  DELETE deletes the character to the
  67. left  of the cursor,  and ^T deletes the word that is to the right  of  the
  68. cursor.    The  WordStar cursor movement commands have their usual  meaning
  69. (^S move left one space,  ^A move to start of word left,  ^D move right one
  70. space, ^F move to start of word right, ^E up a line, ^X down a line).
  71.  
  72.      Follow  the text with a carriage return (CR).    Note that the line is
  73. now  preceded  by  a minus sign "-".    This is an  entry  at  the  highest
  74. possible level (level 0).    The cursor will now be waiting at the start of
  75. the  next line down.    Now press TAB once.    The cursor should indent  by
  76. five spaces.   Type:
  77.  
  78.     "This is the second entry of my outline.  It is at level 1, and I am
  79.      going to go on typing until it has to wrap around."
  80.  
  81.      Notice  that the text wraps around automatically,  and that both lines
  82. of  this entry are indented by  the same amount (5 spaces).    Now type CR,
  83. and  note that the minus sign on the first line is replaced by a plus  sign
  84. "+";  this tells you that the first entry (level 0) is followed by an entry
  85. (level 1) of lower importance.  If we regard the entry at level 0 as a main
  86. heading, then the entry at level 1 can be thought of as a sub-heading.
  87.  
  88.      Now  press  TAB twice,  and note that the cursor has indented  by  ten
  89. spaces, then type:
  90.  
  91.           "This is the third entry, and it is at level 2."
  92.  
  93.      Now  press CR,  and note that both entries #1 and #2 are  preceded  by
  94. plus  signs.    Evidently entry #3 is counted as a subheading to entry  #2.
  95. Let's type one more entry;  first hit TAB just once (if you hit it too many
  96. times,  and  you have not yet entered any text,  you can start again at the
  97. left margin by hitting DELETE,  or you can move it five spaces to the  left
  98. every time you hit ESC).   Then type:
  99.  
  100.      "This is the fourth entry, and it is at level 1."
  101.  
  102.      Follow  this with a CR.    This is a good time to save your  work,  so
  103. type  ^KS  (the control key does not need to be held down  for  the  second
  104. letter).    After the disk save,  the cursor will wait exactly where it was
  105. before we typed the ^KS.
  106.  
  107.      The text window of the screen should look like this:
  108.  
  109. + This is the first entry in my outline, and it is at level 0.
  110.      + This is the second entry of my outline.   It is at level 1, and I am
  111.        going to go on typing until it has to wrap around.
  112.           - This is the third entry, and it is at level 2.
  113.      - This is the fourth entry, and it is at level 1.
  114.  
  115.  
  116.      It is convenient to think of the second,  third and fourth entries  as
  117. being "attached" to the first entry, because they follow it in the outline,
  118. and they are all of lower level or importance  (i.e.  level 0 is a "higher"
  119. level  than level 1,  which in turn is higher than 2 etc;  the lowest level
  120. allowed by the program is 5).    By a similar argument,  the third entry is
  121. attached  to  the  second.    However,  the  fourth  entry  is  of  greater
  122. importance than the third,  and of equal importance to the second, so it is
  123. not attached to either.
  124.  
  125.      This  becomes  important when you want to move parts  of  the  outline
  126. around.    We  will practice this a little later,  but for now just try the
  127. following:  use ^E to step the cursor up line by line, until it is anywhere
  128. in  the first entry (or go there at once with ^QR).    Now type ^KI  ("mark
  129. entry"),  and note that the first entry becomes "highlighted",  but its "+"
  130. flag  is still displayed in normal intensity.    This entry,  BUT  NOT  ITS
  131. ATTACHED ENTRIES,  is now "marked".   Type ^KH and the entry will return to
  132. normal.   Now type ^KB ("mark entry plus its attached subsidiary entries"),
  133. and  note  that  not only does the first entry (AND its  "+"  flag)  become
  134. highlighted,  but also ALL OF ITS ATTACHED ENTRIES.    I will refer to this
  135. as a marked block of entries.    Unmark the block with ^KH,  and use ^X  to
  136. step  the  cursor  down until it is anywhere in the  second  entry  (either
  137. line).    Now  type  ^KB  and note that only the second and  third  entries
  138. become marked.    As we will shortly see,  you can  move,  exchange,  copy,
  139. delete, or change the level of marked blocks, even though all of the marked
  140. entries may not be visible (e.g. if some have been hidden by collapsing the
  141. outline).
  142.  
  143.  
  144. A PRACTICE OUTLINE
  145.  
  146.      Now  let's see why an outline processor is much more powerful than  an
  147. ordinary word processor when it comes to organizing outlines.    To do this
  148. we  will  use the practice outline called "TEST.OTL".    First  close  your
  149. "TINY.OTL" by typing ^KD (save to disk) or ^KQ (abandon), and when the main
  150. menu appears,  choose "D" ("Edit a file").   You will be asked for the name
  151. of  the  outline  file that you wish to edit.    Type in  the  name  "TEST"
  152. followed by a carriage return (CR).    Again you do not need to type in the
  153. extension (.OTL) as that will be added automatically.
  154.  
  155. You should see the following:
  156.  
  157. +  Plan of a brief tutorial on how to use "Outliner".
  158.      - The tutorial is in the file OUTLINER.DOC
  159.      + What computers Outliner will run on
  160.      + What other programs are needed
  161.      + How to begin
  162.      - Check operation of cursor controls.
  163.      - Expanding or contracting how much detail of the outline is shown.
  164.      - Adding or deleting text in a presently existing entry.
  165.      + Starting a new entry
  166.      - Marking an entry, or block of entries.
  167.      + Manipulation of entries
  168.      - Saving to Disk.
  169.      - Making a .TXT file that is readable by WordStar.
  170.      - Printing a file.
  171.  
  172.  
  173.      (If you do not see this display,  type ^O1 (control O, followed by the
  174. number  1).    If it still does not look like the above,  then the file  has
  175. been altered, but never mind, what follows is still useful).
  176.  
  177.      This  is  a partly collapsed outline:  all entries below level 1  have
  178. been  hidden.    To see ALL the entries,  you could type ^O5.    This is  a
  179. "global" command, and shows all entries down to level 5.   (If you did type
  180. ^O5,  then return to where you were by typing ^O1).   In addition, there is
  181. a  much  more selective operation that you can perform  with  this  outline
  182. processor.    Use ^X to step the cursor down to somewhere in the third line
  183. ("+ What computers Outliner will run on"), and type ^J5;  this command also
  184. means  "show down to level 5",  but is a "local" command,  i.e.  it applies
  185. only  to  entries that are attached to the entry in which  the  cursor  was
  186. sitting  when  the ^J command was issued.    You should now see  some  more
  187. detail (although ^J5 is a bit of an overkill, because the lowest level that
  188. was  hidden  under this entry was only level 2).   If you didn't know  what
  189. absolute level to specify,  you could instead have just typed ^JM,  and  it
  190. would have shown one more level of detail.  ^JL will show one less level of
  191. detail.   Either command can be repeated.    Similar commands are available
  192. for  the  global command ^O;  i.e.  you can give commands either  that  are
  193. relative to what is presently being displayed (^OL or ^OM), or that specify
  194. an absolute level (^K0 through ^K5).
  195.  
  196.      The  power  of an outline processor comes partly from this ability  to
  197. let you see the big picture,  by hiding distracting levels of  detail,  and
  198. partly from the ease with which you can manipulate sections of the outline.
  199.  
  200.      Let's do a little manipulation.    Go to the top of the file by typing
  201. ^QR,  and  then expand everything (^O5) so that we can see more easily  the
  202. results  of our commands.    Use CR (which steps from anywhere in one entry
  203. to the start of the next entry) or ^X,  to put the cursor somewhere in  the
  204. third  entry  from the top ("+ What computers Outliner will run  on"),  and
  205. then  type ^KB (mark block).    Now use CR or ^X several times to  put  the
  206. cursor  on  the  entry "How to begin".    Note that this  entry  has  three
  207. "attached" entries.   Now type ^KE, and you will find that the marked block
  208. and  the entry  in which the cursor was sitting when the ^KE was typed have
  209. exchanged places.    Note also that the three entries that were attached to
  210. the entry "How to begin" have gone along with their "parent".    They would
  211. have  gone  along  even if they had been hidden.    If  we  had  wanted  to
  212. exchange  the  marked block with JUST the single entry "How to  begin",  we
  213. could have typed ^KI^KE instead of just ^KE.    This may remind you of  the
  214. use of ^KI to mark a single entry, instead of ^KB which marks an entry plus
  215. any entries that happen to be attached to it (visible or not!).
  216.  
  217.      Instead  of  exchanging two entries or blocks,  you can move a  marked
  218. entry  or block to a new place by moving the cursor to the  desired  place,
  219. and  typing ^KV.     The entry that was previously there gets moved down to
  220. make room.   You do not have to place the cursor at the start of the entry-
  221. that-is-to-be-moved down, just put it anywhere in it.   If instead you type
  222. ^KC,  then  a copy of the marked entry or block will be inserted at the new
  223. location,  and the original marked entry or block stays where it  was,  and
  224. becomes unmarked.
  225.  
  226.      To delete a marked entry or block,  visible or not, type ^KY.  You can
  227. restore  a just-deleted entry or block by placing the cursor where you want
  228. it to appear, and typing ^KG.
  229.  
  230.      You  can raise or lower the level of a single entry by one level  with
  231. ESC or TAB respectively,  or you can raise or lower a marked entry or block
  232. by one level with ^KM or ^KL respectively.    You can change the level of a
  233. marked  parent  to an absolute level with ^K followed by  a  number.    Any
  234. attached entries that are marked will maintain their relative positions  to
  235. the parent.   Entries will be automatically reformatted to conform to their
  236. new left margin.
  237.  
  238.  
  239. DETAILS, DETAILS
  240.  
  241.      If  you  want to make a change in a previously typed  entry,  just  go
  242. there  and  start  typing or deleting.    New lines will  be  generated  if
  243. necessary,  and  you can use ^B if you need to reformat an entry  manually.
  244. Unlike some well-known outline processors,  you are not limited to one line
  245. for each heading.
  246.  
  247.      To generate a blank line between two entries,  so that you can type  a
  248. new entry there directly,  sit the cursor anywhere in the second of the two
  249. entries,  and type ^N.    Until the first text character (even a space) has
  250. been  entered  on this now blank new line,  several of the cursor  movement
  251. commands  are INACTIVATED.    This was done to simplify programming,  but I
  252. may change this in a later version.
  253.  
  254.      When the outline has been saved to disk and is subsequently re-opened,
  255. the  amount of detail displayed will be the same as when the file was  last
  256. saved.
  257.  
  258.      You  can  generate  a  blank line by typing a  "space"  as  the  first
  259. character  of  a new entry,  and then typing CR or any other  control  that
  260. moves the cursor to some different line.
  261.  
  262.      There are no restrictions on "skipping" levels,  i.e.  a level 0 entry
  263. could  be followed by one at level 3 etc.   You could start the whole  file
  264. with  an  entry at level 5 if you wanted to,  or exchange (^KE) entries  or
  265. blocks  that are at different levels.    Not all outline  processors  allow
  266. this sort of thing.
  267.  
  268.      In  the  Outliner program you can add a drive letter  (followed  by  a
  269. colon) before the name of a file.
  270.  
  271.      When you delete an entry or block of entries, it becomes provisionally
  272. deleted, but any previously deleted entries get permanently deleted at this
  273. point.   Note  that permanent deletion frees up lines,  as measured by  the
  274. "LINES  AVAILABLE" message at the top of the screen,  but the provisionally
  275. deleted ones do not, at least not until they get permanently deleted by the
  276. next  entry-deletion-activity.   A  disk  save will remove  both  sorts  of
  277. "deleted" entry from the saved file.
  278.  
  279.      I  decided  to  have different menu selections for "Edit a  file"  and
  280. "Create a file" because I sometimes misspell a filename.    When I do  this
  281. in  WordStar  the program assumes that I want to start a new file,  and  it
  282. takes a little while for me to abandon it and have another go.
  283.  
  284.  
  285. LIST OF COMMANDS
  286.  
  287.      To see all the available commands,  run OKP.COM;  at the menu,  select
  288. "D" ("Edit a file"),  and give the filename COMMANDS.    You can then  step
  289. through   and  read  all  the  commands  with  normal  WordStar   controls.
  290. Alternatively,  just  select "P" ("Print a file"),  and print the file out,
  291. specifying down to level 5, with or without the +/- flags as you wish.
  292.  
  293.  
  294. WORDSTAR COMPATIBLE FILES
  295.  
  296.      If  you  want  to  insert an outline that you have  generated  into  a
  297. WordStar  file,  or use WordStar to format an outline for special  printing
  298. needs,  then at the menu,  select "T" ("Make a .TXT file").   The resulting
  299. file will have "soft" CR and spaces within an entry,  "hard" spaces at  the
  300. start  of  an  entry,  and  a  "hard" CR at the  end  of  an  entry.    The
  301. indentation  (when  +/- flags are not included) fits the  WordStar  default
  302. tabs.    This  can  be edited with WordStar.    The original .OTL  file  is
  303. untouched.
  304.  
  305.  
  306. IN THE EVENT OF A CRASH
  307.  
  308.      Together  with  OKP.COM is a program called  TODISK10.COM;   it  is  a
  309. utility  to  save the appropriate part of memory to disk in the event of  a
  310. crash.  At least there is then a chance of salvaging your work.  If you get
  311. an  error  message and it aborts to CP/M,  then if there  is  something  in
  312. memory  that you want,  just type TODISK10 and it will ask for a  filename.
  313. Type  something  appropriate (including the extension .OTL),  and  it  will
  314. attempt to save your work to disk.   If the program had aborted to the menu
  315. instead of to CP/M,  immediately type "X" (exit to CP/M),  and when you get
  316. back to CP/M,  run TODISK10.    I should be grateful if you would note  the
  317. number or letter of any error messages.
  318.  
  319.      The  "window" on the text of the outline is 20 rows deep.   The top  4
  320. lines of the screen are reserved for messages and for the status line.
  321.  
  322.  
  323.      At  the moment there is no "on-line" help file,  although one can  use
  324. ^KT  (if one remembers it!) to read in the COMMANDS file,  and then go back
  325. to your own file with another ^KT.
  326.  
  327. Restrictions:
  328.      One file has a maximum of 222 lines.   Text entry will be frozen if an
  329.      attempt is made to exceed this figure,  but some commands can still be
  330.      given (such as "delete line"!).
  331.      There  is a limit of six different "levels",  level 0 is the  highest,
  332.      and level 5 the lowest.
  333.      At  present there is no error trap if someone types a "word"  (i.e.  a
  334.      string  of text characters that has no spaces in it) that is too  long
  335.      for one line.    Also there is no trap to catch "wildcard" file names,
  336.      please avoid using them.
  337.  
  338.  
  339. SOME ADDRESSES
  340.  
  341.      The  following addresses apply only to release 1.0 of OKP.COM;  all of
  342. these  strings  must  be followed by a $ (except the  string  for  absolute
  343. cursor addressing,  which is followed by the row and column values (with  a
  344. 20H offset),  and then a null byte).    The following codes are in OKP.COM,
  345. and are for the late-model Kaypro 2x.
  346.  
  347. 01F0:     Line insert (ESC,E)
  348. 01F3:     Line delete (ESC,R)
  349. 01F6:     Reverse video (ESC,B,0)
  350. 01FA:     Normal video (ESC,C,0)
  351. 01FE:     Normal brightness (ESC,C,1)
  352. 0202:     "Highlighted" (dim) (ESC,B,1)
  353. 0206:     Clear to end of line (18H)
  354. 0208:     Clear to end of screen (17H)
  355. 020A:     Clear screen, home cursor (1AH)
  356. 020C:     String to begin absolute cursor address (ESC,3DH)
  357.  
  358.  
  359.      If  you have any trouble with this program,  you could try reaching me
  360. at (607) 255-5200.
  361.  
  362.                               David A. Usher
  363.