THE WELCH COMPANY
440 Davis Court #1602
San Francisco, CA 94111-2496
415 781 5700


S U M M A R Y


DIARY: June 5, 1999 12:52 PM Saturday; Rod Welch

Improve keyword system to open files at keyword location.

1...Summary/Objective
2...000008 Enter, Double Click for Keyword Process in 06114
3...06014 Improve Keyword Search, Find Target Word in Object File
4...Enter and Double Clicking in List Finds Target Line in Source File


..............
Click here to comment!

CONTACTS 

SUBJECTS
Keywords, 910205

0403 -    ..
0404 - Summary/Objective
0405 -
040501 - Follow up ref SDS 3 0000.
040502 -
040503 - Significantly improved keyword search feature, so it marks locations
040504 - in the search output List file.  This makes it is easier to see the
040505 - specified string.  We can now click on any string in an output list
040506 - file and the code will open the source record to the location that has
040507 - the specified string.  It does a secondary check by looking for the
040508 - line below then finding the target string, so that where duplicate
040509 - entires occur for a target string, as happens often, we always the one
040510 - being selected.
040511 -
040512 -
040513 -
040514 -  ..
0406 -
0407 -
0408 - Planning
0409 -
040901 - SDS uses organic structure for organizing the record to enable fast
040902 - assembly of information into chronologies showing cause and effect
040903 - based on context of objectives and requirements.  This primary method
040904 - is explained beginning on 890523. ref SDS 1 P13O
040905 -
040906 - On 960322 there is an explanation of subject managment used by SDS.
040907 - ref SDS 4 7749, including advantages of SDS methods. ref SDS 4 KR6M
040908 -
040909 - The more common method of organizing information is based on keywords,
040910 - and SDS uses this method mostly as a last resort, which is also
040911 - explained on 960322. ref SDS 4 7456  Today, I am improving the keyword
040912 - feature to increase utility.
040913 -
040914 -
040915 -
040916 -
040917 -  ..
0410 -
0411 -
0412 - Progress
0413 -
041301 -  ..
041302 - 000008  Enter, Double Click for Keyword Process in 06114
041303 -
041304 - This is part of Enter and Double Click process developed on 990530.
041305 - ref SDS 6 2891
041306 -
041307 - Line 980, ref OF 2 2360, -label botSc if keyword flag 273 2014 is on,
041308 - open file found by keyword process.
041309 -
041310 - Line 1370, ref OF 2 2106, -label KW_q, changed this code today so all
041311 - of the work is in 06014 to save memory.
041312 -
041313 - Detailed explanation of this proces is below. ref SDS 0 2610
041314 -
041315 -
041316 -  ..
041317 - 06014  Improve Keyword Search, Find Target Word in Object File
041318 -
041319 - Line 15, ref OF 1 2597, Changed format.  Eliminated separate fields
041320 - for SDS diary searches, and the boxes.
041321 -
041322 - Eliminated format of specifying only a content spec and implying it is
041323 - for SDS, since all search specs that we have been doing have been from
041324 - entering the search spec.
041325 -
041326 - Line 550, ref OF 1 1100, -label OpaSr, created new feature to open
041327 - files found by keyword search and move to the search spec, or the line
041328 - where Enter or Double Click is used.  See detailed explanation below.
041329 - ref SDS 0 2610
041330 - ..
041331 - Alternate functions have been removed in search specification
041332 - screen.
041333 -
041334 - Only function now in the output List file is to press Enter or double
041335 - click on a line to find that target string in the source file.
041336 -
041337 - Lines in the List that correspond to specified string are highlighted,
041338 - so they are easy to see.
041339 -
041340 - Line 440, ref OF 1 6636, -label fndIt target line is found in source
041341 - file, shift it down to center of screen, or move cursor down to line,
041342 - if it is less than line 10.
041343 -
041344 - Line 90, ref OF 1 7752, -label setup configures initial screen for
041345 - entering a search specification.
041346 - ..
041347 - User merely enters the path to be searched, and then a double
041348 - space by pressing the space bar twice, to enter the search
041349 - specification.  The path does not need delimiters.  The spec does not
041350 - require quotation marks, because the program now enters quotes.
041351 -
041352 - Case sensitive switch, /CS, it needs to be two spaces beyond the
041353 - search specification.
041354 -
041355 - Line 200, ref OF 1 9666, -label start, Enter is pressed after a search
041356 - specification is created,
041357 -
041358 -     a.  Markcur 22 saves cursor location.
041359 -
041360 -     b.  Loc_cur 11 19 positions cursor to read the search path.
041361 -         ..
041362 -     c.  Setup parameters for char read to convert spaces into
041363 -         path delimiter characters.  Start char read at 86 1.
041364 -         ..
041365 -         Read path spec.
041366 -
041367 -     d.  Check next position to evaluate whether specification was
041368 -         entered correctly. ref OF 1 1000
041369 -         ..
041370 -     e.  Mark 1 (macro 6) and mark 4 (macro 14) are called at
041371 -         beginning for search content. ref OF 1 1440
041372 -
041373 -         Mark 1 is used under -label go to capture content spec for
041374 -         marking the output List file. ref SDS 0 2744
041375 -
041376 -         Mark 4 (macro 14) is used to load the dos text search command
041377 -         under step i. ref SDS 0 4209
041378 -
041379 -     f.  If second char is not a colon, it is a mistake. ref OF 1 6120
041380 -
041381 -     g.  Jump to line where dos command is located for entering the
041382 -         path, removed any prior spec and enter new path string......
041383 -         ref OF 1 5148
041384 -         ..
041385 -     h.  Move cursor ahead once position and enter a quotation
041386 -         mark as a search content delimiter.
041387 -
041388 -         Macro 18 enters mark 6 to return for entering search content.
041389 -         ref OF 1 2000
041390 -         ..
041391 -     i.  Macro 15 returns to location where User entered search
041392 -         contect specification under step e. ref SDS 0 3776
041393 -
041394 -         Macro 1182 captures the string.
041395 -
041396 -         Move ahead 1 position to see if a case sensitive switch was
041397 -         used by capturing the char with counter 118. ref OF 1 7644
041398 -
041399 -     j.  Macro 19 returns to dos command line marked under step h,
041400 -         above, ref SDS 0 7896, to enter search content with macro
041401 -         1181. Enter search content ending quotation for delimiter. If
041402 -         case sensitive switch is on by counter 118 captured in step i
041403 -         being a "/", append the switch to complete the command string.
041404 -         ref OF 1 2156
041405 -         ..
041406 -     k.  Append text search switches establishing context output
041407 -         should be directed into a file "List." ref OF 1 7224
041408 -
041409 -     l.  Execute text search command. ref OF 1 1332
041410 -
041411 -     m.  Open List file and call macro 150 for a profile.
041412 -
041413 -     n.  Dos command to delete List file, since it is now in memory.
041414 -
041415 -     o.  If a message is in List that 0 files were found, return an
041416 -         error message. ref OF 1 2352
041417 -
041418 -     p.  Check second message "Unable to read from drive," and if this
041419 -         is not present, call code at -label go. ref OF 1 6240
041420 -    ..
041421 - Line 400, ref OF 1 4480, -label go, this sets up output file,
041422 - "list" with all instances of target string colored, and cursor on
041423 - first instance.
041424 -         ..
041425 -     a.  Open search processor 06114 and call macro 7 to position
041426 -         cursor on context search spec. ref OF 1 4480  This works
041427 -         because macro 6 is set above. ref SDS 0 3776
041428 -
041429 -     b.  Set flag 74 442 and call subroutine for search code in 06114
041430 -         to locate the search content. ref OF 1 4620
041431 -
041432 -     c.  Search for every occurance of the search content in the List
041433 -         file and color it for identification. ref OF 1 7084
041434 -
041435 -     d.  When all occurances of search content string have been found
041436 -         and colored in the List file, restore List to the top with
041437 -         cursor on first occurance, and open 06114 search macro and
041438 -         restore it to initial condition. ref OF 1 2684
041439 - ..
041440 - Line 110, ref OF 1 7752, -label setup if Enter flag is set 273
041441 - 2015, execute code to open the target file.
041442 -
041443 - This is for when Enter or double click occurs in the List file, which
041444 - is explained next.
041445 -
041446 -
041447 -  ..
041448 - Enter and Double Clicking in List Finds Target Line in Source File
041449 -
041450 - Line 340, ref OF 1 6256, -label opnC, after Enter is pressed on a
041451 - line in the List file, following process occurs...
041452 -
041453 -     General explanation:
041454 -
041455 -         The routine first finds the line below the line that is
041456 -         marked, and then does a reverse search for the target line, so
041457 -         that if the target line is a common string that occurs more
041458 -         than once in the source file, the search can find the
041459 -         particular instance that is needed.
041460 -         ..
041461 -         This enables Users to identify a unique string in the
041462 -         List file, that is below the target line.  If there are
041463 -         several lines between the target line and the unique line, the
041464 -         other lines in the List file can be deleted to make the unique
041465 -         string the next line; and, if the line is very long, it can be
041466 -         shorted so long as the search string is unique, since List is
041467 -         only a temporary file. A target line can also be found by
041468 -         selecting a different line above the target line, that has a
041469 -         unique string above it.
041470 -
041471 -     a.  Mark 22 current location of List file.
041472 -
041473 -     b.  Open 06114 and set flag 74 443 that code used for marking
041474 -         files in the List file, will now be used for locating and
041475 -         marking target line in Source file. ref OF 1 6256
041476 -         ..
041477 -     c.  Return to List and find "Searching" in column 1 above
041478 -         the target line, since that is where the source file is
041479 -         specified in this format. ref OF 1 4576
041480 -
041481 -         Do aw and capture source file string with macro 1182.
041482 -
041483 -     d.  Open 06114 and jump to line to enter source file id, then open
041484 -         the source file.  Give it editor profile. ref OF 1 2394
041485 -
041486 -         Make source file markcur 21.
041487 -
041488 -     e.  Return to List and jump to line below target line that is not
041489 -         blank. ref OF 1 1148
041490 -
041491 -         This code does not require line below to be the immediate line
041492 -         below.  It will search for the next non-blank line, and use it
041493 -         as initial search target.  This is the line that needs to be
041494 -         unique, per explanation above. ref SDS 0 0782
041495 -         ..
041496 -     f.  Jump to first char of string, and capture column in
041497 -         global counter 53 for beginning zone of locate command.  Then
041498 -         run macro 1888 to capture the string for the locate
041499 -         operation.... ref OF 1 1505
041500 -
041501 -         If the string is less than 3 char, the code will look again,
041502 -         so that it will have at least three char to locate.
041503 -
041504 -         Note a long string that runs to the right margin can be
041505 -         shortened to make the search faster, since the List file is
041506 -         not a permenant record.  All that is necessary is that the
041507 -         string be unique.  This is not difficult to recognize.
041508 -
041509 -     g.  If flag 273 2015 is set, it means this is the List file, so
041510 -         open 06114, and jump to locate command. ref OF 1 2604  The
041511 -         flag is set when the List file is created under -label go, as
041512 -         shown at ref OF 1 4480
041513 -
041514 - ..
041515 - Line 520, ref OF 1 4740, -label colR48, use a different color
041516 - the target line in the source file.
041517 -
041518 -
041519 -
041520 -
041521 -
0416 -