From 2fac3e2c80b9c8c6e4ef9ecd8c36dc28f8863398 Mon Sep 17 00:00:00 2001 From: Petter Rodhelind Date: Wed, 25 Oct 2017 12:32:34 +0200 Subject: samterm: Add line wrapping for LINESTART/LINEEND, ctrl+a and ctrl+e. --- src/cmd/samterm/main.c | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'src/cmd/samterm/main.c') diff --git a/src/cmd/samterm/main.c b/src/cmd/samterm/main.c index e12eb860..6ab0eedc 100644 --- a/src/cmd/samterm/main.c +++ b/src/cmd/samterm/main.c @@ -665,12 +665,21 @@ type(Flayer *l, int res) /* what a bloody mess this is */ center(l, t->rasp.nrunes); }else if(c == LINESTART || c == LINEEND){ flushtyping(1); - if(c == LINESTART) - while(a > 0 && raspc(&t->rasp, a-1)!='\n') - a--; - else - while(a < t->rasp.nrunes && raspc(&t->rasp, a)!='\n') + if(c == LINESTART) { + if (a > 0 && raspc(&t->rasp, a-1)=='\n') + a--; + else { + while(a > 0 && raspc(&t->rasp, a-1)!='\n') + a--; + } + }else{ + if(a < t->rasp.nrunes && raspc(&t->rasp, a)=='\n') a++; + else { + while(a < t->rasp.nrunes && raspc(&t->rasp, a)!='\n') + a++; + } + } l->p0 = l->p1 = a; for(l=t->l; l<&t->l[NL]; l++) if(l->textfn) -- cgit v1.2.3