Tmux
TMUX + Rails = stty:‘標準輸入’:無法執行所有請求的操作
我有一個相當大的 Rails 項目,它總是在 Rails 控制台中的每個命令之後返回以下內容:
stty: 'standard input': unable to perform all requested operations
這只發生在 TMUX 中。如果不使用 TMUX,我看不到這個輸出。
我也沒有在 TMUX 中看到較小的 Rails 項目的這種行為。
我在 Mac OS Mojave 上使用 iTerm 2(夜間建構)並且正在使用 vanilla TMUX(即沒有特殊配置)。
有任何想法嗎?
回答約瑟夫廷吉里斯的問題:
在 TMUX 中,我得到:
› stty -a speed 9600 baud; rows 47; columns 178; intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; start = ^Q; stop = ^S; susp = ^Z; dsusp = ^Y; rprnt = ^R; werase = ^W; lnext = ^V; discard = ^O; status = ^T; min = 1; time = 0; -parenb -parodd cs8 hupcl -cstopb cread -clocal -crtscts -ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff ixany imaxbel iutf8 opost -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isig icanon iexten echo echoe -echok -echonl -noflsh -tostop -echoprt echoctl echoke -flusho -extproc › echo $TERM screen-256color
在 TMUX 之外,我得到:
› stty -a speed 38400 baud; rows 48; columns 178; intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; start = ^Q; stop = ^S; susp = ^Z; dsusp = ^Y; rprnt = ^R; werase = ^W; lnext = ^V; discard = ^O; status = ^T; min = 1; time = 0; -parenb -parodd cs8 hupcl -cstopb cread -clocal -crtscts -ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff ixany imaxbel iutf8 opost -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isig icanon iexten echo echoe echok -echonl -noflsh -tostop -echoprt echoctl echoke -flusho -extproc › echo $TERM xterm-256color
在 iTerm2 中使用
pry
in 時遇到了同樣的問題。tmux
這個 GitHub 問題幫助我發現
stty
gnubin coreutils 提供的版本覆蓋了 OSX 標準/bin/stty
。我修改了我
PATH
的先解決/bin/stty
,錯誤就消失了。