Bug 136336 - [termcap] [patch] missing entry for "center of keypad" in xterm record
Summary: [termcap] [patch] missing entry for "center of keypad" in xterm record
Status: Open
Alias: None
Product: Base System
Classification: Unclassified
Component: conf (show other bugs)
Version: 8.0-CURRENT
Hardware: Any Any
: Normal Affects Some People
Assignee: freebsd-bugs (Nobody)
URL:
Keywords: patch
Depends on:
Blocks:
 
Reported: 2009-07-05 08:00 UTC by GNATS administrator
Modified: 2022-10-02 06:46 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description GNATS administrator freebsd_committer freebsd_triage 2009-07-05 08:00:06 UTC
Under syscons with and without GNU screen center of keypad (produces "5" with numlock) generates \E[E sequence that matches key_b2 capability in cons25 record. The same is true for plain xterm with xterm record. However, with screen center of keypad generates not \E[E but \EOE sequence. This sequence goes like the rest keypad sequences, e.g. ku: \E[A -> \EOA; kl: \E[C -> \EOC. One can enforce xterm to produce what it sees in termcap by `XTerm.keyboardType: tcap' resource. So you have correct mapping again. But this doesn't work because there is *no* entry for \EOE. So you get unchanged \E[E.

Fix: Workaround: add `termcapinfo xterm* K2=\EOE' to ~/.screenrc. This way one can use termcap binding instead of raw sequence, e.g.
$ screen -X bindkey -k K2 at xmp stuff " "

Another workaround: add :K2=\EOE: to xterm-xfree86 record in /etc/termcap



This one fixes GNU screen but not xterm `-kt tcap'.--uN3HJfJUSX2yOowaziaAjkPWYJ2T9YOkpkxqIjD2XPQioRb2
Content-Type: text/plain; name="termcap.src.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="termcap.src.diff"

Index: share/termcap/termcap.src
===================================================================
--- share/termcap/termcap.src	(revision 195339)
+++ share/termcap/termcap.src	(working copy)
@@ -2809,7 +2809,7 @@ xterm-xfree86|XFree86 xterm:\
 	:k9=\E[20~:k;=\E[21~:F1=\E[23~:F2=\E[24~:\
 	:@7=\EOF:@8=\EOM:kI=\E[2~:\
 	:kh=\EOH:kP=\E[5~:kN=\E[6~:\
-	:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:Km=\E[M:tc=xterm-basic:
+	:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:K2=\EOE:Km=\E[M:tc=xterm-basic:
 #
 # This chunk is used for building the VT220/Sun/PC keyboard variants.
 xterm-basic|xterm common (XFree86):\
How-To-Repeat: 1. $ xterm -kt tcap
2. turn off numlock
3. type Ctrl+V "center key" -> \E[E

It should be \EOE or whatever and present in termcap file for xterm record.
Comment 1 Eitan Adler freebsd_committer freebsd_triage 2017-12-31 08:01:22 UTC
For bugs matching the following criteria:

Status: In Progress Changed: (is less than) 2014-06-01

Reset to default assignee and clear in-progress tags.

Mail being skipped