This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Running texconfig breaks backspace in Bash/MinTTY


Am 16.03.2016 um 16:07 schrieb Ken Brown:
On 3/16/2016 10:00 AM, Adam Dinwoodie wrote:
On Wed, Mar 16, 2016 at 08:34:45AM -0400, Ken Brown wrote:
On 3/16/2016 7:45 AM, Adam Dinwoodie wrote:
Here's an interesting bug: normally in a Bash session in MinTTY,
backspace and Ctrl+H both delete the previous character, as expected.
However, after running texconfig and returning to the shell, both the
backspace key and Ctrl+H appear to just print "^H" to the terminal.

It looks like this is genuinely the terminal trying to render a
backspace character, rather than just backspacing, given the following:

     $ printf ^H | xxd
     00000000: 08                                       .

(To get that, I typed "printf {backspace} | xxd".)

It's not clear to me whether this is Bash, MinTTY or texconfig that's
misbehaving.  Ctrl+W to delete a word, Ctrl+R to get (for me) fzf's
history search, and using the up and down arrows to navigate history all
work.  Running Vim, opening a new Bash shell from within the duff one,
or SSHing to another box has Ctrl+H working just fine within that
process, but the bugged behaviour resumes when I return to the original
Bash shell.

I can't reproduce this on my system.  I tried 'texconfig --help' and
'texconfig conf'.  What's the precise texconfig command that you
used?

I'm just running `texconfig`, with no arguments.  There's a warning
prompt, that you press Enter to clear, then there's an interactive menu
that appears -- I'm assuming it's something about that interactive menu
that's causing the problem.

In the interactive case, texconfig calls texconfig-dialog, which calls dialog.

Turns out, after some digging, MinTTY's "Keys" > "Backspace sends ^H"
setting is critical here -- my .minttyrc has `BackspaceSendsBS=yes`, but
if I remove that line and restart MinTTY, everything works fine.  If I
add that setting to a fresh Cygwin install that contains only the Base
packages, texlive-collection-basic, and their dependencies, I can
reproduce the issue.

That probably explains why you can't reproduce it, but it still seems
like a bug -- I wouldn't expect backspace behaviour to change in that
fashion regardless of that bit of configuration.

So it appears to be a MinTTY/dialog issue.
Checking stty -a before and after texconfig reveals that texconfig mangles the stty erase setting and does not restore it.
That is clearly a bug of texconfig.
------
Thomas

--
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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]