THE WELCH COMPANY
440 Davis Court #1602
San Francisco, CA 94111-2496
415 781 5700
rodwelch@pacbell.net


S U M M A R Y


DIARY: February 19, 2005 07:17 PM Saturday; Rod Welch

SDS improve context management, construct and navigating Knowledge Space.

1...Summary/Objective
2...User Interface Makes Context Management Fun Like Playing a Piano
3...Working Intelligently Fast Fun Construct Context Multiple Views
4...F1 F3 Prior Level Index Find Target Line in Sorted List
5...F5 Sort Current Index Set Flag to Find Account Target Description
6...Fix Problem of Unintended Sorting Subject Account in an Index File
7...F1 F1 F3 Replace Subject Account Descriptions Restore Cursor to Field
8...Enter Save Current Index Apply Subject Idex Situational Awareness
9...F6 Eliminate Increment New Line for Multiple Views Same Account
10...F6 2 Clicks Subject Index New Account Double Click
11...Subject Index New Account F6 Double Function with Double Click
12...03501 F6 Create New Account Structure Double Click Last Line
....Double Click Op Construct New Subject Index Account
13...Progress for 1st Use in Record F1 F8 Outline Time Stamp
14...04411 Progress for 1st Use in Record F1 F8 Outline Time Stamp
15...F1 F8 Outline Time Stamp Add Progress for 1st Use in Record
16...Macro 49 Justify Para Double Space between Sentences - Alt F9


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

CONTACTS 

SUBJECTS
F1 F3 Prior Level Navigate Back in Organic Structure
Position Target Account Line in Middle of Screen When Scrolling Back
Sorted Indexes Restore Position in Actual Index When Scrolling Back w
Subject Index Navigation Find Edit Specific Account Descriptions fro

