mirror of
https://github.com/tmux/tmux.git
synced 2025-09-02 13:37:12 +00:00
Some fixes for searching for tabs, from Alexander Arch.
This commit is contained in:
@ -377,7 +377,7 @@ screen_write_strlen(const char *fmt, ...)
|
||||
if (more == UTF8_DONE)
|
||||
size += ud.width;
|
||||
} else {
|
||||
if (*ptr > 0x1f && *ptr < 0x7f)
|
||||
if (*ptr == '\t' || (*ptr > 0x1f && *ptr < 0x7f))
|
||||
size++;
|
||||
ptr++;
|
||||
}
|
||||
@ -547,7 +547,7 @@ screen_write_vnputs(struct screen_write_ctx *ctx, ssize_t maxlen,
|
||||
else if (*ptr == '\n') {
|
||||
screen_write_linefeed(ctx, 0, 8);
|
||||
screen_write_carriagereturn(ctx);
|
||||
} else if (*ptr > 0x1f && *ptr < 0x7f) {
|
||||
} else if (*ptr == '\t' || (*ptr > 0x1f && *ptr < 0x7f)) {
|
||||
size++;
|
||||
screen_write_putc(ctx, &gc, *ptr);
|
||||
}
|
||||
@ -2143,7 +2143,17 @@ screen_write_overwrite(struct screen_write_ctx *ctx, struct grid_cell *gc,
|
||||
break;
|
||||
log_debug("%s: overwrite at %u,%u", __func__, xx,
|
||||
s->cy);
|
||||
grid_view_set_cell(gd, xx, s->cy, &grid_default_cell);
|
||||
if (gc->flags & GRID_FLAG_TAB) {
|
||||
memcpy(&tmp_gc, gc, sizeof tmp_gc);
|
||||
memset(tmp_gc.data.data, 0,
|
||||
sizeof tmp_gc.data.data);
|
||||
*tmp_gc.data.data = ' ';
|
||||
tmp_gc.data.width = tmp_gc.data.size =
|
||||
tmp_gc.data.have = 1;
|
||||
grid_view_set_cell(gd, xx, s->cy, &tmp_gc);
|
||||
} else
|
||||
grid_view_set_cell(gd, xx, s->cy,
|
||||
&grid_default_cell);
|
||||
done = 1;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user