MSYSシェル上でのシーイング-交換可能ですか?
質問
MSYSの保守可能なシェルが必要です。これが私の現在のジレンマです:
デフォルトのrxvt.exeにはスクロールバーとコピーアンドペーストがありますが、シェルで実行中のプログラム(インタープリター/デバッガーなど)に制御文字や矢印キーを送信しません。 Haskellインタープリターghciを使用する場合、これは本当のとげです。
他のシェルsh.exeは制御文字(または少なくともその一部)を処理しますが、スクロールバーやコピーアンドペーストはありません。
rxvtには、出力バッファリングに関する(比較的)より多くの問題もあります
私のオプションは何ですか?交換シェルはmsysに対応する必要がありますか?私が欲しいのは、Haskell(ghc)、C ++(gcc)、および基本的なツールチェーン(makeとwhat not)で動作する健全な環境だけです。クレイジーシェナンガンが含まれていない場合は、シェルをコンパイルします。
解決
より優れたターミナルエミュレータを使用している場合、 http://sourceforge.netで成功しています。 / projects / console /
これは、標準のWindowsコマンドウィンドウに代わるものです。 MSYSまたはCygwin、またはそれをサポートするシェルとして必要なものを設定できます。
他のヒント
http://code.google.com/p/mintty/ を確認します。どのようにそのことについて?本当に便利だと思います。またはputtycyg(以前の試み)?
msysシェルから:
mingw-get install mintty
mintty
混乱している" shell"および「端末エミュレータ」。 sh.exe
は前者です。 rxvtは後者です。 (Windowsでは、ターミナルエミュレータがなくても実行できます(コンソールコンソールウィンドウがコンソール内で実行されていない場合は、コンソールコンソール(sh.exeなど)用に作成されるため)。
古いcmdの代わりにPowerShellを使用します。次に、このようにshを実行します
C:\msys64\usr\bin\sh.exe --login -i
Winsys 8.1とMSYS2およびHaskell Platform 2014.2.0.0でテストしました。 GHCiでは問題はありません。すべての矢印キーおよびその他のキーは期待どおりに機能します。
また、他の回答で示唆されているように、Console2をWindows8で正しく動作させることができませんでした。
この質問は少し古くなっています。 mintty
がMSYS2にデフォルトで含まれるようになりました。皮肉なことに、GHCiのコマンド履歴にアクセスできませんでした-上に押すとカーソルが移動し、入力バッファーに \ ESC
コードが配置されました-これはによって修正されました削除 mintty
(MSYS2シェルから pacman -R mintty
)。
msysを使用したことはありませんが、rxvt以外の何かを使用して、sh.exeを実行すれば十分です。さて、制御文字を使用している場合は、使用するものが必要なものをサポートしていることを確認する必要があります(つまり、vt100エミュレーション)。
1つの方法は、cygwinを使用することです。私は通常、ルートレスXサーバーでcygwinを実行し、その上でxtermを実行します。私は矢印キーを知っていて、その下でもうまく機能します。
msysである古いCygwinバージョンのメンテナンスされていないフォークではなく、適切なCygwinを使用してください。