2010-12-26 8 views
32

cmdターミナルをWindowsのEmacs 23.2(最新バージョン)で起動しようとしています。WindowsのEmacsのターミナル - エラーメッセージ: "子プロセスの生成、無効な引数"

Manualによると、M-x termと入力して、Emacsで端末モード(端末の新しいバッファを起動)に入ることができます。

私はこれを行うと、私はのためのプロンプトが表示されます:すべてのアイデアは、それを動作させる方法を

Spaning child process: invalid argument 

:私はRETを入力すると、私はミニバッファに次のエラーメッセージが表示されます

Run program: path_to-emacs/bin/cmdproxy.exe 

おかげで、

+4

ここで同じ問題がある:( – dolzenko

+2

私はここでも同じ問題がありますが、 'C:/ Program Files(x86)/Git/bin/bash.exe'を使用しています(つまり、実際のシェルを使用します"と書いてあります) – Arafangion

+0

も参照してください。http://stackoverflow.com/questions/20263012 –

答えて

9

次のように実行する必要があります。

  • M-:(make-comint-in-buffer "cmd" nil "cmd" nil)

  • M-XがESHELL

  • M-Xシェル

すべてに長所と短所があります。だから、あなたに合ったものを選んでください。

+1

いいえ、なぜ私は分かりませんが、MinGWのgdbには奇妙な誤動作があります。例えば。その下で実行されるアプリケーションは、何かを入力したときに無効な引数について不平を言って、印刷ステートメントを印刷しません。プレーンターミナルでのgdb runnningはまったく問題はないので、これは確かにEmacsの問題です。 'gdb'と' gud-gdb'の両方のモードでも同じです。 –

+0

私は何の問題があるかを見つけました。それをここに書いておいてください:Windows®端末には独自のエンコーディングがあります(chcpコマンドで見つけることができますが、ロケールによって異なる可能性があります)。そして、gdbで動作するには、バッファのエンコーディングを設定する必要がありますシステムに合意する –

1

代わりM-x cmd-shellを試してみてください。最良の結果を得るためにEmacsW32を使用することをお勧めします。

+4

Thanksİsmail、EmacsとEmacsW32の両方でMxシェル、EmacsW32のMx cmd-shellを使えますが、実際の端末をエミュレートして、いくつかのインタラクティブなコンソールプログラムを正しく動作させることができます。つまり、私はMxの用語を働かせたいのです。 –

+1

cygwinやmsysのbashのような実際のシェルが必要です。シェル。 – ismail

+4

私はmsysのbashを持っていますが、(用語 "bash")または(用語 "the-full-path-to-bash.exe")は、両方とも依然として無効な引数に文句を言います.. ?? –

3

同じ問題がありました。

私はprocmonを実行し、Emacsが何らかの形(sh.exesh.batsh.cmdなど)でc:\bin\shを探したがっていることを発見しました。
アンドロイドのデバッグシェルで用語モードを使いたかったので、内容が「adbシェル」のc:\bin\sh.batを作成しましたが、奇妙な入力遅れがあってもうまくいきました。

+0

I looこれにビットとtermモードをkedして実行可能ファイルにハードコーディングされたパスをいくつか持っているので、Windowsではいくつかの面倒なところがあります。 –

6

M-x compileを実行しようとしているときに同じエラーが発生しました。私は私の.emacsファイルに以下を追加し、それが問題固定:明らか

;; Make sure that the bash executable can be found 
(setq explicit-shell-file-name "C:/cygwin/bin/bash.exe") 
(setq shell-file-name explicit-shell-file-name) 
(add-to-list 'exec-path "C:/cygwin/bin") 

あなたはCygwinがインストールされている場合は、このソリューションはのみ動作しますが、しかし、あなたがWindows上のEmacsを実行している場合、少なくとも最小限のインストール通常の価値がありますCygwinの多くのEmacsコマンドは、cygwin(私の場合はM-x compile)が提供するコマンドラインツールを利用できるためです。

3

あなたはWin32のEmacsで、Windows上のcmd.exeやCygwinのbashのでtermまたはansi-termを使用する場合は、このプロジェクトを見てとることができます。勝利に私のために非常にうまく動作

fakecygpty

10。