2013-01-22 65 views
12

我正在使用mintty + msys。我想用它來使用emacs。但沒有GUI。
我在cygwin中看到了這樣的行爲。但我不明白他們是如何做到的。如何在windows下使用mintty在CLI模式下運行emacs?

$ emacs -nw 
    emacs: standard input is not a tty 

$ stty.exe -a 
    speed 38400 baud; rows 24; columns 80; line = 0; 
    intr = ^C; quit = ^\; erase = ^H; kill = ^U; eof = ^D; eol = <undef>; 
    eol2 = <undef>; swtch = ^Z; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; 
    werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0; 
    -parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts 
    -ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff 
    -iuclc ixany imaxbel 
    opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 
    isig icanon iexten echo echoe echok -echonl -noflsh -tostop echoctl echoke 

$ echo $TERM 
    xterm 
+1

TERM設置爲什麼? 'stty -a'是什麼意思? – hpavc

+0

hmz適用於我,在xterm和甚至在mintty。感謝params btw,因爲我找不到如何在xterm上獲得emacs cli :) – holms

回答

5

如果你想用mintty使用tty emacs,你可能需要使用cygwin的emacs。原生的win32 emacs想要與Windows控制檯窗口交談,而不是實際的tty - 錯誤信息在這裏有誤導性。

另一種選擇是,如果你想堅持原生的win32 emacs,就用ConEmu而不是mintty。它提供了兼容的Windows控制檯界面,同時還提供了像mintty這樣的普通終端仿真程序的所有細節。

3

你應該使用winpty

winpty emacs -nw 

winpty是Windows軟件包提供類似於Unix的PTY主與Windows控制檯程序通信的接口。該軟件包由一個庫(libwinpty)和一個用於Cygwin和MSYS的工具組成,用於在Cygwin/MSYS pty中運行Windows控制檯程序。

Emacs在你的情況實際上是「Windows控制檯程序」。

+0

這位60多歲的CLI用戶感謝你。 Windows 10 Msys2(msys2-x86_64-20161025)msys emacs(本地/ mingw-w64-x86_64-emacs 25.2-1)CC被誤譯爲「」(請參閱​​:https://superuser.com/questions/93771/cxcc - 不工作,在-emacs的-23-1)。使用Cygwin emacs二進制(emacs-nox 25.1.1)似乎工作正常。 –

相關問題