Running texconfig breaks backspace in Bash/MinTTY
Thomas Wolff
towo@towo.net
Wed Mar 16 22:11:00 GMT 2016
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
More information about the Cygwin
mailing list