0706 -
0706 -    ..
0707 - Summary/Objective
0708 -
070801 - Follow up ref SDS 8 0000, ref SDS 4 0000.
070802 -
070803 - Improved navigating Knowledge Space in the Subject Index so people can
070804 - use sorting to find a particular account in multiple views and then
070805 - use the standard F1 F3 function to restore the actual index for
070806 - editing with the cursor on the selected view for the target account.
070807 - ref SDS 0 7D8O  Tried to solve problem of F5 occassionally sorting an
070808 - index, when this is not intended. ref SDS 0 QZ7G  Also expanded F6
070809 - function in the Subject Index that replicates an account line for
070810 - multiple views, to now create a new account structure when F6 is used
070811 - twice within 1 second on the last line of subject descriptions.
070812 - ref SDS 0 5W5L  This makes Context Management faster, easier, and more
070813 - fun. ref SDS 0 MF5N  Expanded slightly the function F1 F8 for creating
070814 - outline structure in SDS records to now substitute "Progress" for time
070815 - on the first use in a record. ref SDS 0 PQ4J  Extended feature to
070816 - automatically double space between sentences in a paragraph to provide
070817 - uniform appearance. ref SDS 0 UI9H
070818 -
070819 -     [On 050228 submitted program update to Gary, with link to this
070820 -     record for guidance. ref SDS 9 0001
070822 -      ..
070823 -     [On 050311 Gary commented on changes. ref SDS 10 YL8T
070825 -      ..
070826 -     [On 080511 increased capacity from 100 to 1000 files for
070827 -     segmenting an account. ref SDS 11 NF5I
070829 -      ..
070830 -     [On 080511 corrected F1 F3 subroutine nesting error and
070831 -     consolidated the code. ref SDS 11 7W4H
070832 -
070833 -
070834 -
070836 -  ..
0709 -
0710 -
0711 - Evaluation
0712 -
071201 - User Interface Makes Context Management Fun Like Playing a Piano
071202 - Working Intelligently Fast Fun Construct Context Multiple Views
071203 -
071204 - Follow up ref SDS 7 YI6O, ref SDS 6 JT5F.
071205 -
071206 - Improvements today are pretty handy based on criteria in the record
071207 - for 031124. ref SDS 5 QO8H
071209 -  ..
071210 - F1 F3 in the Subject Index saves considerable time hunting for lines
071211 - of interest to study and edit, particularly now that most accounts
071212 - have multiple views.  Several use cases arise using F1 F3...
071213 -
071214 -        1.  Sort entire account level, which can span many files for
071215 -            segmented subject files, and is only called by the Sort
071216 -            option in the menu bar.
071218 -             ..
071219 -        2.  Sort a particular subaccount in the current index screen
071220 -            which can only be called with F5 tapped twice.
071222 -  ..
071223 - F2 will not save a sorted index account level, becasue the list is
071224 - only informational. (there is no change to prior practice for sorted
071225 - indexes)
071227 -  ..
071228 - F2 saves an index file to preserve a sorted subaccount in the current
071229 - index screen, if the user decides this is more helpful than the
071230 - original order.  If not, the user can ESC, or press F1 F3 explained
071231 - below. (there is no change to prior practice)
071233 -  ..
071234 - F1 F2 in both cases opens a lower level going deeper into the organic
071235 - structure of context. (there is no change to prior practice)
071237 -  ..
071238 - F1 F3 in both cases closes the current index file, and for...
071239 -
071240 -               [On 080511 corrected F1 F3 subroutine nesting error and
071241 -               consolidated the code. ref SDS 11 7W4H
071242 -
071243 -        1.  Sorted accounts across segmented subject files, the code
071244 -            will open each segmented index file in order, and search
071245 -            for the account selected by the user for investigation;
071246 -            and, when that account is found, the target description
071247 -            line selected by the user from among the multiple
071248 -            descriptions for the target account is placed in the middle
071249 -            of the screen for context, and identified by the cursor
071250 -            location.
071252 -             ..
071253 -        2.  Sorted subaccount within the current index file, the
071254 -            original unsorted file will be replaced and the target line
071255 -            selected by the user will be setup for editing, as for the
071256 -            sorted account level op, above.
071258 -  ..
071259 - F6 aids expanding existing accounts and begins new accounts...
071260 -
071261 -        1.  Any subject description line is replicated and the cursor
071262 -            is placed on the next line ready to create a multiple view
071263 -            by editing the previous line.
071265 -             ..
071266 -            Eliminated the previous practice of incrementing the last
071267 -            character of the account identification, since this has not
071268 -            proven effective.
071270 -             ..
071271 -        2.  When F6 is tapped twice on the last line of a subject
071272 -            account, the program uses this line as a template to
071273 -            construct a new subject format and increments the last
071274 -            character to ensure differientation from the template
071275 -            account.
071277 -  ..
071278 - These refinements reduce the time to construct, expand, and routinely
071279 - apply multiple views of context using flexible organic structures.
071280 - Granular subject indexing makes finding critical details and creating
071281 - dynamic links fast and easy, and therefore practical, as explained in
071282 - POIMS. ref OF 11 KH8J  Context Management is more intuitive, fun, and
071283 - complementary, like using the keyboard to play a piano, cited in
071284 - POIMS, ref OF 11 6M5H  Extending capability reported on 040307.
071285 - ref SDS 7 YI6O, further supports Jack Park's report on 001103 that SDS
071286 - has the right structure for knowledge and the user interface that
071287 - makes the structure useful to people. ref SDS 1 H17O,
071289 -  ..
071290 - Alt F9 improves justifing text by automatically double spacing all
071291 - sentences.  This saves a lot of time and aggravation manually spacing
071292 - construction of paragraphs to provide uniform appearance and aid
071293 - comprehension. ref SDS 0 UI9H  Since text is frequently rearranged,
071294 - expanded, refined and deleted to create clear, concise, complete
071295 - communication, the ability reassemble instantly is a big improvement.
071296 -
071297 -
071298 -
071299 -
071301 -  ..
0714 -
0715 -
0716 - Progress
0717 -
071701 - F1 F3 Prior Level Index Find Target Line in Sorted List
071702 -
071703 - Follow up ref SDS 4 YB5N.
071704 -
071705 - On 030902 developed virtual memory support for Subject Index.  The
071706 - function F1 F3 finds the accounts in the actual index for an account
071707 - selected in a sorted index.  This enables the user to modify the
071708 - account and perform other tasks, which cannot be performed in the
071709 - sorted index.
071711 -  ..
071712 - The code currently finds the top of the account.  Today, the program
071713 - will be changed to position the cursor on the particular line selected
071714 - by the user.
071716 -  ..
071717 - At this point the user is in a sorted index, and has pressed F1 F3 to
071718 - find the current line in the actual Subject Index.
071720 -  ..
071721 - Line 1860, ref OF 1 GQ6L, -label ncnsil in 03501 about 40 lines
071722 - below
071723 -
071724 -    setgbl 123 666
071725 -    setcur 0 0
071726 -    of @0
071727 -    setgbl 97 @0
071728 -    setcnt 80 1000
071729 -    setcnt 81 40
071730 -    setcnt 86 1
071731 -     ..
071732 -    macro 1182
071733 -    macro 23
071734 -
071735 -        setgbl 123 666 flag for sorted index.  setcur 0 0 capture
071736 -        beginning of narrative account description to post zone command
071737 -        for a search in 03501.  of @0 offsets the file to the beginning
071738 -        of the description so we can read 40 characters of the account
071739 -        description.  setglb 97 @0 moves the position where the
071740 -        description begins into global counters that can be transferred
071741 -        into 03501 for posting the zone command. setcnt 80 1000 is a
071742 -        switch for macro 118 to read a specific length. setcnt 81 40
071743 -        tells macro 118 to read 40 characters when 80 = 1000  setcnt 86
071744 -        1 begin reading characters into counter 1. macro 1182 read 40
071745 -        char of the account description. macro 23 restores the initial
071746 -        position.
071747 -
071748 -
071750 -  ..
071751 - Line 1890, ref OF 1 QX9U, -label ncnsil in 03501 about 70 lines below
071752 -
071753 -    e c:\sd\03\03501
071754 -    line........................... *%66
071755 -    loc_cur 4 4
071756 -     ..
071757 -    getgbl 97 97
071758 -    inscnt 97 0
071759 -    loc_cur 5 4
071760 -    macro 1181
071761 -    ic 33
071762 -    e sndx
071763 -    -goto psif5
071764 -
071765 -        Open 03501 and move to the line for posting the zone and search
071766 -        argument.  loc_cur 4 4 positions the cursor on the 1st param
071767 -        for search command; don't need to post the 2nd part of the
071768 -        zone, because will plug it.  getgbl 97 97 retrieves the zone
071769 -        param captured above. ref SDS 0 XD6L  inscnt 97 0 enters 1st
071770 -        param for zone to do a search. ref SDS 0 S54I  loc_cur 5 4
071771 -        postions to enter search string, captured above.  macro 1181
071772 -        enter narrative string for account description to find it
071773 -        after the file is read in.  ic 33 is ending delimiter for
071774 -        search command.  e sndx returns to subject index file.
071775 -
071776 -
071778 -  ..
071779 - Line 3300, ref OF 1 M54F, -label psbtpin in 03501 about 30 lines
071780 - below
071781 -
071782 -    -if @123 != 666 -goto n666
071783 -    macro 12
071784 -    *%66
071785 -    z  40 123
071786 -    l !
071787 -    loc_cur 3 0
071788 -    linecnt 1 0
071789 -    macro 13
071790 -    subcnt 1 @122
071791 -    up @1
071792 -    -label n666
071793 -
071794 -        Added code -if @123 != 666 -goto n666 to recognize sorted index
071795 -        op.  macro 12 saves file position created by the regular F1 F3
071796 -        routine, and captures line number for the top of the account in
071797 -        counter 122.  z nn 123 command sets zone for search posted by
071798 -        code above. ref SDS 0 S56I   l !.......! search for account
071799 -        description selected by the User, also, posted above.  loc_cur
071800 -        3 0 Move cursor to current line, where the target line is
071801 -        positioned by search command.  linecnt 1 0 reads line number
071802 -        of target line, which will greater than or equal to line at
071803 -        top of the descriptions.  macro 13 restores the screen layout
071804 -        determined by the F1 F3 code.  subcnt 1 @122 determines the
071805 -        number of line to scroll up to target line.  up @1 scrolls up
071806 -        to target line.
071807 -
071808 -
071809 -
071810 -
0719 -

SUBJECTS
F5 Twice Alphabetize List of Subjects and Remove Duplicates

0803 -
080401 -  ..
080402 - F5  Sort Current Index Set Flag to Find Account Target Description
080403 - Fix Problem of Unintended Sorting Subject Account in an Index File
080404 -
080405 - Follow up, ref SDS 3 575G.
080407 -  ..
080408 - In a subject index, when F5 is called twice within one second, i.e.,
080409 - tap tap, then the current subject account is sorted, without sorting
080410 - the entire account level, developed on 030717. ref SDS 3 575G  This
080411 - limited sort feature enables finding particular views and descriptions
080412 - of only the current account alphabetically, part of finding the
080413 - "needle in a haystack," cited in POIMS. ref OF 11 KH8J
080415 -  ..
080416 - The user can save the index in the alphabetical order, or the user can
080417 - press ESC to close the index, and preserve the original order.  The
080418 - user can also press F1 F3 to step back one level, or F1 F2 to open the
080419 - next level.
080421 -  ..
080422 - Today, the code was changed to make F1 F3 in a sorted index find the
080423 - current line in the current index, per above. ref SDS 0 7D8O  Decided
080424 - to extend this F1 F3 feature after using F5 to sort a particular
080425 - account within the current index file.
080427 -  ..
080428 - Line 280, ref OF 2 LO5N, -label 2Clks in 03507
080429 -
080430 -    -label 2Clks
080431 -    setcnt 123 666
080432 -    setcnt 124 666
080433 -    setgbl 124 666
080434 -    setcnt 108 9999
080435 -    setcnt 137 1155
080436 -
080437 -        Added flags for F1 F3 to find the current account description
080438 -        line in a sorted list in the same index that is unsorted.
080440 -         ..
080441 -        Added flag 137 1155 so that F2 will save a sorted single
080442 -        account, since this can be handy.
080444 -         ..
080445 -        Counter 108 is evaluated for determining when a double click
080446 -        has occurred. ref OF 2 HU5N  Since this feature was created,
080447 -        there has been a weakness of occassionally executing the
080448 -        feature when only 1 pass of F5 was used, this has sorted an
080449 -        index, when that was not intended.  setcnt 108 9999 starts the
080450 -        comparison flag above a value for time, and hopefully prevents
080451 -        the occassional event of counter 9 also starting at 0, which
080452 -        might be the cause of the problem.
080453 -
080454 -
080455 -
080456 -
0805 -

SUBJECTS
F1 F1 F3 Cursor Move to Account Description Column After Replacing D
Save Current Index When Not Sorted for Entering Subject Account into

1004 -
100501 -  ..
100502 - F1 F1 F3 Replace Subject Account Descriptions Restore Cursor to Field
100503 -
100504 - Made two additional refinements to using the Subject Index that make
100505 - application faster and easier with fewer keystrokes...
100506 -
100507 -    1.  F1 F1 F3 replaces subject account descriptions with context
100508 -        from another source.  Added code today that positions the
100509 -        cursor at the end of the process on the description column,
100510 -        rather than leaving the cursor on the account column.  This
100511 -        allows the User to press Enter immediately to load the new
100512 -        account structure into an SDS record Control Field, with a
100513 -        single keystroke.
100515 -         ..
100516 -    2.  Enter now saves the current subject index before capturing the
100517 -        string and loading it into a Control Field.  This allows the
100518 -        user to construct a new account with F1 F1 F3, or Shift F3, and
100519 -        then press Enter, without performing mechanics of moving the
100520 -        cursor into position, pressing F2 to save the record, and then
100521 -        pressing Enter, per below. ref SDS 0 B77N
100522 -
100524 -  ..
100525 - Line 320, ref OF 3 K63M, -label colnok in 035071
100526 -
100527 -    -label colnok
100528 -    z 1 80
100529 -    fr /.. /
100530 -    macro 16
100531 -
100532 -        Added this code to execute first when F1 F1 F3 is called to
100533 -        replace subject account description lines.  The code finds the
100534 -        left margin of the descriptions.  macro 16 saves the location
100535 -        to be restored after entering the new description lines, so
100536 -        that Enter can then be used to load the account into an SDS
100537 -        record Control Field, per above. ref SDS 0 YO4N
100538 -
100540 -  ..
100541 - Line 370, ref OF 3 H87N, -label bline in 035071
100542 -
100543 -    -label bline
100544 -    macro 17
100545 -    errormsg  Subject descriptions replaced
100546 -    -goto end4
100547 -
100548 -        Added macro 17 to move cursor to the account description field,
100549 -        so that Enter can be executed, per above. ref SDS 0 YO4N
100550 -
100551 -
100552 -
1006 -

SUBJECTS
Save Current Index When Not Sorted for Entering Subject Account into

1103 -
110401 -  ..
110402 - Enter Save Current Index Apply Subject Idex Situational Awareness
110403 -
110404 - Line 4520, ref OF 1 8H3H, -label 13411 in 03501 about 30 lines below
110405 -
110406 -    setcnt 237 883
110407 -    -gosub bH_sVx
110408 -    setcnt 237 0
110409 -
110410 -        Added call for Enter to save a Subject Index so that the user
110411 -        does not have to remember to press F2 after changes are
110412 -        constructed, per above. ref SDS 0 WU6J
110413 -
110414 -
110415 -
110416 -
110417 -
1105 -

SUBJECTS
New Account F6 Create Structure When Entered on Last Line of Subject

1203 -
120401 -  ..
120402 - F6 Eliminate Increment New Line for Multiple Views Same Account
120403 -
120404 - Change function of F6 to create new account lines in the Subject
120405 - Index.  Previously, F6 incremented the account code on each use.  This
120406 - reflected original planning for a new line to construct a new account,
120407 - and in that case incrementing the accound code created a distinction
120408 - with the prior line.  It has turned out the more common use for F6 is
120409 - to construct multiple views of the same account so there are multiple
120410 - ways to find an account to define context.  The general practice is to
120411 - construct an explanation of the context for the account and then use
120412 - primary words in the explanation as primary keys for finding the
120413 - context.  This creates a matrix/spreadsheet effect that augments
120414 - intelligence by aiding memory.
120416 -  ..
120417 - As a result, F6 will eliminate incrementing the account, and simply
120418 - replicate the line.  A new function double clicking F6 will construct
120419 - a new account line that increments the account number per below.
120420 - ref SDS 0 1E5L
120421 -
120422 -     [On 050311 Gary commented favorably on this change.
120423 -     ref SDS 10 YL8T
120425 -  ..
120426 - Line 3900, ref OF 1 H44N, -label bHrept in 03501
120427 -
120428 -    -label bHrept
120429 -   immed r
120430 -   setlen 1 0
120431 -   -if @1 = 0 -exit
120432 -   of 0
120433 -   up
120434 -   loc_cur 0 1
120435 -   z 1 80
120436 -   fr/. /
120437 -   rel_cur 1 0
120438 -   setlen 1 0
120439 -   rel_cur -1 0
120440 -   -if @1 > 4 -exit
120441 -
120442 -        Eliminate the code that increments accounts since this has not
120443 -        proven effective.
120445 -         ..
120446 -        This code determines when F6 is pressed on the last line,
120447 -        because it does rel_cur 1 0 that moves down a line, and checks
120448 -        the length.   If the line below is not blank, i.e., > 4, then
120449 -        exit, because this is not a condition for creating a new
120450 -        account structure.
120451 -
120452 -
120453 -
120455 -  ..
120456 - F6 2 Clicks Subject Index New Account Double Click
120457 - Subject Index New Account F6 Double Function with Double Click
120458 - 03501  F6 Create New Account Structure Double Click Last Line
120459 -
120460 - Will try changing this to create a new account structure when F6 is
120461 - used at the bottom of a stack of account description lines, since this
120462 - is the most common use for duplicating the last line of an account.
120464 -  ..
120465 - Actually, that is not really true.  When a new account is created,
120466 - all of the multiple views are constructed on the last line.  Is there
120467 - a bright line way to let this do double duty?
120469 -  ..
120470 - Could use the double click method applied for F5, coded in 03507.
120471 - ref OF 2 DJ5H
120473 -  ..
120474 - Modify code for replicating account lines to allow tapping F6 twice
120475 - within one second to create a new account....
120476 -
120477 -     [On 050311 demonstrated this capability for Gary. ref SDS 10 YL8T
120479 -  ..
120480 - Line 3930, ref OF 1 H44N, -label bHrept in 03501
120481 -
120482 -    -label bHrept
120483 -    immed r
120484 -    setlen 1 0
120485 -    -if @1 = 0 -exit
120486 -    of 0
120487 -    up
120488 -    loc_cur 0 1
120489 -    z 1 80
120490 -    fr/. /
120491 -    rel_cur 1 0
120492 -    setlen 1 0
120493 -    rel_cur -1 0
120494 -    -if @1 > 4 -exit
120495 -
120496 -        This is the normal function of F6 to repeat a current account
120497 -        line for editing to construct a multiple view.
120498 -
120499 -
120501 -  ..
120502 - Line 3930, ref OF 1 OX4I, -label bHrept in 03501 about 20 lines below
120503 -
120504 -    datecnt 4 0
120505 -    -if @4 = @103 -if @5 = @104 -if @6 = @105 -if @7 = @106 -goto ckdct
120506 -    -goto 1cLk
120507 -    -label ckdct
120508 -    -if @8 = @107 -goto lfdct
120509 -    -goto 1cLk.................................... ref SDS 0 7Q6M
120510 -
120511 -        After F6 repeats a line, test for double click with datecnt 4 0
120512 -        that compares year, month, day, hour, and minute, and if the
120513 -        same as the prior pass, then check for double click, and if not
120514 -        then complete process with code for one click, that sets up to
120515 -        compare the next click.
120516 -
120517 -
120519 -  ..
120520 - Line 3930, ref OF 1 5R5G, -label lfdct in 03501
120521 -
120522 -    -label lfdct
120523 -    -if @9 < @108 addcnt 9 60
120524 -    subcnt 9 @108
120525 -    -if @9 < 2 -goto 2Clks......................... ref SDS 0 1E40
120527 -     ..
120528 -    -label 1cLk
120529 -    datecnt 103 0
120530 -    -exit
120531 -
120532 -        If current seconds param is less than the param set for 1
120533 -        click, then increment it to the next second value.  subcnt 9
120534 -        @108 determines the difference in seconds between the current
120535 -        click and the prior click, and if less than 2, then the code
120536 -        executes double click that sets up a new account.  If not, then
120537 -        run datecnt 103 0 again, to test for double click on the next
120538 -        pass.
120539 -
120541 -     ..
120542 -    Double Click Op Construct New Subject Index Account
120543 -
120544 -
120545 - Line 3930, ref OF 1 5R5G, -label 2Clks in 03501
120546 -
120547 -    -label 2Clks
120548 -    immed d
120549 -    rel_cur -2 0
120550 -    immed a
120551 -    rel_cur 2 0
120552 -    split
120553 -    rel_cur 1 0
120554 -    immed d
120555 -    rel_cur -1 0
120556 -    loc_cur 0 1
120557 -    fr /./
120558 -    rel_cur 0 -2
120559 -    chrcnt 1 0
120560 -    addcnt 1 4
120561 -    ic @1
120562 -    rel_cur 0 -3
120563 -    -exit
120564 -
120565 -        This code sets up a new account structure enhancing the prior
120566 -        function of F6, per above. ref SDS 0 1E5L
120567 -
120568 -
120569 -
1206 -

SUBJECTS
F1 F8 Outline Time Stamp for Narrative, Macro 113, 04411

1303 -
130401 -  ..
130402 - Progress for 1st Use in Record F1 F8 Outline Time Stamp
130403 - 04411 Progress for 1st Use in Record F1 F8 Outline Time Stamp
130404 - F1 F8 Outline Time Stamp Add Progress for 1st Use in Record
130405 -
130406 - Would like to automatically create the standard structure for the
130407 - outline in an SDS record that uses Progress instead of the time for
130408 - the first outline to enter record content below the summary para.
130409 -
130410 - We could do this differently, and make the default format for an SDS
130411 - record contain a Progress outline description.  This would not
130412 - address the use case where an existing record is used as a template
130413 - for a new record, and the narrative content is removed, except for
130414 - references.  In that case F1 F8 is handy to create the structure for
130415 - the Summary Objective section.
130417 -  ..
130418 - However, today, added....
130420 -  ..
130421 - Line 130, ref OF 4 QR4O, -label progrs in 044110
130422 -
130423 -    -label progrs
130424 -    z 8 15
130425 -    errorcnt 0 0
130426 -    fr /ummary/
130427 -    -if @0 > 0 -goto time
130428 -    macro 21
130429 -    ins_text !Progress!
130430 -    -goto over
130431 -
130432 -        Added this code to test the record and if this is the first
130433 -        outline structure in the record, then enter Progress, otherwise
130434 -        enter the time.
130435 -
130436 -
130437 -
130438 -
130439 -
1305 -

SUBJECTS
Justify Double Space between End of Last Sentence on a Line  nd Firs

1403 -
140401 -  ..
140402 - Macro 49 Justify Para Double Space between Sentences - Alt F9
140403 -
140404 - Follow up ref SDS 2 0001.
140406 -  ..
140407 - The program currently double spaces between sentences, but only when a
140408 - new sentence begins with the last word on a line.  Today, expanded the
140409 - code to solve the general case that double spaces between all
140410 - sentences.  This saves considerable time manually double spacing, and
140411 - increases ease of reading and comprehension, as explained on 030204.
140412 - ref SDS 2 D69F
140414 -  ..
140415 - Turned out to be a very simple task, after studying the design for
140416 - justify.
140418 -  ..
140419 - Line 820, ref OF 5 P35O, -label lpcpl2 in 000002
140420 -
140421 -    -label lpcpl2
140422 -    -if @1 > 64 -if @1 < 91 -goto capLtr
140423 -    -if @233 != 888 -goto lwol
140424 -    setcur 119 0
140425 -    -if @119 > @30 -goto lpcapL
140426 -    -return
140427 -    -label lwol
140428 -
140429 -        Added code -if @288 != 88 -goto lwol for a switch to identify
140430 -        the initial op that now tests entire line, rather than just the
140431 -        last word at the end of the line; setcur 119 0 get location to
140432 -        compare with left margin that indicates when the entire line
140433 -        has been processed; -goto lpcpL uses existing routine to test
140434 -        line for a capital letter and identify beginning of a sentence
140435 -        to force a double space.
140436 -
140437 -
140439 -  ..
140440 - Line 850, ref OF 5 ZK5N, -label capLtr in 000002
140441 -
140442 -    -label capLtr
140443 -    rel_cur 0 -1
140444 -    -if @233 != 888 -goto dscfp
140445 -    setcur 119 0
140446 -    -if @119 > @30 -goto dscfp
140447 -    -return
140448 -    -label dscfp
140449 -
140450 -        Do the same test when the code encounters a string of
140451 -        capital letters like POIMS, AAA, etc.
140452 -
140453 -
140455 -  ..
140456 - Line 940, ref OF 5 NV4L, -label dblSp in 000002
140457 -
140458 -    -if @233 = 888 -goto lpcapL
140459 -
140460 -        After double spacing continue processing the rest of the line,
140461 -        on the 1st pass.
140462 -
140463 -
140464 -
140466 -  ..
140467 - Line 1000, ref OF 5 MY4O, -label elpcap in 000002 about 20 lines
140468 - below
140469 -
140470 -    -if @1 < 17 -if @1 > 12 -goto dblSp
140471 -    -if @233 = 888 getscr 8
140472 -
140473 -        Added code -if @233 = 888 getscr 8 restores cursor to continue
140474 -        checking the rest of the line after double spacing when a new
140475 -        sentence follows a reference citation string.
140476 -
140477 -
140479 -  ..
140480 - Line 1110, ref OF 5 T46H, -label adsttl in 000002
140481 -
140482 -    -label adsttl
140483 -    -if @233 = 888 -goto lpcapL
140484 -
140485 -        After processing potential double space elements, on 1st pass,
140486 -        cycle back and continue checking the rest of the line.
140487 -
140488 -
140490 -  ..
140491 - Line 1010, ref OF 5 UR5L, -label dmsm36 in 000002
140492 -
140493 -    -label dmsm36
140494 -    setcnt 233 888
140495 -    loc_cur 0 80
140496 -    -gosub lpcapL
140497 -    setcnt 233 0
140498 -    loc_cur 0 @30
140499 -
140500 -        macro 36 appends lines.  Added code setcnt 233 888 to flag 1st
140501 -        pass, loc_cur 0 80 positions to move backwards along a line
140502 -        looking for capital letters that signify beginning a sentence;
140503 -        -gosub lpcapL uses existing code to identify capital letters,
140504 -        and double space between sentences; setcnt 233 turns off 1st
140505 -        pass flag, so that on 2nd pass, the original code will process
140506 -        the last word on the line correctly, and split everything else
140507 -        to the next line; loc_cur 0 @30 restores cursor to left margin,
140508 -        ready to process the next line after double spacing between
140509 -        sentences on the current line.
140510 -
140511 -
140512 -
140513 -
140514 -
140515 -
140516 -
140517 -
140518 -
140519 -
140520 -
140521 -
140522 -
140523 -
140524 -
140525 -
140526 -
140527 -
140528 -
140529 -
1406 -