=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/tty.c,v retrieving revision 1.429 retrieving revision 1.430 diff -u -r1.429 -r1.430 --- src/usr.bin/tmux/tty.c 2023/04/25 09:24:44 1.429 +++ src/usr.bin/tmux/tty.c 2023/04/25 09:31:50 1.430 @@ -1,4 +1,4 @@ -/* $OpenBSD: tty.c,v 1.429 2023/04/25 09:24:44 nicm Exp $ */ +/* $OpenBSD: tty.c,v 1.430 2023/04/25 09:31:50 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -405,7 +405,7 @@ if (tcsetattr(c->fd, TCSANOW, &tty->tio) == -1) return; - tty_raw(tty, tty_term_string2(tty->term, TTYC_CSR, 0, ws.ws_row - 1)); + tty_raw(tty, tty_term_string_ii(tty->term, TTYC_CSR, 0, ws.ws_row - 1)); if (tty_acs_needed(tty)) tty_raw(tty, tty_term_string(tty->term, TTYC_RMACS)); tty_raw(tty, tty_term_string(tty->term, TTYC_SGR0)); @@ -415,7 +415,7 @@ if (tty_term_has(tty->term, TTYC_SE)) tty_raw(tty, tty_term_string(tty->term, TTYC_SE)); else if (tty_term_has(tty->term, TTYC_SS)) - tty_raw(tty, tty_term_string1(tty->term, TTYC_SS, 0)); + tty_raw(tty, tty_term_string_i(tty->term, TTYC_SS, 0)); } if (tty->ccolour != -1) tty_raw(tty, tty_term_string(tty->term, TTYC_CR)); @@ -514,42 +514,42 @@ } void -tty_putcode1(struct tty *tty, enum tty_code_code code, int a) +tty_putcode_i(struct tty *tty, enum tty_code_code code, int a) { if (a < 0) return; - tty_puts(tty, tty_term_string1(tty->term, code, a)); + tty_puts(tty, tty_term_string_i(tty->term, code, a)); } void -tty_putcode2(struct tty *tty, enum tty_code_code code, int a, int b) +tty_putcode_ii(struct tty *tty, enum tty_code_code code, int a, int b) { if (a < 0 || b < 0) return; - tty_puts(tty, tty_term_string2(tty->term, code, a, b)); + tty_puts(tty, tty_term_string_ii(tty->term, code, a, b)); } void -tty_putcode3(struct tty *tty, enum tty_code_code code, int a, int b, int c) +tty_putcode_iii(struct tty *tty, enum tty_code_code code, int a, int b, int c) { if (a < 0 || b < 0 || c < 0) return; - tty_puts(tty, tty_term_string3(tty->term, code, a, b, c)); + tty_puts(tty, tty_term_string_iii(tty->term, code, a, b, c)); } void -tty_putcode_ptr1(struct tty *tty, enum tty_code_code code, const void *a) +tty_putcode_s(struct tty *tty, enum tty_code_code code, const char *a) { if (a != NULL) - tty_puts(tty, tty_term_ptr1(tty->term, code, a)); + tty_puts(tty, tty_term_string_s(tty->term, code, a)); } void -tty_putcode_ptr2(struct tty *tty, enum tty_code_code code, const void *a, - const void *b) +tty_putcode_ss(struct tty *tty, enum tty_code_code code, const char *a, + const char *b) { if (a != NULL && b != NULL) - tty_puts(tty, tty_term_ptr2(tty->term, code, a, b)); + tty_puts(tty, tty_term_string_ss(tty->term, code, a, b)); } static void @@ -611,7 +611,7 @@ * it works on sensible terminals as well. */ if (tty->term->flags & TERM_NOAM) - tty_putcode2(tty, TTYC_CUP, tty->cy, tty->cx); + tty_putcode_ii(tty, TTYC_CUP, tty->cy, tty->cx); } else tty->cx++; } @@ -690,7 +690,7 @@ else { colour_split_rgb(c, &r, &g, &b); xsnprintf(s, sizeof s, "rgb:%02hhx/%02hhx/%02hhx", r, g, b); - tty_putcode_ptr1(tty, TTYC_CS, s); + tty_putcode_s(tty, TTYC_CS, s); } tty->ccolour = c; } @@ -751,7 +751,7 @@ if (tty_term_has(tty->term, TTYC_SE)) tty_putcode(tty, TTYC_SE); else - tty_putcode1(tty, TTYC_SS, 0); + tty_putcode_i(tty, TTYC_SS, 0); } if (cmode & (MODE_CURSOR_BLINKING|MODE_CURSOR_VERY_VISIBLE)) tty_putcode(tty, TTYC_CVVIS); @@ -759,27 +759,27 @@ case SCREEN_CURSOR_BLOCK: if (tty_term_has(tty->term, TTYC_SS)) { if (cmode & MODE_CURSOR_BLINKING) - tty_putcode1(tty, TTYC_SS, 1); + tty_putcode_i(tty, TTYC_SS, 1); else - tty_putcode1(tty, TTYC_SS, 2); + tty_putcode_i(tty, TTYC_SS, 2); } else if (cmode & MODE_CURSOR_BLINKING) tty_putcode(tty, TTYC_CVVIS); break; case SCREEN_CURSOR_UNDERLINE: if (tty_term_has(tty->term, TTYC_SS)) { if (cmode & MODE_CURSOR_BLINKING) - tty_putcode1(tty, TTYC_SS, 3); + tty_putcode_i(tty, TTYC_SS, 3); else - tty_putcode1(tty, TTYC_SS, 4); + tty_putcode_i(tty, TTYC_SS, 4); } else if (cmode & MODE_CURSOR_BLINKING) tty_putcode(tty, TTYC_CVVIS); break; case SCREEN_CURSOR_BAR: if (tty_term_has(tty->term, TTYC_SS)) { if (cmode & MODE_CURSOR_BLINKING) - tty_putcode1(tty, TTYC_SS, 5); + tty_putcode_i(tty, TTYC_SS, 5); else - tty_putcode1(tty, TTYC_SS, 6); + tty_putcode_i(tty, TTYC_SS, 6); } else if (cmode & MODE_CURSOR_BLINKING) tty_putcode(tty, TTYC_CVVIS); break; @@ -835,7 +835,7 @@ enum tty_code_code code1, u_int n) { if (tty_term_has(tty->term, code)) - tty_putcode1(tty, code, n); + tty_putcode_i(tty, code, n); else { while (n-- > 0) tty_putcode(tty, code1); @@ -1124,7 +1124,7 @@ /* Section of line. Use ECH if possible. */ if (tty_term_has(tty->term, TTYC_ECH)) { tty_cursor(tty, px, py); - tty_putcode1(tty, TTYC_ECH, nx); + tty_putcode_i(tty, TTYC_ECH, nx); return; } } @@ -1265,7 +1265,7 @@ tty_term_has(tty->term, TTYC_INDN)) { tty_region(tty, py, py + ny - 1); tty_margin_off(tty); - tty_putcode1(tty, TTYC_INDN, ny); + tty_putcode_i(tty, TTYC_INDN, ny); return; } @@ -1280,7 +1280,7 @@ tty_term_has(tty->term, TTYC_INDN)) { tty_region(tty, py, py + ny - 1); tty_margin(tty, px, px + nx - 1); - tty_putcode1(tty, TTYC_INDN, ny); + tty_putcode_i(tty, TTYC_INDN, ny); return; } } @@ -1587,7 +1587,7 @@ if (tty_term_has(tty->term, TTYC_SYNC)) { log_debug("%s sync start", tty->client->name); - tty_putcode1(tty, TTYC_SYNC, 1); + tty_putcode_i(tty, TTYC_SYNC, 1); } } @@ -1602,7 +1602,7 @@ if (tty_term_has(tty->term, TTYC_SYNC)) { log_debug("%s sync end", tty->client->name); - tty_putcode1(tty, TTYC_SYNC, 2); + tty_putcode_i(tty, TTYC_SYNC, 2); } } @@ -1820,7 +1820,7 @@ if (tty_term_has(tty->term, TTYC_RI)) tty_putcode(tty, TTYC_RI); else - tty_putcode1(tty, TTYC_RIN, 1); + tty_putcode_i(tty, TTYC_RIN, 1); } void @@ -1901,7 +1901,7 @@ tty_cursor(tty, 0, 0); else tty_cursor(tty, 0, tty->cy); - tty_putcode1(tty, TTYC_INDN, ctx->num); + tty_putcode_i(tty, TTYC_INDN, ctx->num); } } @@ -1932,7 +1932,7 @@ tty_cursor_pane(tty, ctx, ctx->ocx, ctx->orupper); if (tty_term_has(tty->term, TTYC_RIN)) - tty_putcode1(tty, TTYC_RIN, ctx->num); + tty_putcode_i(tty, TTYC_RIN, ctx->num); else { for (i = 0; i < ctx->num; i++) tty_putcode(tty, TTYC_RI); @@ -2137,7 +2137,7 @@ b64_ntop(buf, len, encoded, size); tty->flags |= TTY_NOBLOCK; - tty_putcode_ptr2(tty, TTYC_MS, flags, encoded); + tty_putcode_ss(tty, TTYC_MS, flags, encoded); free(encoded); } @@ -2210,7 +2210,7 @@ if (!grid_cells_equal(gc, &grid_default_cell)) { if (gc->link != 0) - tty_putcode_ptr2(tty, TTYC_HLS, "", ""); + tty_putcode_ss(tty, TTYC_HLS, "", ""); if ((gc->attr & GRID_ATTR_CHARSET) && tty_acs_needed(tty)) tty_putcode(tty, TTYC_RMACS); tty_putcode(tty, TTYC_SGR0); @@ -2285,7 +2285,7 @@ tty_cursor(tty, 0, tty->cy); } - tty_putcode2(tty, TTYC_CSR, tty->rupper, tty->rlower); + tty_putcode_ii(tty, TTYC_CSR, tty->rupper, tty->rlower); tty->cx = tty->cy = UINT_MAX; } @@ -2313,7 +2313,7 @@ if (tty->rleft == rleft && tty->rright == rright) return; - tty_putcode2(tty, TTYC_CSR, tty->rupper, tty->rlower); + tty_putcode_ii(tty, TTYC_CSR, tty->rupper, tty->rlower); tty->rleft = rleft; tty->rright = rright; @@ -2321,7 +2321,7 @@ if (rleft == 0 && rright == tty->sx - 1) tty_putcode(tty, TTYC_CLMG); else - tty_putcode2(tty, TTYC_CMG, rleft, rright); + tty_putcode_ii(tty, TTYC_CMG, rleft, rright); tty->cx = tty->cy = UINT_MAX; } @@ -2431,7 +2431,7 @@ * the cursor with CUB/CUF. */ if ((u_int) abs(change) > cx && tty_term_has(term, TTYC_HPA)) { - tty_putcode1(tty, TTYC_HPA, cx); + tty_putcode_i(tty, TTYC_HPA, cx); goto out; } else if (change > 0 && tty_term_has(term, TTYC_CUB) && @@ -2441,12 +2441,12 @@ tty_putcode(tty, TTYC_CUB1); goto out; } - tty_putcode1(tty, TTYC_CUB, change); + tty_putcode_i(tty, TTYC_CUB, change); goto out; } else if (change < 0 && tty_term_has(term, TTYC_CUF) && !tty_use_margin(tty)) { - tty_putcode1(tty, TTYC_CUF, -change); + tty_putcode_i(tty, TTYC_CUF, -change); goto out; } } else if (cx == thisx) { @@ -2479,21 +2479,21 @@ (change < 0 && cy - change > tty->rlower) || (change > 0 && cy - change < tty->rupper)) { if (tty_term_has(term, TTYC_VPA)) { - tty_putcode1(tty, TTYC_VPA, cy); + tty_putcode_i(tty, TTYC_VPA, cy); goto out; } } else if (change > 0 && tty_term_has(term, TTYC_CUU)) { - tty_putcode1(tty, TTYC_CUU, change); + tty_putcode_i(tty, TTYC_CUU, change); goto out; } else if (change < 0 && tty_term_has(term, TTYC_CUD)) { - tty_putcode1(tty, TTYC_CUD, -change); + tty_putcode_i(tty, TTYC_CUD, -change); goto out; } } absolute: /* Absolute movement. */ - tty_putcode2(tty, TTYC_CUP, cy, cx); + tty_putcode_ii(tty, TTYC_CUP, cy, cx); out: tty->cx = cx; @@ -2514,9 +2514,9 @@ return; if (gc->link == 0 || !hyperlinks_get(hl, gc->link, &uri, NULL, &id)) - tty_putcode_ptr2(tty, TTYC_HLS, "", ""); + tty_putcode_ss(tty, TTYC_HLS, "", ""); else - tty_putcode_ptr2(tty, TTYC_HLS, id, uri); + tty_putcode_ss(tty, TTYC_HLS, id, uri); } void @@ -2593,13 +2593,13 @@ !tty_term_has(tty->term, TTYC_SMULX)) tty_putcode(tty, TTYC_SMUL); else if (changed & GRID_ATTR_UNDERSCORE_2) - tty_putcode1(tty, TTYC_SMULX, 2); + tty_putcode_i(tty, TTYC_SMULX, 2); else if (changed & GRID_ATTR_UNDERSCORE_3) - tty_putcode1(tty, TTYC_SMULX, 3); + tty_putcode_i(tty, TTYC_SMULX, 3); else if (changed & GRID_ATTR_UNDERSCORE_4) - tty_putcode1(tty, TTYC_SMULX, 4); + tty_putcode_i(tty, TTYC_SMULX, 4); else if (changed & GRID_ATTR_UNDERSCORE_5) - tty_putcode1(tty, TTYC_SMULX, 5); + tty_putcode_i(tty, TTYC_SMULX, 5); } if (changed & GRID_ATTR_BLINK) tty_putcode(tty, TTYC_BLINK); @@ -2656,14 +2656,14 @@ if (have_ax) tty_puts(tty, "\033[39m"); else if (tc->fg != 7) - tty_putcode1(tty, TTYC_SETAF, 7); + tty_putcode_i(tty, TTYC_SETAF, 7); tc->fg = gc->fg; } if (COLOUR_DEFAULT(gc->bg) && !COLOUR_DEFAULT(tc->bg)) { if (have_ax) tty_puts(tty, "\033[49m"); else if (tc->bg != 0) - tty_putcode1(tty, TTYC_SETAB, 0); + tty_putcode_i(tty, TTYC_SETAB, 0); tc->bg = gc->bg; } } @@ -2833,12 +2833,12 @@ xsnprintf(s, sizeof s, "\033[%dm", gc->fg); tty_puts(tty, s); } else - tty_putcode1(tty, TTYC_SETAF, gc->fg - 90 + 8); + tty_putcode_i(tty, TTYC_SETAF, gc->fg - 90 + 8); goto save; } /* Otherwise set the foreground colour. */ - tty_putcode1(tty, TTYC_SETAF, gc->fg); + tty_putcode_i(tty, TTYC_SETAF, gc->fg); save: /* Save the new values in the terminal current cell. */ @@ -2865,12 +2865,12 @@ xsnprintf(s, sizeof s, "\033[%dm", gc->bg + 10); tty_puts(tty, s); } else - tty_putcode1(tty, TTYC_SETAB, gc->bg - 90 + 8); + tty_putcode_i(tty, TTYC_SETAB, gc->bg - 90 + 8); goto save; } /* Otherwise set the background colour. */ - tty_putcode1(tty, TTYC_SETAB, gc->bg); + tty_putcode_i(tty, TTYC_SETAB, gc->bg); save: /* Save the new values in the terminal current cell. */ @@ -2906,10 +2906,10 @@ * non-RGB version may be wrong. */ if (tty_term_has(tty->term, TTYC_SETULC)) - tty_putcode1(tty, TTYC_SETULC, c); + tty_putcode_i(tty, TTYC_SETULC, c); else if (tty_term_has(tty->term, TTYC_SETAL) && tty_term_has(tty->term, TTYC_RGB)) - tty_putcode1(tty, TTYC_SETAL, c); + tty_putcode_i(tty, TTYC_SETAL, c); save: /* Save the new values in the terminal current cell. */ @@ -2923,18 +2923,18 @@ if (colour & COLOUR_FLAG_256) { if (*type == '3' && tty_term_has(tty->term, TTYC_SETAF)) - tty_putcode1(tty, TTYC_SETAF, colour & 0xff); + tty_putcode_i(tty, TTYC_SETAF, colour & 0xff); else if (tty_term_has(tty->term, TTYC_SETAB)) - tty_putcode1(tty, TTYC_SETAB, colour & 0xff); + tty_putcode_i(tty, TTYC_SETAB, colour & 0xff); return (0); } if (colour & COLOUR_FLAG_RGB) { colour_split_rgb(colour & 0xffffff, &r, &g, &b); if (*type == '3' && tty_term_has(tty->term, TTYC_SETRGBF)) - tty_putcode3(tty, TTYC_SETRGBF, r, g, b); + tty_putcode_iii(tty, TTYC_SETRGBF, r, g, b); else if (tty_term_has(tty->term, TTYC_SETRGBB)) - tty_putcode3(tty, TTYC_SETRGBB, r, g, b); + tty_putcode_iii(tty, TTYC_SETRGBB, r, g, b); return (0); } @@ -3018,7 +3018,7 @@ if ((~tty->flags & TTY_STARTED) || (tty->flags & TTY_OSC52QUERY)) return; - tty_putcode_ptr2(tty, TTYC_MS, "", "?"); + tty_putcode_ss(tty, TTYC_MS, "", "?"); tty->flags |= TTY_OSC52QUERY; evtimer_set(&tty->clipboard_timer, tty_clipboard_query_callback, tty);