ref: a8661e1ec9a43064e15ff28bbd13bdc091c1ff74
parent: f5e02d924748303cb1e98ad28e6d1b9b918a72f0
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;
--
⑨