home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C128Toolkit / INDEXER.ARC / INDEXER.DOC next >
Encoding:
Text File  |  2019-04-13  |  16.4 KB  |  702 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.         
  9.  
  10.         ┼.╟. ┬ELL
  11.         
  12.         
  13.         
  14.                                     ╔NDEXER
  15.                                         
  16.  
  17.                                         
  18.  
  19.         ╧VER THE YEARS, THE MOST FREQUENT COMPLAINT ╔ HAVE SEEN ABOUT
  20.  
  21.         SOFTWARE IS IN REGARD TO THE DOCUMENTATION.  ╟OOD DOCUMENTATION
  22.  
  23.         PLAYS A LARGE PART IN THE SUCCESS OF A PROGRAM.  ╨EOPLE HAVE TO
  24.  
  25.         KNOW HOW TO USE IT.  ┴T BEST, A POORLY DOCUMENTED PROGRAM WILL
  26.  
  27.         NOT BE FULLY UTILIZED.  ┴T WORST, IT WILL NOT BE USED.
  28.  
  29.         
  30.  
  31.         ╙UCCESSFUL DOCUMENTATION INVOLVES FAMILIARITY WITH THE PROGRAM
  32.  
  33.         AND ABILITY TO EXPRESS THE FEATURES, FUNCTIONS, AND REQUIREMENTS
  34.  
  35.         CLEARLY.  ┴ CERTAIN AMOUNT OF STYLE GOES A LONG WAY TOWARD
  36.  
  37.         MAKING IT INTERESTING ALSO.  ╘HOUGH STYLE AND THE ABILITY TO
  38.  
  39.         CONVEY THE INFORMATION REST WITH THE DOCUMENTER, THERE ARE TWO
  40.  
  41.         FEATURES YOU WILL FIND IN VIRTUALLY ALL GOOD DOCUMENTATION WHICH
  42.  
  43.         ANYONE CAN DO PROFESSIONALLY, AND WITH ╔NDEXER, EASILY.   ╘HESE
  44.  
  45.         FEATURES ARE A TABLE OF CONTENTS AND AN INDEX OF KEY WORDS WHICH
  46.  
  47.         SERVE AS A QUICK REFERENCE TO THINGS COVERED IN THE TEXT.
  48.  
  49.         
  50.  
  51.         ─OCUMENTATION IS TEDIOUS AT BEST, EVEN FOR THE PERSON WHO
  52.  
  53.         CREATED THE PROGRAM.  ├REATING A TABLE OF CONTENTS MAY PROVE TO
  54.  
  55.         BE A RELATIVELY PAINLESS TASK FOR SHORTER DOCUMENTS OR THOSE
  56.  
  57.         WHICH DON'T CHANGE OFTEN, BECAUSE YOU ARE USUALLY DEALING WITH A
  58.  
  59.         LIMITED NUMBER OF ENTRIES.  ┴N INDEX, ON THE OTHER HAND, IS A
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.                                                  ╔NDEXER / ┼.╟. ┬ELL / 2
  71.  
  72.  
  73.  
  74.         POTENTIAL NIGHTMARE FOR A SIZABLE PROJECT.  ╘HIS IS A NIGHTMARE
  75.  
  76.         ╔ FACED.  ─OCUMENTATION FOR ONE OF MY PROGRAMS IS IN EXCESS OF
  77.  
  78.         190 THOUSAND BYTES, AN 85 PAGE DOCUMENT.  ╔T IS DIVIDED INTO 39
  79.  
  80.         SECTIONS, EACH REFERENCED IN MY TABLE OF CONTENTS.  ╘HERE IS AN
  81.  
  82.         INDEX OF 102 WORDS AND PHRASES WHICH SERVE AS QUICK REFERENCES
  83.  
  84.         TO VARIOUS FEATURES AND FUNCTIONS DOCUMENTED IN THE TEXT.  ╔T IS
  85.  
  86.         MADE UP OF SIX LINKED FILES, THREE OF WHICH EACH CONSUME THE
  87.  
  88.         WHOLE BUFFER IN ╘HE ╫RITE ╙TUFF.  ╔ WANTED A PROFESSIONAL
  89.  
  90.         MANUAL.  ═Y DECISION, MY METHOD, WAS TO 'PRINT' THE WHOLE
  91.  
  92.         DOCUMENT TO DISK AS ╧╬┼ SEQUENTIAL FILE.  ═Y DOCUMENTATION, IN
  93.  
  94.         THIS FORMAT, TAKES UP 700 DISK BLOCKS.  ╚OW WOULD YOU LIKE TO
  95.  
  96.         INDEX THAT?
  97.  
  98.         
  99.  
  100.         ╔ SELECTED THIS SEQUENTIAL FILE FORMAT BECAUSE IT ALLOWED ME TO
  101.  
  102.         IGNORE CONTROL AND ESCAPE SEQUENCES PARTICULAR TO VARIOUS WORD
  103.  
  104.         PROCESSORS AND CONCENTRATE ONLY ON THE TASK ╔ REALLY NEEDED
  105.  
  106.         PERFORMED.  ╘HE FILE WAS ON DISK EXACTLY AS IT WOULD BE ON
  107.  
  108.         PAPER, IN ONE PACKAGE, READY TO YIELD THE INFORMATION ╔ WANTED.
  109.  
  110.         ╔N ADDITION, THIS MADE THE PROCESS AVAILABLE TO ┴╬┘ WORD
  111.  
  112.         PROCESSOR ABLE TO 'PRINT' DATA TO DISK IN SEQUENTIAL FORMAT.  ╔N
  113.  
  114.         THIS REGARD, THERE IS ONE CAUTION.  ╔F YOU HAVE MADE USE OF
  115.  
  116.         FORMATS A DISK CAN'T RECOGNIZE, ITALICS, UNDERLINING, AND SUCH,
  117.  
  118.         MAKE A COPY OF THE FILE WITHOUT THESE BEFORE CREATING YOUR
  119.  
  120.         ─OCUMENT FILE.  ╘HINGS LIKE CENTERING, MARGINS, PAGE LENGTH,
  121.  
  122.         ETC. REQUIRE NO SUCH CONSIDERATION HOWEVER.  ╔N ADDITION,
  123.  
  124.         OBVIOUSLY FOR FILES THE SIZE OF MY DOCUMENTATION FILE, YOU'LL
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.                                                  ╔NDEXER / ┼.╟. ┬ELL / 3
  137.  
  138.  
  139.  
  140.         NEED A 1571 OR 1581.  ┬UT FOR FILES UP TO 664 BLOCKS, YOU CAN
  141.  
  142.         USE A 1541.
  143.  
  144.         
  145.  
  146.         ╔NDEXER PROCESSED MY 720 BLOCK DOCUMENTATION FILE IN ONLY SEVEN
  147.  
  148.         MINUTES.  ╘HAT INCLUDED THE 39 ENTRY TABLE OF CONTENTS AND OVER
  149.  
  150.         750 PAGE-REFERENCES FOR THE 102 WORDS/PHRASES.  ╘HE SEARCH WORDS
  151.  
  152.         SPANNED A WIDE SPECTRUM, FROM ╥┼╒ TO ═ODEM ╙ELECTION.  ┘OUR
  153.  
  154.         RESULTS WILL BE DIFFERENT, AFFECTED BY THE LENGTH AND FORMAT OF
  155.  
  156.         YOUR DOCUMENT, THE WORDS AND PHRASES YOU SPECIFY, ETC.  ╧NE
  157.  
  158.         THING, HOWEVER, WILL BE THE SAME.  ┘OU'LL BE PLEASED WITH THE
  159.  
  160.         RESULTS!
  161.  
  162.         
  163.  
  164.         *** ╫HAT ┘OU ╟ET
  165.  
  166.         ╘HE OUTPUT CAN BE IN ├┬═ ┴╙├╔╔, ╨ET ┴╙├╔╔ [AS USED BY
  167.  
  168.         ╙PEEDSCRIPT AND ╘HE ╫RITE ╙TUFF], OR ╘RUE ┴╙├╔╔, IF THAT IS
  169.  
  170.         REQUIRED.  ╘HIS WAS TO ALLOW EASY FORMATTING OF THE FINISHED
  171.  
  172.         FILES WITH A WORD PROCESSOR IF DESIRED.  ╔F YOU SELECT ├┬═ [BY
  173.  
  174.         NOT SELECTING ╘RUE OR ╨ET] OR ╘RUE ┴╙├╔╔, YOU CAN ALSO USE
  175.  
  176.         ╔NDEXER TO DUMP EXISTING ╔NDEX AND ├ONTENTS FILES TO PRINTER.
  177.  
  178.         ╩UST FOLLOW THE PROMPTS.
  179.  
  180.         
  181.  
  182.         *** ─OCUMENT ╨REPARATION
  183.  
  184.         ╔ ORIGINALLY CONSIDERED DOING ALL OF THIS SEARCHING IN ╥┴═ BUT,
  185.  
  186.         AS ╔ MENTIONED PREVIOUSLY, SOME OF MY FILES WERE JUST TOO LARGE.
  187.  
  188.         ╔N ADDITION, THIS WOULD HAVE REQUIRED PROCESSING OF LINKED
  189.  
  190.         FILES, FORMAT COMMANDS, ETC.  ╔ FELT THIS WOULD BE TOO MUCH
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.                                                  ╔NDEXER / ┼.╟. ┬ELL / 4
  203.  
  204.  
  205.  
  206.         WORK, DUPLICATING FUNCTIONS THE WORD PROCESSOR ALREADY
  207.  
  208.         PERFORMED.  ╘HUS, THE INDEX AND THE TABLE OF CONTENTS ARE
  209.  
  210.         CREATED FROM A DOCUMENT FILED ON DISK.  ╘HIS CAN BE AS LARGE AS
  211.  
  212.         A DISK WILL ALLOW, UP TO 3160 BLOCKS FOR A 1581 DRIVE.
  213.  
  214.         
  215.  
  216.         ╘HE TEXT FILE TO BE PROCESSED MUST BE CALLED ─OCUMENT.  ┴S
  217.  
  218.         STATED PREVIOUSLY, ╔NDEXER REQUIRES THIS FILE TO BE IN
  219.  
  220.         SEQUENTIAL FORMAT, LITERALLY PRINTED TO DISK INSTEAD OF THE
  221.  
  222.         PRINTER.  ╞OR EXAMPLE, IF YOU ARE USING ╙PEEDSCRIPT, FIRST PRESS
  223.  
  224.         ╙HIFT-├ONTROL-╨.  ╘HEN, AT THE STATUS LINE PROMPT, PRESS '─' FOR
  225.  
  226.         DISK.  ├ALL THE FILE ─OCUMENT.  ╔F YOU USE ╘HE ╫RITE ╙TUFF, USE
  227.  
  228.         THE ^ TO PUT THE CURSOR ON THE STATUS LINE, THEN MOVE THE BLOCK
  229.  
  230.         CURSOR OVER ╨RINT.  ┴T THE NEXT MENU, MOVE THE BLOCK CURSOR OVER
  231.  
  232.         ─ISK AND, AGAIN, CALL THE FILE ─OCUMENT.  ╔F YOU ARE PROCESSING
  233.  
  234.         A GROUP OF LINKED FILES, ANSWER '┘┼╙' WHEN ASKED.
  235.  
  236.         
  237.  
  238.         ╒SING THIS METHOD, ALL CONTROLS AND WORD-PROCESSOR-SPECIFIC
  239.  
  240.         FUNCTIONS ARE TAKEN CARE OF BY THE PROGRAM DESIGNED TO TAKE CARE
  241.  
  242.         OF THEM.
  243.  
  244.         
  245.  
  246.         *** ╨REPARING THE ╙EARCH ╞ILE
  247.  
  248.         ╘HE SEARCH FILE MUST BE CALLED ╫ORDFILE ON THE DISK AND CONSISTS
  249.  
  250.         OF UP TO 254 WORDS OR PHRASES.  ╘HEY SHOULD BE SORTED BEFORE
  251.  
  252.         BEING USED TO SEARCH.  ╘HEY CAN BE UP TO 20 CHARACTERS IN
  253.  
  254.         LENGTH, LETTERS, NUMBERS, PERIODS, OR HYPHENS, AND CAN INCLUDE
  255.  
  256.         EMBEDDED SPACES.  ╘HE PERIOD AND HYPHEN ARE THE ONLY TWO
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.                                                  ╔NDEXER / ┼.╟. ┬ELL / 5
  269.  
  270.  
  271.  
  272.         PUNCTUATION CHARACTERS NOT STRIPPED OUT WHEN THE FILE IS READ
  273.  
  274.         IN.  ╔F YOU USE A WORD PROCESSOR TO CREATE THIS FILE, YOU SHOULD
  275.  
  276.         SET YOUR LEFT AND TOP MARGINS TO ZERO, AND PAGE LENGTH TO 255.
  277.  
  278.         ╘HIS CUTS OUT SOME PRELIMINARY WORK STRIPPING SPACES.  ├UTTING
  279.  
  280.         WORK CUTS TIME.
  281.  
  282.         
  283.  
  284.         ┘OU COULD JUST AS EASILY USE A SEQUENTIAL FILE EDITOR TO CREATE
  285.  
  286.         THIS FILE, BUT SORT IT BEFORE USING IT.  ╘HE ORDER IN WHICH THE
  287.  
  288.         WORDS OCCUR IN THE FILE IS THE ORDER IN WHICH THEY WILL OCCUR IN
  289.  
  290.         THE INDEX.  ╘HE LAST CHARACTER IN THE FILE MUST BE AN ASTERISK
  291.  
  292.         '*' CHARACTER.  ┘OU CAN HAVE AS MANY AS YOU LIKE.  ╔ USE A WHOLE
  293.  
  294.         LINE OF THEM.
  295.  
  296.         
  297.  
  298.         *** ╧UTPUT ─RIVE ╙PECIFICATIONS
  299.  
  300.         ╔NDEXER CREATES 2 FILES, ONE CALLED ├ONTENTS AND THE OTHER
  301.  
  302.         CALLED ╔NDEX.  ╘HE FIRST SPECIFICATIONS YOU MUST MAKE ARE THE
  303.  
  304.         FOUR DEVICE NUMBERS FOR THE INPUT AND OUTPUT FILES.  ┘OU MAY
  305.  
  306.         CHOOSE EITHER EIGHT OR NINE FOR ANY OF THE INPUT OR OUTPUT
  307.  
  308.         FILES.  ╞OR EXAMPLE, YOU COULD HAVE BOTH OF YOUR INPUT FILES ON
  309.  
  310.         DRIVE NINE AND BOTH OF YOUR OUTPUT FILES ON DRIVE EIGHT.
  311.  
  312.         
  313.  
  314.         *** ╧UTPUT ╞ILE ╞ORMAT ╙PECIFICATIONS
  315.  
  316.         ┘OU HAVE SOME FLEXIBILITY IN THE OUTPUT FORMAT OF THE FILES.
  317.  
  318.         ┘OU MAY SPECIFY ╨ET ┴╙├╔╔ [╙PEEDSCRIPT, ╘HE ╫RITE ╙TUFF, ETC.],
  319.  
  320.         ╘RUE ┴╙├╔╔, OR SEQUENTIAL IF YOU DON'T SELECT EITHER ╨ OR ╘.
  321.  
  322.         
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.                                                  ╔NDEXER / ┼.╟. ┬ELL / 6
  335.  
  336.  
  337.  
  338.         ╔F YOU SELECT '╨' FOR ╨ET ┴╙├╔╔, YOU WILL ALSO HAVE TO SELECT
  339.  
  340.         THE ├ARRIAGE ╥ETURN CHARACTER YOUR WORD PROCESSOR USES.  ╞OR
  341.  
  342.         EXAMPLE, ╙PEEDSCRIPT AND ╘HE ╫RITE ╙TUFF USE ├╚╥$(31).  ╨LEASE
  343.  
  344.         NOTE!  ╘HIS SETTING IS ONLY FOR OUTPUT, ╬╧╘ INPUT.  ╘HE ─OCUMENT
  345.  
  346.         FILE MUST BE IN ├┬═ [OR ╘RUE] ┴╙├╔╔.  ┘OU SHOULD BE ABLE TO READ
  347.  
  348.         IT NORMALLY WITH A SEQUENTIAL FILE READER.  ╔T IS THE ├ONTENTS
  349.  
  350.         AND ╔NDEX FILES WHICH WILL BE WRITTEN IN ╨┼╘ [OR ╘RUE] ┴╙├╔╔.
  351.  
  352.         
  353.  
  354.         *** ╨AD ├HARACTER
  355.  
  356.         ┘OU WILL SELECT THE PAD CHARACTER FOR THE INDEX LINES.  ┘OU CAN
  357.  
  358.         CHOOSE BETWEEN A SPACE CHARACTER AND A PERIOD.  ╞OR EXAMPLE:
  359.  
  360.         
  361.         ┬UFFER ................... 1,3,4,5,7,10,11
  362.           OR
  363.         ┬UFFER                     1,3,4,5,7,10,11
  364.         
  365.  
  366.         *** ╠INE AND ╨AGE ╙PECIFICATIONS
  367.  
  368.         ┘OU WILL SELECT THE STARTING PAGE NUMBER.  ╨LEASE NOTE!  ┘OU
  369.  
  370.         WILL ALWAYS READ FROM THE BEGINNING OF ─╧├╒═┼╬╘ TO THE END.  ┘OU
  371.  
  372.         ARE JUST BEING ASKED HERE TO INITIALIZE THE PAGE COUNTER.  ╔N
  373.  
  374.         THE '┬UFFER ...' EXAMPLE ABOVE, IF YOU SELECTED 7 AS THE
  375.  
  376.         STARTING PAGE NUMBER, ALL OF THE PAGE NUMBERS WOULD HAVE BEEN
  377.  
  378.         SIX PAGES HIGHER.  ╟ET IT?  ╨AGE ONE WOULD HAVE BEEN PAGE SEVEN,
  379.  
  380.         ETC.
  381.  
  382.         
  383.  
  384.         ┘OU WILL SPECIFY THE FIRST LINE TO SEARCH ON EACH PAGE.  ╘HIS IS
  385.  
  386.         THE LINE ON THE PAGE WHERE SEARCHING ACTUALLY BEGINS.  ╘HE
  387.  
  388.         DEFAULT IS LINE FIVE, WHICH IS A COMMON TOP MARGIN FOR WORD
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.                                                  ╔NDEXER / ┼.╟. ┬ELL / 7
  401.  
  402.  
  403.  
  404.         PROCESSORS.  ╘HIS LETS YOU SKIP HEADERS, A GREAT TIME-SAVER.
  405.  
  406.         
  407.  
  408.         ┘OU WILL SPECIFY THE LINES PER PAGE.  ═EASURE YOUR PAPER FROM
  409.  
  410.         TOP TO BOTTOM AND MULTIPLY THAT FIGURE BY SIX.  ─EFAULT IS 66,
  411.  
  412.         FOR STANDARD 8.5 BY 11 INCH PAPER.
  413.  
  414.         
  415.  
  416.         ┘OU WILL SPECIFY THE LINE ON WHICH TO STOP THE SEARCH OF A PAGE.
  417.  
  418.         ╘HE DEFAULT IS LINE 61, A COMMON BOTTOM MARGIN SETTING.  ╘HIS
  419.  
  420.         ALLOWS YOU SO SKIP FOOTERS.
  421.  
  422.         
  423.  
  424.         ╞INALLY, SPECIFY THAT YOU WANT TO SEE OR NOT SEE THE LINE NUMBER
  425.  
  426.         PROCESSING.  ╘HIS IS THE DISPLAY OF THE LINE NUMBER BEING
  427.  
  428.         SEARCHED.  ╔T IS PRACTICALLY USELESS, BUT DOES GIVE THE
  429.  
  430.         IMPRESSION OF GREATER SPEED WHEN YOU SEE IT.  ╧DD, HUH!  ╫HEN IT
  431.  
  432.         IS OFF, YOU ACTUALLY SHAVE TIME FROM OVERALL PROCESSING BUT IT
  433.  
  434.         ╙┼┼═╙ TO TAKE LONGER.
  435.  
  436.         
  437.  
  438.         *** ╘HE ╘ABLE OF ├ONTENTS
  439.  
  440.         ├REATING AN INDEX WAS A SIMPLE MATTER OF PARSING EACH LINE FOR
  441.  
  442.         OCCURRENCES OF SPECIFIED WORDS.  ├REATING A TABLE OF CONTENTS IS
  443.  
  444.         JUST A LITTLE TRICKIER.  ╚OW DO YOU SPECIFY A LINE AS DIFFERENT
  445.  
  446.         FROM ANOTHER.  ╘HIS IS THE LONE SPECIAL REQUIREMENT OF ╔NDEXER.
  447.  
  448.         ╘HE TABLE OF CONTENTS IS CONSTRUCTED OF LINES WITHIN THE BODY OF
  449.  
  450.         THE DOCUMENT.  ╘HESE LINES MUST HAVE THREE ASTERISKS AND A SPACE
  451.  
  452.         AS THE FIRST PRINTING CHARACTERS OF THE LINE.  ╞OR EXAMPLE:
  453.  
  454.         
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.                                                  ╔NDEXER / ┼.╟. ┬ELL / 8
  467.  
  468.  
  469.  
  470.                    *** ╙ECTION ╔╔╔  ╙AWDUST ╔SN'T ─IRT
  471.  
  472.         
  473.  
  474.         ╘HIS WHOLE LINE, EXCLUDING THE FIRST THREE ASTERISKS, WOULD MAKE
  475.  
  476.         UP THE TABLE OF CONTENTS ENTRY, PRECEDED BY THE PAGE NUMBER.  ╙O
  477.  
  478.         IF THIS LINE APPEARED ON PAGE TEN, THE TABLE OF CONTENTS ENTRY
  479.  
  480.         WOULD BE:
  481.  
  482.         
  483.  
  484.         10   ╙ECTION ╔╔╔  ╙AWDUST ╔SN'T ─IRT
  485.  
  486.         
  487.  
  488.         ╔ CHOSE NOT TO INDEX WORDS IN THESE ENTRIES BECAUSE THEY ARE
  489.  
  490.         INDEXED, IN EFFECT, IN THE TABLE OF CONTENTS.
  491.  
  492.         
  493.  
  494.         *** ╞AST AND ┼VER ╞ASTER
  495.  
  496.         ┘OU MAY BE ABLE TO IMAGINE WHAT A TASK IT IS TO PARSE EACH
  497.  
  498.         CHARACTER OF EACH LINE, SEARCHING FOR MATCHING CHARACTERS IN
  499.  
  500.         EACH SEARCH WORD.  ╙OME METHODS HAD TO BE DEVELOPED TO EXPEDITE
  501.  
  502.         THE PROCESS, AND YOU MAY FIND IT INTERESTING TO KNOW WHAT IS
  503.  
  504.         GOING ON DURING THE SEARCH.
  505.  
  506.         
  507.  
  508.         ╙PACES AND MOST PUNCTUATION ARE STRIPPED FROM THE INCOMING
  509.  
  510.         ─╧├╒═┼╬╘ LINES, AND FROM THE SEARCH FILE AS WELL.  ╘HIS
  511.  
  512.         ELIMINATES POTENTIALLY THOUSANDS OF COMPARISONS IN EACH LINE.
  513.  
  514.         ╘HERE IS ONE POSSIBLE SIDE EFFECT OF THIS OF WHICH YOU SHOULD BE
  515.  
  516.         AWARE.  ╔F YOU ASK FOR ALL OCCURRENCES OF THE WORD '╞ORMAT',
  517.  
  518.         ╔NDEXER WILL FIND IT IN 'IN╞╧╥═┴╘ION', AND '... THE LINES ╞╧╥═
  519.  
  520.         ┴╘ THE CORNER.'   ╘HIS SHOULD CAUSE NO PROBLEM THOUGH, BECAUSE
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.                                                  ╔NDEXER / ┼.╟. ┬ELL / 9
  533.  
  534.  
  535.  
  536.         AN INDEX BY NATURE IS COMPRISED OF VERY SPECIFIC WORDS AND
  537.  
  538.         PHRASES, NOT JUST COMMON, EVERYDAY LANGUAGE.  ┼XAMPLES LIKE THIS
  539.  
  540.         SHOULD BE VERY INFREQUENT.  ┴LL THE ONES YOU WANT WILL STILL BE
  541.  
  542.         FOUND.  ╔NDEXER MAY JUST PROVIDE YOU WITH AN ODD FEW WHICH YOU
  543.  
  544.         DIDN'T REALLY ASK FOR.
  545.  
  546.         
  547.  
  548.         ┼VERYTHING IS CONVERTED TO LOWER CASE AT THE VERY START.  ╘HIS
  549.  
  550.         ENABLES ME TO LOCATE ┴╠╠ OCCURRENCES OF SPECIFIED WORDS OR
  551.  
  552.         PHRASES WITHOUT HAVING TO TEST FOR UPPER AND LOWER CASE.  ╫HEN
  553.  
  554.         THE ENTRIES ARE WRITTEN TO THEIR RESPECTIVE FILES, THEY ARE
  555.  
  556.         WRITTEN AS THEY ARE FOUND IN THE ORIGINAL FILES
  557.  
  558.         .
  559.  
  560.         
  561.  
  562.         ┴S THE LINES ARE READ IN, IN ADDITION TO BEING PURGED OF SPACES,
  563.  
  564.         PUNCTUATION, AND UPPER CASE CHARACTERS,  ╔ BUFFER THE POSITION
  565.  
  566.         IN THE LINE OF THE FIRST OCCURRENCE OF EACH LETTER OF THE
  567.  
  568.         ALPHABET IN THAT LINE.  ╫HAT THAT MEANS IN SIMPLE LANGUAGE IS
  569.  
  570.         THAT IF THE LETTER 'E' FIRST APPEARS IN POSITION 15 OF THE LINE,
  571.  
  572.         ╔ RECORD THAT.  ╘HEN WHEN SEARCHING, ANY WORD STARTING WITH AN
  573.  
  574.         'E' STARTS THE SEARCH AT POSITION 15.  ╔F THERE ARE NO WORDS IN
  575.  
  576.         A LINE STARTING WITH THE FIRST LETTER OF THE CURRENT SEARCH
  577.  
  578.         WORD, ╔ DON'T SEARCH FOR IT.
  579.  
  580.         
  581.  
  582.         ┴S THE WORD FILE IS READ INTO MEMORY, ╔ RECORD THE LENGTH OF THE
  583.  
  584.         SHORTEST WORD.  ╫HEN READING IN EACH LINE, ╔ RECORD THE NUMBER
  585.  
  586.         OF CHARACTERS IN THAT LINE.  ╔F THE LINE IS SHORTER THAN THE
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.                                                 ╔NDEXER / ┼.╟. ┬ELL / 10
  599.  
  600.  
  601.  
  602.         SHORTEST WORD/PHRASE IN THE SEARCH FILE, ╔ MOVE TO THE NEXT
  603.  
  604.         LINE.
  605.  
  606.         
  607.  
  608.         ╫HEN LOADING THE 'SEARCH BUFFER' WITH THE WORD TO BE LOCATED, ╔
  609.  
  610.         RECORD THE LENGTH OF THAT WORD.  ╘HEN, WHEN SEARCHING THE LINE,
  611.  
  612.         ╔ ONLY SEARCH TO THE FARTHEST POSSIBLE POINT IN THE LINE WHERE
  613.  
  614.         THAT WORD COULD OCCUR.  ╞OR EXAMPLE, IF THE WORD ╔'M SEARCHING
  615.  
  616.         FOR IS TWELVE CHARACTERS LONG AND ╔ ONLY HAVE ELEVEN MORE
  617.  
  618.         POSITIONS LEFT IN THIS LINE, ╔ MOVE TO THE NEXT WORD.
  619.  
  620.         
  621.  
  622.         ╔ KEEP A SET OF REGISTERS TO FLAG WHEN A WORD HAS BEEN FOUND ON
  623.  
  624.         A PAGE.  ╔F ╔ FIND IT ON A PAGE, ╔ DON'T LOOK FOR IT AGAIN UNTIL
  625.  
  626.         THE NEXT PAGE.  ╔F ╔ FIND ALL SEARCH WORDS ON A PAGE, ╔ FORCE
  627.  
  628.         PROCESSING TO THE NEXT PAGE.
  629.  
  630.         
  631.  
  632.         ┴S ALREADY MENTIONED, ╔ PROVIDED A MEANS OF SETTING THE STARTING
  633.  
  634.         LINE FOR EACH PAGE, THE NUMBER OF LINES PER PAGE, AND THE LAST
  635.  
  636.         LINE TO SEARCH.  ╘HIS ALLOWED ME TO AVOID SEARCHING HEADERS OR
  637.  
  638.         FOOTERS.  ╘HE DEFAULTS ARE LINE FIVE TO START AND LINE SIXTY-ONE
  639.  
  640.         TO STOP.
  641.  
  642.         
  643.  
  644.         ╘HE INDEX IS WRITTEN AFTER THE SEARCH FROM A TABLE CREATED BY
  645.  
  646.         THE SEARCH.  ╘HIS ELIMINATES ═┴╬┘ ╦ERNAL CALLS OPENING CHANNELS,
  647.  
  648.         WRITING CHARACTERS, CLEARING CHANNELS, ETC.  ╘HE TABLE OF
  649.  
  650.         CONTENTS FILE, ON THE OTHER HAND, IS WRITTEN DURING THE
  651.  
  652.         EXECUTION OF THE SEARCH.  ╔T IS INVARIABLY LESS TO WRITE.
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.                                                 ╔NDEXER / ┼.╟. ┬ELL / 11
  665.  
  666.  
  667.  
  668.         
  669.  
  670.         ╨ERHAPS THE MOST DRAMATIC INCREASE IN SPEED WAS ACHIEVED BY
  671.  
  672.         ELIMINATING THE SCREEN DISPLAY OF THE LINES AND SEARCH WORDS
  673.  
  674.         DURING THE SEARCH.  ╬OW ALL YOU SEE IS THE LINE NUMBER [IF
  675.  
  676.         SPECIFIED], THE PAGE NUMBER, AND THE NUMBER OF ENTRIES LOCATED.
  677.  
  678.         ┴ 'WRITING' MESSAGE WILL TOGGLE BETWEEN NORMAL AND REVERSED
  679.  
  680.         CHARACTERS EACH TIME A TABLE OF CONTENTS MESSAGE IS DISPLAYED.
  681.  
  682.         ╬ONE OF THESE IS NECESSARY TO ╔NDEXER, BUT WERE PROVIDED
  683.  
  684.         STRICTLY AS A MONITOR TO LET YOU KNOW SOMETHING IS HAPPENING.
  685.  
  686.         
  687.  
  688.         *** ╘HE ╨AYOFF
  689.  
  690.         ╔NDEXER WILL GIVE YOUR DOCUMENTATION A PROFESSIONAL TOUCH YOUR
  691.  
  692.         WORK DESERVES, QUICKLY AND EASILY.  ╔T WILL MAKE YOUR
  693.  
  694.         DOCUMENTATION, AND YOUR PROGRAMS, EASIER TO USE... MORE FULLY-
  695.  
  696.         USED... PERHAPS MORE WIDELY USED.  ╘RY IT!  ┘OU'RE GONNA LOVE
  697.  
  698.         IT! EGB
  699.  
  700.          
  701.  
  702.