ports/153942: Tmux patch breaks backspace in tmux command mode
Anonymous
swell.k at gmail.com
Thu Jan 13 04:40:10 UTC 2011
The following reply was made to PR ports/153942; it has been noted by GNATS.
From: Anonymous <swell.k at gmail.com>
To: Brandon Low <lostlogic at lostlogicx.com>
Cc: bug-followup at freebsd.org
Subject: Re: ports/153942: Tmux patch breaks backspace in tmux command mode
Date: Thu, 13 Jan 2011 07:32:05 +0300
Brandon Low <lostlogic at lostlogicx.com> writes:
> Here's an email that I received from the maintainer of tmux about this
> issue, indicating that it should be safe to remove the patch nowadays:
>
> the reason they did that is because at least some freebsd versions have
> xterm etc generate ^H by default and have ^H as verase in termios (stty)
>
> tmux always sends ^? as backspace to programs inside, but earlier
> versions did not change the termios inside to set verase to ^?
>
> new versions do, so outside can have verase=^H, tmux will detect that is
> backspace (from termios) and translate it to ^? inside as well as
And this magic translation has a bug, you can't disable it. Run from
inside tmux
$ stty erase '^H'
then try to use backspace key or Ctrl-H in ncurses apps. It'd still
produce '^?'. That's because there's actually no way to type '^H'.
Any other erase character would work fine.
> setting verase to ^? in new windows so applications inside tmux use the
> right thing
>
> this is all because terminfo kbs is too unreliable and so many
> applications just blindly accept ^? anyway
'^H' is also a valid character for Ctrl-H. Without tty-keys.c patch
there is one keycode less as both Ctrl-H and Ctrl-? produce '^?'.
And any (default) keybinding with '^H' doesn't work.
>
> since your terminal on freebsd sends ^? (and termios is ^? too) either
> you're using a terminal which uses that by default, you changed the
> xterm deleteIsDEL property (like everyone else does), or freebsd changed
> their default
More information about the freebsd-ports-bugs
mailing list