emacsの内部からシェルを起動する方法はすべてあり、それらのさまざまなプロパティは何ですか?


25

少なくとも4つの可能性を知っています。

  • エシェル
  • 期間
  • ANSIターム
  • シェル

シェルを起動するためにemacsに組み込まれているツールの完全なリストと、それらが提供する利点と欠点は何ですか?


1
これは、大きなリストの質問の興味深い例です。この種の質問を好むサイト(2人を含む)の人々の中には、そうでない人々もいるようです。モデレーターの応答に応じて、結果は実際に変動する可能性があります。meta.emacs.stackexchange.com/questions/305/…
Joe

回答:


31

M-x shellOSのシェルへの標準インターフェイスです。Linuxではbash(またはデフォルト)を呼び出し、Windowsではcmd.exeを呼び出します。M-x shell最も頻繁に使用されます。

M-x eshellemacs lispで完全に記述されたシェルです。構文はbashに似ていますが、elispとうまく統合されています。たとえば、elispコードをすぐに評価できます。Eshellは、cygwinなどがインストールされていないWindowsで特に役立ちます。

M-x termM-x ansi-termgnome-terminal、xtermなどによく似た端末エミュレーションです。との主な違いM-x shellは、eshellまたはではshell、キーはまだemacsキーですが、termでは、emacsキーが機能しないことです。しかし、利点は、ssh、vim、またはテキストUIベースのコマンドを実行できることです。これらは、M-x eshellまたはでは動作しませんM-x shell

termそしてansi-term別のパッケージでしたが、今では、同じファイルterm.el.における2つの異なるコマンドです 私はそれらをあまり使用していません。これについては、emacs wikiでより詳細な回答を見つけることができます

私のブログにもっと情報があります。


1
「2つの異なるコマンドが同じファイルになりました」。不足している単語が1つまたは2つある可能性があります。
ファヒームミタ14

2
いい答えだ。上記のwikiページへのリンクもいいでしょう。
マラバルバ14

3
「Mxシェルが最も頻繁に使用されます」-それが真実であるとは全く確信していないので、引用または何らかのデータがそれをサポートすることを望みます。また、答えに実質的なものは何も追加しません。そうでなければ良い答え。
shosti 14

2
ショスティ、私はハード統計を持っていません。ファイルヘッダーによると、シェルは1988です。eshellは1999です。term.elも1988です。eshellは、ほとんどがelispハッカーによって使用されるため、emacsユーザーよりもはるかに少ないです。それはシェル対タームを残します。emacsの本、たとえばO'Reillyの3冊ほどの本で、彼らの言及を比較できると思います。またはグーグルの比較...しかし、emacsコミュニティでぶらぶらしている経験から、term / ansi-termはあまり使われていないと思います。
シャーリー14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.