From nobody Sun Feb 8 16:44:45 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4f8DFT5Myyz6RRrL for ; Sun, 08 Feb 2026 16:44:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4f8DFT4q52z3kww for ; Sun, 08 Feb 2026 16:44:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1770569085; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LaqBn6jyARAfUTNAQjTSlPuismD3Ic/OqCmoF7cgViQ=; b=mAMfh8M4hwY65FoOhPGAYQzcejP1B5lIYFGj97yhrX+DTN16NNg1M64dlODacR2/TgjySl I7QemMSPMgB7JvETlI7dyl3gTMpmQ0SR97JtfR/Wz9cBlwlmtAO/u2gU3sNEfFQDmCpJQc yoh9b6QhT5Ztl5uGDHaV9G1/LaxnjRlj+YfTqQYFqdzdy5sAAY+/81iwVbxnvozDR5DPFH d++X2oK6NCxpkIQFcz0LbIOt3m5AsojJfpmLpWROqyMLphB3F/x6mR97w2/iuIxpHuXXqs 53MMtf5gS2Nt/WXz+K9OAIbhuNKzlUK8G8zLCz4qwmzORQNJp7UVlROry9J40Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1770569085; a=rsa-sha256; cv=none; b=lS/kGLUxm1+4ePoe7krApkE7w8Z4adGLyKA3uHNEm4j3u4OYn/4QiAmCz0QLRUH6VGVPvH ZQrz09RlcdEbRC3UgoARMTFCy71QxxkYBoEGxQsRU+r3USQEq8fF47mw+ju3RP5/1SeO+7 YRHi+h6scHg21xp/D+A3c3Hu8KBhrZetPQqa5vi3YUovFksgC/DM0Rcrvg8nJv37XYyANP 2b0dBBt4c/bHv774tMtDQNjjT9lVHgkjAabgYXC3gLwFcWsxoDZplsBgUeeZ7bMxsiE9Xf 3+scq+Lc8srQRFskow6f2TNpumpZdYm2g1AVllCZtq1zjIiYhXC4fLXLfF/GOg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1770569085; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LaqBn6jyARAfUTNAQjTSlPuismD3Ic/OqCmoF7cgViQ=; b=ekceVHEzANj1q4m0GGk7TYbpcebaI8T6D/hipI0U56fBevhQxeaN79EowkTxbEgRmBxSWP Xf83i0gpWal7F/XH+ulNLGR8RUBs9HG0+1HLYc1/aZ44bbztOgB1r8nSAASz7xaS8iG82y 9QrGdbw0VzKB4q+f2Ne+Usv0+0utE6J6ru8TZOcR+XDhaoPJ6Ncdtl8gsr/R+2vQxK79X0 RvgbB9oQxNnTW7FNnsXrx0LFhT8CLDgI1wvljs+Kp4/WiPiFgLkg+5gNBPIYlffYfSNPd6 uHhY98dx9aLZsvap8TRbD0iiyDFNSMBNM/eb8VmFC2C1mtOcHwSMNURDD9BDQA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4f8DFT4Dx0zw4x for ; Sun, 08 Feb 2026 16:44:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 1ffa3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sun, 08 Feb 2026 16:44:45 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Nathaniel Braun From: Warner Losh Subject: git: 5fec99caff3a - main - vt: Fix handling of backtab List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5fec99caff3ac4f476bb88078ebf85fbecf6afb3 Auto-Submitted: auto-generated Date: Sun, 08 Feb 2026 16:44:45 +0000 Message-Id: <6988bd7d.1ffa3.54a47eed@gitrepo.freebsd.org> The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=5fec99caff3ac4f476bb88078ebf85fbecf6afb3 commit 5fec99caff3ac4f476bb88078ebf85fbecf6afb3 Author: Nathaniel Braun AuthorDate: 2026-01-17 17:14:42 +0000 Commit: Warner Losh CommitDate: 2026-02-08 16:44:42 +0000 vt: Fix handling of backtab PR: 292463 Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2002 --- sys/dev/vt/vt_core.c | 6 ++++++ sys/teken/teken.c | 4 ++++ sys/teken/teken.h | 2 ++ 3 files changed, 12 insertions(+) diff --git a/sys/dev/vt/vt_core.c b/sys/dev/vt/vt_core.c index fd18e85092db..b9159a73ad79 100644 --- a/sys/dev/vt/vt_core.c +++ b/sys/dev/vt/vt_core.c @@ -952,6 +952,9 @@ vt_processkey(keyboard_t *kbd, struct vt_device *vd, int c) VT_UNLOCK(vd); break; } + case BKEY | BTAB: /* Back tab (usually, shift+tab). */ + terminal_input_special(vw->vw_terminal, TKEY_BTAB); + break; case FKEY | F(1): case FKEY | F(2): case FKEY | F(3): case FKEY | F(4): case FKEY | F(5): case FKEY | F(6): case FKEY | F(7): case FKEY | F(8): case FKEY | F(9): @@ -1964,6 +1967,9 @@ vtterm_cngetc(struct terminal *tm) VTBUF_SLCK_DISABLE(&vw->vw_buf); } break; + case SPCLKEY | BTAB: /* Back tab (usually, shift+tab). */ + vw->vw_kbdsq = "\x1b[Z"; + break; /* XXX: KDB can handle history. */ case SPCLKEY | FKEY | F(50): /* Arrow up. */ vw->vw_kbdsq = "\x1b[A"; diff --git a/sys/teken/teken.c b/sys/teken/teken.c index b0161a2e3b20..a1522e00ecf7 100644 --- a/sys/teken/teken.c +++ b/sys/teken/teken.c @@ -703,6 +703,8 @@ static const char * const special_strings_cons25[] = { [TKEY_F7] = "\x1B[S", [TKEY_F8] = "\x1B[T", [TKEY_F9] = "\x1B[U", [TKEY_F10] = "\x1B[V", [TKEY_F11] = "\x1B[W", [TKEY_F12] = "\x1B[X", + + [TKEY_BTAB] = "\x1B[Z", }; static const char * const special_strings_ckeys[] = { @@ -726,6 +728,8 @@ static const char * const special_strings_normal[] = { [TKEY_F7] = "\x1B[18~", [TKEY_F8] = "\x1B[19~", [TKEY_F9] = "\x1B[20~", [TKEY_F10] = "\x1B[21~", [TKEY_F11] = "\x1B[23~", [TKEY_F12] = "\x1B[24~", + + [TKEY_BTAB] = "\x1B[Z", }; const char * diff --git a/sys/teken/teken.h b/sys/teken/teken.h index 38a85e80110e..c8c73db55f06 100644 --- a/sys/teken/teken.h +++ b/sys/teken/teken.h @@ -206,6 +206,8 @@ void teken_set_winsize_noreset(teken_t *, const teken_pos_t *); #define TKEY_F10 0x13 #define TKEY_F11 0x14 #define TKEY_F12 0x15 + +#define TKEY_BTAB 0x16 const char *teken_get_sequence(const teken_t *, unsigned int); /* Legacy features. */