Added parens matching back

This commit is contained in:
Devine Lu Linvega 2024-04-14 10:23:51 -07:00
parent 67325bf53f
commit bbfd6cf44f
2 changed files with 45 additions and 3 deletions

View File

@ -14,6 +14,7 @@
@textarea &highlight $1 &length $2
@scroll &x $2 &y $2 &addr $2 &ratio $2
@scrollbar &height $2
@wrap &left $2 &right $2
@state &comment $1 &underline $1 &label $1 &mono $1 &rune $1
@nav &cat $1 &len $1 &buf $60
@ -60,7 +61,7 @@
( name ) "Left 0a
( details ) "A 20 "Text 20 "Editor 0a
( author ) "By 20 "Hundred 20 "Rabbits 0a
( date ) "21 20 "Mar 20 "2024 $1
( date ) "14 20 "Apr 20 "2024 $1
01
( > ) 83 =appicon
@ -517,7 +518,7 @@
( >> )
@selection-changed ( -- )
scroll-follow update-nav !reqdraw-textarea
scroll-follow update-wrap update-nav !reqdraw-textarea
@get-from ( -- addr* )
.selection/b LDZ2 .selection/a LDZ2 LTH2k ?{ SWP2 }
@ -784,6 +785,37 @@
next-glyph & GTH2k ?&>l
POP2 POP2 STH2r JMP2r
@balance-wrap ( c -- offset )
DUP LIT "( EQU ?&a
DUP LIT "[ EQU ?&a
DUP LIT "{ EQU ?&a
DUP LIT ") EQU ?&b
DUP LIT "] EQU ?&b
DUP LIT "} EQU ?&b
POP #00 JMP2r
&a POP #ff JMP2r
&b POP #01 JMP2r
@update-wrap ( -- )
#0000 .wrap/left STZ2k INC INC STZ2
.selection/b LDZ2
( | left )
[ LITr 01 ] .scroll/addr LDZ2 ;text ADD2 #0001 SUB2 OVR2 #0001 SUB2 EQU2k ?{
&l ( -- )
LDAk balance-wrap STH
ADDr STHkr ?{ .wrap/left STZ2
!&end-l }
prev-glyph LTH2k ?&l }
POP2 &end-l POP2 POPr
( | right )
[ LITr 01 ] get-eof SWP2 EQU2k ?{
&r ( -- )
LDAk balance-wrap STH
SUBr STHkr ?{ .wrap/right STZ2
!&end-r }
next-glyph GTH2k ?&r }
POP2 &end-r POP2 POPr JMP2r
@clamp-addr ( addr* -- addr* )
( min ) ;text GTH2k ?{ SWP2 }
POP2
@ -853,7 +885,10 @@
@get-color ( addr* -- addr* color )
DUP2 get-from LTH2 ?&no-selected
DUP2 get-to LTH2 ?&selected
&no-selected .textarea/highlight LDZ ?&skip
&no-selected ( -- )
DUP2 .wrap/left LDZ2 EQU2 ?&wrap
DUP2 .wrap/right LDZ2 EQU2 ?&wrap
.textarea/highlight LDZ ?&skip
.state/comment LDZ ?&comment
.state/label LDZ ?&label
&skip #01 JMP2r
@ -861,6 +896,7 @@
#0d JMP2r
&label #02 JMP2r
&comment #03 JMP2r
&wrap #0d JMP2r
@get-high-width ( addr* -- addr* width* )
LDA2k #c2b7 NEQ2 ?{ #0006 JMP2r }

View File

@ -2,6 +2,12 @@
a very long line that doesn't quite display on a single screen to test the scroll-x behaviour.
<> (reverse List ( ) ?* ) (?*)
<> (reverse (?*)) (reverse List (?*) ())
<> (reverse List (?x ?y) ?z) (reverse List ?y (?x ?z))
(reverse (modal))
@delete ( -- )
[ LIT2 &name $2 ]
[ LIT &field -default ]