public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: Andy Koppe <andy.koppe@gmail.com>
To: cygwin@cygwin.com
Subject: Re: 1.7.3: Backspace key not working in GNU screen.
Date: Sat, 10 Apr 2010 21:09:00 -0000	[thread overview]
Message-ID: <i2t416096c61004101409ka5c18517obfc3a09e284a0e98@mail.gmail.com> (raw)
In-Reply-To: <20100410181700.GA7321@ednor.casa.cgf.cx>

Christopher Faylor wrote:
> I'm not 100% sure that this is the right fix but the new snapshot at
> least works around the problem.

Thanks.

> The problem is that screen explicitly sets VERASE to 0.  I believe that
> it does that to mean "there is really no erase character since I'm
> handling that".

You're right. Zero is the value of the _POSIX_VDISABLE constant for
disabling special characters. Therefore, using c_cc[VERASE] as the
backspace keycode was a bad idea all along. Sorry for suggesting it in
the first place.

> That should not cause Cygwin to send a null character.
> I think it should probably just send the default \177 character.

Makes sense given the botched design, but of course it does mean that
the user's backspace keycode setting is ignored. Also, 'screen' would
be expecting what was set in c_cc[VERASE] as the backspace keycode.

I can think of two ways to fix the design. One would be to introduce a
CYGWIN flag for switching from the default ^? to ^H, named something
like 'backspace_sends_bs', 'legacy_bs' or 'bs_is_ctrl_h'. Another
would be to implement the DECBKM ("DEC Backarrow Key Mode") control
sequence for the purpose, which is also supported by xterm and mintty:

\e[?67h  Backspace key sends ^H
\e[?67l  Backspace key sends ^?

Andy

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

  reply	other threads:[~2010-04-10 21:09 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <u2v49e721a81004081305q61e00044hba10b82e6900aa3d@mail.gmail.com>
2010-04-08 20:08 ` Al G.
2010-04-08 20:41   ` Larry Hall (Cygwin)
2010-04-10  9:31   ` Andy Koppe
2010-04-10 14:08     ` Christopher Faylor
2010-04-10 16:00       ` Andy Koppe
2010-04-10 16:16         ` Christopher Faylor
2010-04-10 17:36           ` Christopher Faylor
2010-04-10 18:17             ` Christopher Faylor
2010-04-10 21:09               ` Andy Koppe [this message]
2010-04-11  2:11                 ` Christopher Faylor
2010-04-11  9:33                 ` Corinna Vinschen
2010-04-11 12:28                   ` Corinna Vinschen
2010-04-11 14:39                     ` Andrew Schulman
2010-04-11 14:50                       ` Andy Koppe
2010-04-11 14:47                     ` Andy Koppe
2010-04-09 16:30 Al G.
2010-04-09 19:16 ` Larry Hall (Cygwin)
2010-04-12 12:37 Al G.
2010-04-12 13:28 ` Larry Hall (Cygwin)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=i2t416096c61004101409ka5c18517obfc3a09e284a0e98@mail.gmail.com \
    --to=andy.koppe@gmail.com \
    --cc=cygwin@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).