add: if(tPtr->tpos == 1) x += tb->sections[0].w;
context: updateCursorPosition(Text *tPtr){    TextBlock *tb = NULL;    int x, y, h, s;    if(tPtr->flags.needsLayOut)        layOutDocument(tPtr);    if (! (tb = tPtr->currentTextBlock)) {        if (! (tb = tPtr->firstTextBlock)) {            WMFont *font = tPtr->dFont;            tPtr->tpos = 0;            tPtr->cursor.h = font->height + abs(font->height-font->y);             tPtr->cursor.y = 2;            tPtr->cursor.x = 2;            return;        }    }   if(tb->blank) {       tPtr->tpos = 0;      y = tb->sections[0].y;      h = tb->sections[0].h;      x = tb->sections[0].x;    } else if(tb->graphic) {        y = tb->sections[0].y;        h = tb->sections[0].h;        x = tb->sections[0].x;    } else {        if(tPtr->tpos > tb->used)            tPtr->tpos = tb->used;        for(s=0; s<tb->nsections-1; s++) {            if(tPtr->tpos >= tb->sections[s].begin                && tPtr->tpos <= tb->sections[s].end)                break;        }           y = tb->sections[s]._y;       h = tb->sections[s].h;       x = tb->sections[s].x + WMWidthOfString(           (tPtr->flags.monoFont?tPtr->dFont:tb->d.font),            &tb->text[tb->sections[s].begin],            tPtr->tpos - tb->sections[s].begin);    }    tPtr->cursor.y = y;    tPtr->cursor.h = h;    tPtr->cursor.x = x;/* scroll the bars if the cursor is not visible */    if(tPtr->flags.editable && tPtr->cursor.x != -23) {         if(tPtr->cursor.y+tPtr->cursor.h             > tPtr->vpos+tPtr->visible.y+tPtr->visible.h) {             tPtr->vpos +=                 (tPtr->cursor.y+tPtr->cursor.h+10                - (tPtr->vpos+tPtr->visible.y+tPtr->visible.h));        } else if(tPtr->cursor.y < tPtr->vpos+tPtr->visible.y) {             tPtr->vpos -= (tPtr->vpos+tPtr->visible.y-tPtr->cursor.y);        }                }    updateScrollers(tPtr);}