mirror of
https://github.com/tmux/tmux.git
synced 2026-07-22 16:52:42 +00:00
Add vertical bar next to expanded lines.
This commit is contained in:
@@ -34,8 +34,6 @@ static const struct tty_acs_entry tty_acs_table[] = {
|
||||
{ '-', "\342\206\221" }, /* arrow pointing up */
|
||||
{ '.', "\342\206\223" }, /* arrow pointing down */
|
||||
{ '0', "\342\226\256" }, /* solid square block */
|
||||
{ '>', "\342\206\222" }, /* arrow pointing right */
|
||||
{ 'V', "\342\206\223" }, /* arrow pointing down */
|
||||
{ '`', "\342\227\206" }, /* diamond */
|
||||
{ 'a', "\342\226\222" }, /* checker board (stipple) */
|
||||
{ 'b', "\342\220\211" },
|
||||
|
||||
@@ -6081,18 +6081,33 @@ window_copy_write_line(struct window_mode_entry *wme,
|
||||
}
|
||||
if (gutter_width != 0) {
|
||||
struct grid_cell control_gc;
|
||||
struct window_copy_line *line, *next;
|
||||
char control = ' ';
|
||||
|
||||
if (data->lines != NULL && backing_y < data->line_count &&
|
||||
data->lines[backing_y].flags & WINDOW_COPY_LINE_CONTROL) {
|
||||
if (data->lines[backing_y].flags &
|
||||
line = NULL;
|
||||
if (data->lines != NULL && backing_y < data->line_count)
|
||||
line = &data->lines[backing_y];
|
||||
if (line != NULL &&
|
||||
line->flags & WINDOW_COPY_LINE_CONTROL) {
|
||||
if (line->flags &
|
||||
WINDOW_COPY_LINE_INITIAL)
|
||||
control = data->top_output ? '>' : 'V';
|
||||
control = data->top_output ? '+' : '-';
|
||||
else if (data->outputs[
|
||||
data->lines[backing_y].output_line])
|
||||
control = '>';
|
||||
line->output_line])
|
||||
control = '+';
|
||||
else
|
||||
control = 'V';
|
||||
control = '-';
|
||||
} else if (line != NULL &&
|
||||
line->flags & WINDOW_COPY_LINE_MEMBER) {
|
||||
next = NULL;
|
||||
if (backing_y + 1 < data->line_count)
|
||||
next = &data->lines[backing_y + 1];
|
||||
if (next == NULL ||
|
||||
~(next->flags) & WINDOW_COPY_LINE_MEMBER ||
|
||||
next->output_line != line->output_line)
|
||||
control = 'm'; /* ACS L character */
|
||||
else
|
||||
control = 'x'; /* ACS | character */
|
||||
}
|
||||
screen_write_cursormove(ctx, line_width, py, 0);
|
||||
screen_write_putc(ctx, current ? &cur_ln_gc : &ln_gc, ' ');
|
||||
@@ -6101,7 +6116,8 @@ window_copy_write_line(struct window_mode_entry *wme,
|
||||
else {
|
||||
memcpy(&control_gc, current ? &cur_ln_gc : &ln_gc,
|
||||
sizeof control_gc);
|
||||
control_gc.attr |= GRID_ATTR_CHARSET;
|
||||
if (control == 'x' || control == 'm')
|
||||
control_gc.attr |= GRID_ATTR_CHARSET;
|
||||
screen_write_putc(ctx, &control_gc, control);
|
||||
}
|
||||
screen_write_putc(ctx, current ? &cur_ln_gc : &ln_gc, ' ');
|
||||
|
||||
Reference in New Issue
Block a user