^C
端末を押してもCTRL-C端末は表示されません。さまざまなSTTYオプションを設定してみましたが、何が間違っているのかわかりません。
私はMac OSX 10.11.16を実行していますが、この動作はターミナルアプリケーションとiTerm2ターミナルエミュレータで発生します。私がどこで間違っているのかわかりません。出力は次のとおりですstty -a
。
speed 38400 baud; 39 rows; 171 columns;
lflags: icanon isig iexten echo echoe echok echoke -echonl echoctl
-echoprt -altwerase -noflsh -tostop -flusho pendin -nokerninfo
-extproc
iflags: -istrip icrnl -inlcr -igncr ixon -ixoff ixany imaxbel -iutf8
-ignbrk brkint -inpck -ignpar -parmrk
oflags: opost onlcr -oxtabs -onocr -onlret
cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb -crtscts -dsrflow
-dtrflow -mdmbuf
cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>;
eol2 = <undef>; erase = ^?; intr = ^C; kill = ^U; lnext = ^V;
min = 1; quit = ^\; reprint = ^R; start = ^Q; status = ^T;
stop = ^S; susp = ^Z; time = 0; werase = ^W;
答え1
これはソフトウェアによって異なり、一貫性がありません。一部のシェルはプロンプトを実行し、他のシェルは必要な内容を表示し^C
(その後終了することがあります)、他のシェルは次のもの以外を発行します^C
。
%
%
% tclsh
tclsh> ^C
% clisp
[1]>
*** - Ctrl-C: User break
[2]>
% perl -MTerm::ReadKey -E 'ReadMode "raw"; $k=ReadKey(0);' \
-E 'say "control+c" if $k eq "\003"; ReadMode "restore"'
control+c
%