diff --git a/blk/122 b/blk/122 index ba07cc4..5228e15 100644 --- a/blk/122 +++ b/blk/122 @@ -1,6 +1,7 @@ 'H' goes to the beginning of the line, 'L' to the end. -'w' moves forward by a word. 'W' moves backward by a word. +'w' moves forward by a word. 'b' moves backward by a word. +'W' moves to end-of-word. 'B' moves backward to end-of-word. 'I', 'F' and 'E' invoke the corresponding command from the Block Editor (B100). Refer to documentation there. diff --git a/blk/125 b/blk/125 index 6ba00a5..ea0312f 100644 --- a/blk/125 +++ b/blk/125 @@ -1,3 +1,3 @@ '? UPPER NOT [IF] 33 LOAD+ [THEN] DROP ( B158 ) -23 LOAD+ ( B102, block editor ) -1 4 LOADR+ +1 5 LOADR+ diff --git a/blk/128 b/blk/128 index 762b15a..30ad6b6 100644 --- a/blk/128 +++ b/blk/128 @@ -1,15 +1,13 @@ +: _pos! 1023 MIN DUP 0< IF DROP 0 THEN EDPOS ! ; : $w EDPOS @ BLK( + acc@ 0 DO BEGIN C@+ WS? UNTIL BEGIN C@+ WS? NOT UNTIL LOOP - 1- BLK( - 1023 MIN EDPOS ! ; + 1- BLK( - _pos! ; : $W EDPOS @ BLK( + acc@ 0 DO + 1+ BEGIN C@+ WS? NOT UNTIL BEGIN C@+ WS? UNTIL LOOP + 2- BLK( - _pos! ; +: $b EDPOS @ BLK( + acc@ 0 DO + 1- BEGIN C@- WS? NOT UNTIL BEGIN C@- WS? UNTIL LOOP + 2+ BLK( - _pos! ; +: $B EDPOS @ BLK( + acc@ 0 DO BEGIN C@- WS? UNTIL BEGIN C@- WS? NOT UNTIL LOOP - 1+ BLK( - DUP 0< IF DROP 0 THEN EDPOS ! ; -: $R ( replace mode ) - mode! 'R' EMIT - BEGIN setpos C< DUP 0xd = NOT IF - EDPOS @ _cpos C! 1 EDPOS +! BLK!! 0 - THEN UNTIL mode! SPC contents ; -: handle ( c -- f ) - DUP '0' '9' =><= IF num 0 EXIT THEN - DUP CMD 2+ C! CMD FIND IF EXECUTE ELSE DROP THEN - UPPER 'Q' = ; + 1+ BLK( - _pos! ; diff --git a/blk/129 b/blk/129 index 12d168b..4c1b4c0 100644 --- a/blk/129 +++ b/blk/129 @@ -1,13 +1,9 @@ -: bufp ( buf -- ) - DUP 64 + SWAP DO - i C@ DUP 0x20 < IF DROP 0x20 THEN EMIT - LOOP ; -: bufs - 1 aty ." I: " IBUF bufp - 2 aty ." F: " FBUF bufp ; -: c<= IF num 0 EXIT THEN + DUP CMD 2+ C! CMD FIND IF EXECUTE ELSE DROP THEN + UPPER 'Q' = ; diff --git a/blk/130 b/blk/130 new file mode 100644 index 0000000..12d168b --- /dev/null +++ b/blk/130 @@ -0,0 +1,13 @@ +: bufp ( buf -- ) + DUP 64 + SWAP DO + i C@ DUP 0x20 < IF DROP 0x20 THEN EMIT + LOOP ; +: bufs + 1 aty ." I: " IBUF bufp + 2 aty ." F: " FBUF bufp ; +: c