ofs | hex dump | ascii |
---|
0000 | 19 00 50 52 4f 43 45 44 55 52 45 20 6c 73 69 5f 66 69 6e 64 5f 62 75 66 66 65 72 00 01 00 21 00 | ..PROCEDURE.lsi_find_buffer...!. |
0020 | 4c 00 21 20 50 72 6f 6d 70 74 20 66 6f 72 20 61 20 77 69 6c 64 2d 63 61 72 64 20 62 75 66 66 65 | L.!.Prompt.for.a.wild-card.buffe |
0040 | 72 20 6e 61 6d 65 20 61 6e 64 20 70 6f 73 69 74 69 6f 6e 20 69 6e 74 6f 20 74 68 65 20 66 69 72 | r.name.and.position.into.the.fir |
0060 | 73 74 20 62 75 66 66 65 72 20 74 68 61 74 3d 00 21 20 6d 61 74 63 68 65 73 2e 20 20 49 66 20 6e | st.buffer.that=.!.matches...If.n |
0080 | 6f 20 6d 61 74 63 68 69 6e 67 20 62 75 66 66 65 72 20 69 73 20 66 6f 75 6e 64 2c 20 74 68 65 6e | o.matching.buffer.is.found,.then |
00a0 | 20 63 72 65 61 74 65 20 6f 6e 65 2e 20 00 12 00 4c 4f 43 41 4c 20 62 75 66 66 65 72 5f 6e 61 6d | .create.one.....LOCAL.buffer_nam |
00c0 | 65 3b 01 00 21 00 26 00 21 20 50 72 6f 6d 70 74 20 74 68 65 20 75 73 65 72 20 66 6f 72 20 74 68 | e;..!.&.!.Prompt.the.user.for.th |
00e0 | 65 20 62 75 66 66 65 72 20 6e 61 6d 65 2e 2c 00 62 75 66 66 65 72 5f 6e 61 6d 65 20 3a 3d 20 52 | e.buffer.name.,.buffer_name.:=.R |
0100 | 45 41 44 5f 4c 49 4e 45 20 28 27 5f 46 69 6e 64 20 62 75 66 66 65 72 3a 20 27 29 3b 13 00 49 46 | EAD_LINE.('_Find.buffer:.');..IF |
0120 | 20 62 75 66 66 65 72 5f 6e 61 6d 65 20 3d 20 27 27 00 04 00 54 48 45 4e 09 00 20 20 20 52 45 54 | .buffer_name.=.''...THEN.....RET |
0140 | 55 52 4e 00 06 00 45 4e 44 49 46 3b 01 00 21 00 21 00 43 48 41 4e 47 45 5f 43 41 53 45 20 28 62 | URN...ENDIF;..!.!.CHANGE_CASE.(b |
0160 | 75 66 66 65 72 5f 6e 61 6d 65 2c 20 55 50 50 45 52 29 3b 00 27 00 6c 73 69 5f 66 69 6e 64 5f 62 | uffer_name,.UPPER);.'.lsi_find_b |
0180 | 75 66 66 65 72 5f 64 69 73 70 61 74 63 68 20 28 62 75 66 66 65 72 5f 6e 61 6d 65 29 3b 00 1e 00 | uffer_dispatch.(buffer_name);... |
01a0 | 45 4e 44 50 52 4f 43 45 44 55 52 45 20 21 20 6c 73 69 5f 66 69 6e 64 5f 62 75 66 66 65 72 02 00 | ENDPROCEDURE.!.lsi_find_buffer.. |
01c0 | 21 0c 30 00 50 52 4f 43 45 44 55 52 45 20 6c 73 69 5f 66 69 6e 64 5f 62 75 66 66 65 72 5f 64 69 | !.0.PROCEDURE.lsi_find_buffer_di |
01e0 | 73 70 61 74 63 68 20 28 62 75 66 66 65 72 5f 6e 61 6d 65 29 0d 00 4c 4f 43 41 4c 20 61 6e 73 77 | spatch.(buffer_name)..LOCAL.answ |
0200 | 65 72 2c 00 11 00 20 20 20 20 20 20 62 75 66 66 65 72 5f 70 74 72 3b 00 01 00 20 00 2e 00 62 75 | er,.........buffer_ptr;.......bu |
0220 | 66 66 65 72 5f 70 74 72 20 3a 3d 20 6c 73 69 5f 6c 6f 6f 6b 75 70 5f 62 75 66 66 65 72 20 28 62 | ffer_ptr.:=.lsi_lookup_buffer.(b |
0240 | 75 66 66 65 72 5f 6e 61 6d 65 29 3b 01 00 21 00 35 00 21 20 49 66 20 61 20 6d 61 74 63 68 20 77 | uffer_name);..!.5.!.If.a.match.w |
0260 | 61 73 20 66 6f 75 6e 64 2c 20 74 68 65 6e 20 70 6f 73 69 74 69 6f 6e 20 74 6f 20 74 68 61 74 20 | as.found,.then.position.to.that. |
0280 | 62 75 66 66 65 72 2e 00 11 00 49 46 20 62 75 66 66 65 72 5f 70 74 72 20 3d 20 30 00 04 00 54 48 | buffer....IF.buffer_ptr.=.0...TH |
02a0 | 45 4e 34 00 20 20 20 61 6e 73 77 65 72 20 3a 3d 20 52 45 41 44 5f 4c 49 4e 45 20 28 27 4e 6f 20 | EN4....answer.:=.READ_LINE.('No. |
02c0 | 62 75 66 66 65 72 20 27 20 2b 20 62 75 66 66 65 72 5f 6e 61 6d 65 20 2b 21 00 20 20 20 20 20 20 | buffer.'.+.buffer_name.+!....... |
02e0 | 27 20 66 6f 75 6e 64 2e 20 20 43 72 65 61 74 65 3f 20 28 59 2f 4e 29 20 27 29 3b 00 1f 00 20 20 | '.found...Create?.(Y/N).');..... |
0300 | 20 43 48 41 4e 47 45 5f 43 41 53 45 20 28 61 6e 73 77 65 72 2c 20 55 50 50 45 52 29 3b 00 12 00 | .CHANGE_CASE.(answer,.UPPER);... |
0320 | 20 20 20 49 46 20 61 6e 73 77 65 72 20 3d 20 27 59 27 07 00 20 20 20 54 48 45 4e 00 31 00 20 20 | ...IF.answer.=.'Y'.....THEN.1... |
0340 | 20 20 20 20 62 75 66 66 65 72 5f 70 74 72 20 3a 3d 20 28 43 52 45 41 54 45 5f 42 55 46 46 45 52 | ....buffer_ptr.:=.(CREATE_BUFFER |
0360 | 20 28 62 75 66 66 65 72 5f 6e 61 6d 65 29 29 00 08 00 20 20 20 45 4e 44 49 46 06 00 45 4e 44 49 | .(buffer_name))......ENDIF..ENDI |
0380 | 46 3b 12 00 49 46 20 62 75 66 66 65 72 5f 70 74 72 20 3c 3e 20 30 04 00 54 48 45 4e 19 00 20 20 | F;..IF.buffer_ptr.<>.0..THEN.... |
03a0 | 20 50 4f 53 49 54 49 4f 4e 20 28 62 75 66 66 65 72 5f 70 74 72 29 3b 00 28 00 20 20 20 4d 41 50 | .POSITION.(buffer_ptr);.(....MAP |
03c0 | 20 28 43 55 52 52 45 4e 54 5f 57 49 4e 44 4f 57 2c 20 43 55 52 52 45 4e 54 5f 42 55 46 46 45 52 | .(CURRENT_WINDOW,.CURRENT_BUFFER |
03e0 | 29 3b 27 00 20 20 20 4c 53 45 24 53 45 54 5f 53 54 41 54 55 53 5f 4c 49 4e 45 20 28 43 55 52 52 | );'....LSE$SET_STATUS_LINE.(CURR |
0400 | 45 4e 54 5f 57 49 4e 44 4f 57 29 00 05 00 45 4e 44 49 46 00 0d 00 45 4e 44 50 52 4f 43 45 44 55 | ENT_WINDOW)...ENDIF...ENDPROCEDU |
0420 | 52 45 3b 00 02 00 21 0c 26 00 50 52 4f 43 45 44 55 52 45 20 6c 73 69 5f 6c 6f 6f 6b 75 70 5f 62 | RE;...!.&.PROCEDURE.lsi_lookup_b |
0440 | 75 66 66 65 72 20 28 77 69 6c 64 63 61 72 64 29 10 00 4c 4f 43 41 4c 20 74 68 69 73 5f 73 70 6f | uffer.(wildcard)..LOCAL.this_spo |
0460 | 74 2c 0c 00 20 20 20 20 20 20 64 75 6d 6d 79 2c 0f 00 20 20 20 20 20 20 65 78 65 63 5f 73 74 72 | t,........dummy,........exec_str |
0480 | 2c 00 15 00 20 20 20 20 20 20 63 75 72 72 5f 62 75 66 66 5f 73 70 6f 74 2c 00 12 00 20 20 20 20 | ,.........curr_buff_spot,....... |
04a0 | 20 20 62 75 66 66 65 72 5f 6c 69 6e 65 2c 13 00 20 20 20 20 20 20 77 69 6c 64 63 61 72 64 5f 70 | ..buffer_line,........wildcard_p |
04c0 | 61 74 2c 00 11 00 20 20 20 20 20 20 62 75 66 66 65 72 5f 70 74 72 2c 00 10 00 20 20 20 20 20 20 | at,.........buffer_ptr,......... |
04e0 | 62 75 66 66 5f 6e 61 6d 65 3b 00 00 08 00 4f 4e 5f 45 52 52 4f 52 1f 00 20 20 20 49 46 20 65 72 | buff_name;....ON_ERROR.....IF.er |
0500 | 72 6f 72 20 3c 3e 20 74 70 75 24 5f 73 74 72 6e 6f 74 66 6f 75 6e 64 00 07 00 20 20 20 54 48 45 | ror.<>.tpu$_strnotfound......THE |
0520 | 4e 00 4e 00 20 20 20 20 20 20 4d 45 53 53 41 47 45 20 28 27 55 6e 65 78 70 65 63 74 65 64 20 65 | N.N.......MESSAGE.('Unexpected.e |
0540 | 72 72 6f 72 20 69 6e 20 46 49 4e 44 5f 42 55 46 46 45 52 20 61 74 20 6c 69 6e 65 20 27 20 2b 20 | rror.in.FIND_BUFFER.at.line.'.+. |
0560 | 53 54 52 20 28 65 72 72 6f 72 5f 6c 69 6e 65 29 29 3b 1b 00 20 20 20 20 20 20 50 4f 53 49 54 49 | STR.(error_line));........POSITI |
0580 | 4f 4e 20 28 74 68 69 73 5f 73 70 6f 74 29 3b 00 0f 00 20 20 20 20 20 20 52 45 54 55 52 4e 20 30 | ON.(this_spot);.........RETURN.0 |
05a0 | 3b 00 0b 00 20 20 20 20 20 20 61 62 6f 72 74 00 09 00 20 20 20 45 4e 44 49 46 3b 00 0c 00 45 4e | ;.........abort......ENDIF;...EN |
05c0 | 44 4f 4e 5f 45 52 52 4f 52 20 00 00 19 00 74 68 69 73 5f 73 70 6f 74 20 3a 3d 20 4d 41 52 4b 20 | DON_ERROR.....this_spot.:=.MARK. |
05e0 | 28 4e 4f 4e 45 29 3b 00 24 00 64 75 6d 6d 79 20 3a 3d 20 6c 73 69 5f 63 72 65 61 74 65 5f 62 75 | (NONE);.$.dummy.:=.lsi_create_bu |
0600 | 66 66 65 72 5f 6d 65 6e 75 20 28 31 29 3b 49 00 64 75 6d 6d 79 20 3a 3d 20 6c 73 69 5f 62 75 69 | ffer_menu.(1);I.dummy.:=.lsi_bui |
0620 | 6c 64 5f 70 61 74 74 65 72 6e 20 28 27 5c 3c 5c 5b 2a 20 5d 27 20 2b 20 77 69 6c 64 63 61 72 64 | ld_pattern.('\<\[*.]'.+.wildcard |
0640 | 2c 20 6c 73 69 5f 6c 6f 6f 6b 75 70 5f 62 75 66 66 65 72 5f 70 61 74 29 3b 00 24 00 49 46 20 47 | ,.lsi_lookup_buffer_pat);.$.IF.G |
0660 | 45 54 5f 49 4e 46 4f 20 28 64 75 6d 6d 79 2c 20 27 74 79 70 65 27 29 20 3d 20 53 54 52 49 4e 47 | ET_INFO.(dummy,.'type').=.STRING |
0680 | 04 00 54 48 45 4e 36 00 20 20 20 6c 73 69 5f 6c 6f 6f 6b 75 70 5f 62 75 66 66 65 72 5f 70 61 74 | ..THEN6....lsi_lookup_buffer_pat |
06a0 | 20 3a 3d 20 22 22 20 26 20 6c 73 69 5f 6c 6f 6f 6b 75 70 5f 62 75 66 66 65 72 5f 70 61 74 04 00 | .:=."".&.lsi_lookup_buffer_pat.. |
06c0 | 45 4c 53 45 41 00 20 20 20 65 78 65 63 5f 73 74 72 20 3a 3d 20 27 6c 73 69 5f 6c 6f 6f 6b 75 70 | ELSEA....exec_str.:=.'lsi_lookup |
06e0 | 5f 62 75 66 66 65 72 5f 70 61 74 3a 3d 27 20 2b 20 6c 73 69 5f 6c 6f 6f 6b 75 70 5f 62 75 66 66 | _buffer_pat:='.+.lsi_lookup_buff |
0700 | 65 72 5f 70 61 74 3b 00 15 00 20 20 20 45 58 45 43 55 54 45 20 28 65 78 65 63 5f 73 74 72 29 00 | er_pat;......EXECUTE.(exec_str). |
0720 | 06 00 45 4e 44 49 46 3b 39 00 21 6c 73 69 5f 6c 6f 6f 6b 75 70 5f 62 75 66 66 65 72 5f 70 61 74 | ..ENDIF;9.!lsi_lookup_buffer_pat |
0740 | 20 3a 3d 20 4c 49 4e 45 5f 42 45 47 49 4e 20 26 20 41 52 42 28 31 29 20 26 20 77 69 6c 64 63 61 | .:=.LINE_BEGIN.&.ARB(1).&.wildca |
0760 | 72 64 3b 00 27 00 50 4f 53 49 54 49 4f 4e 20 28 42 45 47 49 4e 4e 49 4e 47 5f 4f 46 20 28 6c 73 | rd;.'.POSITION.(BEGINNING_OF.(ls |
0780 | 69 5f 6d 65 6e 75 5f 62 75 66 29 29 3b 00 3f 00 63 75 72 72 5f 62 75 66 66 5f 73 70 6f 74 20 3a | i_menu_buf));.?.curr_buff_spot.: |
07a0 | 3d 20 53 45 41 52 43 48 20 28 4c 49 4e 45 5f 42 45 47 49 4e 20 26 20 27 2a 27 2c 20 46 4f 52 57 | =.SEARCH.(LINE_BEGIN.&.'*',.FORW |
07c0 | 41 52 44 2c 20 4e 4f 5f 45 58 41 43 54 29 3b 00 1a 00 50 4f 53 49 54 49 4f 4e 20 28 63 75 72 72 | ARD,.NO_EXACT);...POSITION.(curr |
07e0 | 5f 62 75 66 66 5f 73 70 6f 74 29 3b 12 00 4d 4f 56 45 5f 56 45 52 54 49 43 41 4c 20 28 31 29 3b | _buff_spot);..MOVE_VERTICAL.(1); |
0800 | 41 00 62 75 66 66 65 72 5f 6c 69 6e 65 20 3a 3d 20 53 45 41 52 43 48 20 28 6c 73 69 5f 6c 6f 6f | A.buffer_line.:=.SEARCH.(lsi_loo |
0820 | 6b 75 70 5f 62 75 66 66 65 72 5f 70 61 74 2c 20 46 4f 52 57 41 52 44 2c 20 4e 4f 5f 45 58 41 43 | kup_buffer_pat,.FORWARD,.NO_EXAC |
0840 | 54 29 3b 00 12 00 49 46 20 62 75 66 66 65 72 5f 6c 69 6e 65 20 3d 20 30 04 00 54 48 45 4e 2a 00 | T);...IF.buffer_line.=.0..THEN*. |
0860 | 20 20 20 50 4f 53 49 54 49 4f 4e 20 28 42 45 47 49 4e 4e 49 4e 47 5f 4f 46 20 28 6c 73 69 5f 6d | ...POSITION.(BEGINNING_OF.(lsi_m |
0880 | 65 6e 75 5f 62 75 66 29 29 3b 43 00 20 20 20 62 75 66 66 65 72 5f 6c 69 6e 65 20 3a 3d 20 53 45 | enu_buf));C....buffer_line.:=.SE |
08a0 | 41 52 43 48 20 28 6c 73 69 5f 6c 6f 6f 6b 75 70 5f 62 75 66 66 65 72 5f 70 61 74 2c 20 46 4f 52 | ARCH.(lsi_lookup_buffer_pat,.FOR |
08c0 | 57 41 52 44 2c 20 4e 4f 5f 45 58 41 43 54 29 00 06 00 45 4e 44 49 46 3b 12 00 49 46 20 62 75 66 | WARD,.NO_EXACT)...ENDIF;..IF.buf |
08e0 | 66 65 72 5f 6c 69 6e 65 20 3d 20 30 04 00 54 48 45 4e 18 00 20 20 20 50 4f 53 49 54 49 4f 4e 20 | fer_line.=.0..THEN.....POSITION. |
0900 | 28 74 68 69 73 5f 73 70 6f 74 29 3b 0b 00 20 20 20 52 45 54 55 52 4e 20 30 00 04 00 45 4c 53 45 | (this_spot);.....RETURN.0...ELSE |
0920 | 1a 00 20 20 20 50 4f 53 49 54 49 4f 4e 20 28 62 75 66 66 65 72 5f 6c 69 6e 65 29 3b 26 00 20 20 | .....POSITION.(buffer_line);&... |
0940 | 20 62 75 66 66 5f 6e 61 6d 65 20 3a 3d 20 6c 73 69 5f 73 74 72 69 70 5f 62 75 66 66 65 72 5f 6e | .buff_name.:=.lsi_strip_buffer_n |
0960 | 61 6d 65 3b 36 00 20 20 20 6c 73 65 24 64 6f 5f 63 6f 6d 6d 61 6e 64 20 28 27 47 4f 54 4f 20 42 | ame;6....lse$do_command.('GOTO.B |
0980 | 55 46 46 45 52 20 22 27 20 2b 20 62 75 66 66 5f 6e 61 6d 65 20 2b 20 27 22 27 29 3b 20 00 20 20 | UFFER."'.+.buff_name.+.'"');.... |
09a0 | 20 62 75 66 66 65 72 5f 70 74 72 20 3a 3d 20 43 55 52 52 45 4e 54 5f 42 55 46 46 45 52 3b 18 00 | .buffer_ptr.:=.CURRENT_BUFFER;.. |
09c0 | 20 20 20 50 4f 53 49 54 49 4f 4e 20 28 74 68 69 73 5f 73 70 6f 74 29 3b 14 00 20 20 20 52 45 54 | ...POSITION.(this_spot);.....RET |
09e0 | 55 52 4e 20 62 75 66 66 65 72 5f 70 74 72 06 00 45 4e 44 49 46 3b 20 00 45 4e 44 50 52 4f 43 45 | URN.buffer_ptr..ENDIF;..ENDPROCE |
0a00 | 44 55 52 45 20 21 20 6c 73 69 5f 6c 6f 6f 6b 75 70 5f 62 75 66 66 65 72 20 00 6c 73 69 5f 6c 6f | DURE.!.lsi_lookup_buffer..lsi_lo |
0a20 | 6f 6b 75 70 5f 62 75 66 66 65 72 5f 70 61 74 20 3a 3d 20 41 52 42 28 31 29 3b | okup_buffer_pat.:=.ARB(1); |