+ wwinschar(w, w->ww_cur.r, w->ww_cur.c,
+ *p++, w->ww_modes);
+ goto right;
+ }
+
+ bp = &w->ww_buf[w->ww_cur.r][w->ww_cur.c];
+ i = w->ww_cur.c;
+ while (i < w->ww_w.r && p < q)
+ if (!*p && r) {
+ p = r;
+ q = s;
+ r = 0;
+ } else if (*p == '\t') {
+ register tmp = 8 - (i - w->ww_w.l & 7);
+ p++;
+ i += tmp;
+ bp += tmp;
+ } else if (isprt(*p)) {
+ bp++->c_w = *p++
+ | w->ww_modes << WWC_MSHIFT;
+ i++;
+ } else if (w->ww_unctrl && isunctrl(*p)) {
+ r = p + 1;
+ s = q;
+ p = unctrl(*p);
+ q = p + 10;
+ } else
+ break;
+ col = MAX(w->ww_cur.c, w->ww_i.l);
+ col1 = MIN(i, w->ww_i.r);
+ w->ww_cur.c = i;
+ if (w->ww_cur.r >= w->ww_i.t
+ && w->ww_cur.r < w->ww_i.b) {
+ register union ww_char *ns = wwns[w->ww_cur.r];
+ register char *smap = &wwsmap[w->ww_cur.r][col];
+ register char *win = w->ww_win[w->ww_cur.r];
+ int nchanged = 0;
+
+ bp = w->ww_buf[w->ww_cur.r];
+ for (i = col; i < col1; i++)