CTRL-C on command line does not cancel current command

2020-05-08 Thread Paul Kelaita
Configuration Information [Automatically generated, do not change]:
Machine: i586
OS: linux-musl
Compiler: gcc
Compilation CFLAGS: -Os -fomit-frame-pointer -g -Wno-parentheses 
-Wno-format-security
uname output: Linux PuPadPro 3.2.0-ish iSH 1.0 (67) May  4 2020 00:20:06 i686 
Linux
Machine Type: i586-alpine-linux-musl

Bash Version: 5.0
Patch Level: 11
Release Status: release

Description:
CTRL-C works fine for anything run in the shell, however, the behavior 
while typing a command is wrong. The CTRL-C is ignored, and once Enter is hit, 
it appears that the first character is taken off the beginning of the command 
typed, and the rest is echoed back.  For example, if I type the command 'date' 
on the command line, but then hit CTRL-C after the 'e', nothing happens. But 
after I hit Enter, I get the shell error: 'bash: ate: command not found'

Repeat-By:
see description above

Fix:
[Description of how to fix the problem.  If you don't know a
fix for the problem, don't include this section.]




Re: CTRL-C on command line does not cancel current command

2020-05-08 Thread Chet Ramey
On 5/8/20 3:19 PM, Paul Kelaita wrote:

> Machine Type: i586-alpine-linux-musl
> 
> Bash Version: 5.0
> Patch Level: 11
> Release Status: release
> 
> Description:
>   CTRL-C works fine for anything run in the shell, however, the behavior 
> while typing a command is wrong. The CTRL-C is ignored, and once Enter is 
> hit, it appears that the first character is taken off the beginning of the 
> command typed, and the rest is echoed back.  For example, if I type the 
> command 'date' on the command line, but then hit CTRL-C after the 'e', 
> nothing happens. But after I hit Enter, I get the shell error: 'bash: ate: 
> command not found'

I can't reproduce this on Mac OS X or RHEL 7 with bash-5.0.17.


-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRUc...@case.eduhttp://tiswww.cwru.edu/~chet/



Re: CTRL-C on command line does not cancel current command

2020-05-08 Thread Paul Kelaita
Only seeing this on Alpine BusyBox (iSH) on iOS 13.x with either 5.0.11 or 
5.0.17

> On May 8, 2020, at 2:19 PM, Chet Ramey  wrote:
> 
> On 5/8/20 3:19 PM, Paul Kelaita wrote:
> 
>> Machine Type: i586-alpine-linux-musl
>> 
>> Bash Version: 5.0
>> Patch Level: 11
>> Release Status: release
>> 
>> Description:
>>CTRL-C works fine for anything run in the shell, however, the behavior 
>> while typing a command is wrong. The CTRL-C is ignored, and once Enter is 
>> hit, it appears that the first character is taken off the beginning of the 
>> command typed, and the rest is echoed back.  For example, if I type the 
>> command 'date' on the command line, but then hit CTRL-C after the 'e', 
>> nothing happens. But after I hit Enter, I get the shell error: 'bash: ate: 
>> command not found'
> 
> I can't reproduce this on Mac OS X or RHEL 7 with bash-5.0.17.
> 
> 
> -- 
> ``The lyf so short, the craft so long to lerne.'' - Chaucer
> ``Ars longa, vita brevis'' - Hippocrates
> Chet Ramey, UTech, CWRUc...@case.eduhttp://tiswww.cwru.edu/~chet/



Re: CTRL-C on command line does not cancel current command

2020-05-08 Thread Greg Wooledge
On Fri, May 08, 2020 at 02:26:34PM -0700, Paul Kelaita wrote:
> Only seeing this on Alpine BusyBox (iSH) on iOS 13.x with either 5.0.11 or 
> 5.0.17

Busybox is a shell, in addition to being other tools.  Perhaps you're
not even in bash at all?

What does "ps -p $$" say?  How about "set | grep BASH"?

If it turns out that you really are in bash, not in busybox, then we'd
need to know a bit more about your environment.  What kind of terminal
emulator are you in?  What does "stty -a" say?  Have you configured
readline (look for /etc/inputrc and ~/.inputrc files) in some nonstandard
way?



Re: CTRL-C on command line does not cancel current command

2020-05-08 Thread Paul Kelaita
Oh, it’s definitely bash.  Works nicely in iSH.  Sorry, I’m wondering if I 
should have taken this to the iSH forums, but it just seems like a bash issue.  
I can run sh, csh, tcsh, and they all handle CTRL-C fine on the command line.  
INTR is correct (see below), I’ve tried ‘stty sane’ and ‘stty reset’ to no 
avail.

I know it’s such a minor issue, but it’s one of those that keeps biting me 
throughout the day because of the way I’m trained.  I realize I can use CTRL-U, 
but...

Anyway, here is a snapshot of what you were asking.  I haven’t used readline 
much, if at all.

Thanks.
Paul



SHELL=/bin/bash
TERMCAP=SC|screen|VT 100/ANSI X3.64 virtual terminal:\
:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:bs:bt=\E[Z:\
:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:ct=\E[3g:\
:do=^J:nd=\E[C:pt:rc=\E8:rs=\Ec:sc=\E7:st=\EH:up=\EM:\
:le=^H:bl=^G:cr=^M:it#8:ho=\E[H:nw=\EE:ta=^I:is=\E)0:\
:li#64:co#161:am:xn:xv:LP:sr=\EM:al=\E[L:AL=\E[%dL:\
:cs=\E[%i%d;%dr:dl=\E[M:DL=\E[%dM:dc=\E[P:DC=\E[%dP:\
:im=\E[4h:ei=\E[4l:mi:IC=\E[%d@:ks=\E[?1h\E=:\
:ke=\E[?1l\E>:vi=\E[?25l:ve=\E[34h\E[?25h:vs=\E[34l:\
:ti=\E[?1049h:te=\E[?1049l:us=\E[4m:ue=\E[24m:so=\E[3m:\
:se=\E[23m:mb=\E[5m:md=\E[1m:mh=\E[2m:mr=\E[7m:\
:me=\E[m:ms:\
:Co#8:pa#64:AF=\E[3%dm:AB=\E[4%dm:op=\E[39;49m:AX:\
:vb=\Eg:G0:as=\E(0:ae=\E(B:\

:ac=\140\140aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~..--++,,hhII00:\
:po=\E[5i:pf=\E[4i:Km=\E[<:k0=\E[10~:k1=\EOP:k2=\EOQ:\
:k3=\EOR:k4=\EOS:k5=\E[15~:k6=\E[17~:k7=\E[18~:\
:k8=\E[19~:k9=\E[20~:k;=\E[21~:F1=\E[23~:F2=\E[24~:\
:F3=\E[1;2P:F4=\E[1;2Q:F5=\E[1;2R:F6=\E[1;2S:\
:F7=\E[15;2~:F8=\E[17;2~:F9=\E[18;2~:FA=\E[19;2~:\
:FB=\E[20;2~:FC=\E[21;2~:FD=\E[23;2~:FE=\E[24;2~:kb=^H:\
:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:kB=\E[Z:\
:kF=\E[1;2B:kR=\E[1;2A:*4=\E[3;2~:*7=\E[1;2F:#2=\E[1;2H:\
:#3=\E[2;2~:#4=\E[1;2D:%c=\E[6;2~:%e=\E[5;2~:%i=\E[1;2C:\
:kh=\E[1~:@1=\E[1~:kH=\E[4~:@7=\E[4~:kN=\E[6~:kP=\E[5~:\
:kI=\E[2~:kD=\E[3~:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:km:
WINDOW=3
EDITOR=vim
PWD=/home/paul
LOGNAME=paul
TZ=PST8PDT
HOME=/home/paul
TERM=screen
USER=paul
SHLVL=2
PAGER=less


speed 0 baud; rows 63; columns 161; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = ;
eol2 = ; swtch = ; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd -cmspar cs5 -hupcl -cstopb -cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff
-iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok echonl -noflsh -xcase -tostop -echoprt
echoctl -echoke -flusho -extproc


GNU bash, version 5.0.11(1)-release (i586-alpine-linux-musl)
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 







> On May 8, 2020, at 2:36 PM, Greg Wooledge  wrote:
> 
> On Fri, May 08, 2020 at 02:26:34PM -0700, Paul Kelaita wrote:
>> Only seeing this on Alpine BusyBox (iSH) on iOS 13.x with either 5.0.11 or 
>> 5.0.17
> 
> Busybox is a shell, in addition to being other tools.  Perhaps you're
> not even in bash at all?
> 
> What does "ps -p $$" say?  How about "set | grep BASH"?
> 
> If it turns out that you really are in bash, not in busybox, then we'd
> need to know a bit more about your environment.  What kind of terminal
> emulator are you in?  What does "stty -a" say?  Have you configured
> readline (look for /etc/inputrc and ~/.inputrc files) in some nonstandard
> way?