ref: 91c7e0b127ef494b151fae81d80885fd3d306dc5
parent: 66fea232bca25bcf07d2f70c4ee45d2c82f6f5e7
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Fri Nov 22 14:19:37 EST 2013
acme: fix arrow key oddity (thanks mark van atten and erik)
from 9atom/acmearrowfun patch:
reported by mark van atten
In Plan 9 acme, if you type
{}
then go back and type text between the brackets
{Curiouser and curiouser!}
the right arrow is blocked when you want to go over the closing
bracket to continue typing to its right. (If you first go to the left,
and then back to the right, it works.)
Same for the other brackets: [ ], ( ), < >.
noted that brackets are not necessary. same behavior with any
character.
fix is to textcommit before moving.
--- a/sys/src/cmd/acme/text.c
+++ b/sys/src/cmd/acme/text.c
@@ -649,16 +649,14 @@
rp = &r;
switch(r){case Kleft:
- if(t->q0 > 0){- typecommit(t);
+ typecommit(t);
+ if(t->q0 > 0)
textshow(t, t->q0-1, t->q0-1, TRUE);
- }
return;
case Kright:
- if(t->q1 < t->file->nc){- typecommit(t);
+ typecommit(t);
+ if(t->q1 < t->file->nc)
textshow(t, t->q1+1, t->q1+1, TRUE);
- }
return;
case Kdown:
n = t->maxlines/3;
--
⑨