web-dev-qa-db-ja.com

Carbon vs. Aqua vs. CocoaEmacsビルド

OSX上のEmacsに関しては、いくつかのキャンプがあるようです。カーボン対アクアEmacs。 Aquaは標準のEmacsから少し遠すぎて、快適になりすぎると、他のビルドのEmacsを使用するのに問題が生じるという議論があるようです。

数ヶ月間Emacsに参入しようとしている開発者として、私はCarbon Emacsを Emacsスターティングキット で使用していて、問題はありません。

しかし、Emacs 23に付属するEmacsのCocoaビルド(およびナイトリービルド)では、これは何かを変えるでしょうか?

毎晩のCocoaビルドの使用を検討する必要がありますか?私はその利点と、2つの主要なOSXEmacsアプリに大幅な変更または改善があるかどうかを知りたいと思っています。

30
mwilliams

長年のemacsユーザーとして、私はemacsの「エキゾチック」バージョン(aquamacsはこのカテゴリに分類されますが、この「スターターキット」も同様です。理由を説明しようと思います)に対して、指のために勧めます。 -トレーニングと脳トレーニングも。

私の主張は、emacsを一度だけ学びたい、emacsを使用するプラットフォーム(つまり、OS /デスクトップ/ハードウェア/その他の組み合わせ)に関係なく、ということです。 UNIXのほぼすべてのフレーバーには、プリインストールされたemacsが付属しているため、最も過酷な環境(たとえば、/ etc構成ファイルの編集)でもたとえばviに頼る必要はありませんであることが期待されます。 ssh経由のリモートHP/UXサーバー上)。そこにある古いemacs19を引き続き使用でき、構成ファイル(つまり、スターターキット、キーバインディングなど)がない場合でも、70%の手元にある通常の編集能力。

そして、その敵対的なマシンでそれらのファイルを編集しなければならないことがよくある場合は、その古いemacsで.emacs構成を可能な限りミラーリングする必要があります。もちろん、そこでサポートされていないものは途中で失われますが、繰り返しますが、good'ol emacsは常にemacsになります減少したものであっても。

もちろん、作業環境を完全に制御している場合、たとえば光沢のあるMacラップトップでのみ作業する場合は、Meta-W/Ctrl-Yを習得するよりも、Cmd-C/Cmd-Vを使用する方が簡単であるという理由だけで、より洗練されたバージョンのemacsが必要になる場合があります。また、同じ理由で、1つの言語で開発する場合は、実際に本格的なIDEとその言語に合わせた超能力(Eclipse、Xcodeなど)を使用することをお勧めします)。いつか、予期しないファイルを編集する必要がありますシェルスクリプト、Webページ、またはPythonスクリプト、または誰がどんな種類のテキストファイルを知っているか、そしてこれが理由ですあなたは万能のOne TrueEditorを使いたいですそもそも。

そして、これが私が光沢のあるMacラップトップでCarbon Emacsを使用する理由です:まったく同じ構成ファイル(10年間手作り)を使用して、職場で使用することを余儀なくされているUbuntuボックスでまったく同じ(emacs)機能を取得しますemacseryの)、それでも私は他の人や他のマシンのemacsenにかなり快適に感じることができます。

...私の2セント

28
Gyom

私はソースからEmacs23を構築し、それをemacs-starter-kitでしばらく使用してきましたが、間違いなく良い妥協点だと思っています。

Emacs23にはまともなMacCmdショートカットが組み込まれており、emacs-starter-kitを使用すると、os/machine/userごとに簡単にカスタマイズできます。

あまりカスタマイズせずに「純粋なemacs」を学ぶべきだという考えには反対することをお勧めします。そうすると、emacsの半分のポイントが失われます。これはこれまでで最もカスタマイズ可能なエディターなので、カスタマイズしてください。

あなたがシステム管理者または同様のものであり、定期的に奇妙なマシンに飛び乗っている場合は十分に公平ですが、これまでのすべてのUNIXで同じエディタが必要な場合は、vimの方がはるかに優れています(そしてより広く利用できます)。 (これは、emacsをメインエディターとして使用している場合でも、vimを学習する良い理由でもあります)。

ただし、変更する前に、従来のemacsショートカットを学習する価値があります。通常、彼らがそうなっているのには正当な理由があります。たとえば、TextMateに慣れている場合は、多くの関数を複雑な5つのキーコードのキーにマッピングしたくなるかもしれませんが、長期的には、emacsが好むコマンドの長いシーケンスを使用する方がはるかに簡単です。入力時のゆがみははるかに少なくなります。タブ補完を使用すると、M-xlong-command-nameが複雑なコードよりも高速であることがわかります。

編集:

したがって、実際に質問に答えるには、はい、ナイトリービルドを使用する必要があります(または、自分でコンパイルすることをお勧めします。1つのグーグルで非常に簡単で、内部を暖かく感じることができます)。そして、emacs-starter-kitを続けてください。それに関する問題があれば、私に一言お願いします。

8
Singletoned

私はCarbonEmacsを自分で使用しており、リリース時にGNUEmacsのCocoaポートに移動します。大きな違いはないと思います。私はいくつか考えることができます:

  • 「Cocoa」Emacsは「本物」のGNU Emacsであり、Carbon Emacsのようなフォークではありません。したがって、最新バージョンを使用して最新バージョンを使用する場合は、CocoaバージョンをGNUCVS。
  • Carbon Emacsには、GNUEmacsに含まれていないいくつかのelispパッケージが含まれています。 リスト が利用可能です。
  • Cocoaポートはバージョン23で、Carbonは22です。elispの互換性などに関してこれに問題がある可能性があります。

また、Aquamacsには近づかないでしょう。 GUIはマウス指向すぎるようです。ヤック:)

5
John Smith

私はAquaEmacsを標準のEmacsよりもしばらくの間オフとオンで使用してきました。私が気に入ったのは、システム統合がわずかに優れていることでした... Emacsの公式Cocoaビルドは、十分な標準システムUI統合を提供できるため、デフォルトで適切に選択できます。

報告して物事を安定させるのを助けるためだけなら、ナイトリーを試す価値があるかもしれません。

Aqua emacsについて私にとって最も奇妙なことは、.mファイルのデフォルトモードが実際にはObj-CモードではなくMatlab(同じ拡張子を使用)であるということです!

私が見たいのは、emacsビルドからのXCodeの認識の向上です(実際には、Objcモードのようなものを強化するだけです)。

  • CarbonEmacsはemacsです
  • CocoaEmacsはemacsです
  • X11Emacsはemacsです
  • emacs -nw(つまり、コマンドラインのみemacs)もemacsです
  • Xemacsでさえ、GUI以外の違いに気付かないような初心者向けのemacsに十分近いです:D

私はMac(*)でCarbon Emacsのみを使用しましたが、Cocoa Emacsには、他のEmacsバージョンとは異なり、構成またはバグのいずれにもたどることができないものがあるとは想像できません。

(*)iveは、LinuxプラットフォームでX11、コマンドラインemacs、およびXemacsを広範囲に使用しましたが

1
hhafez

私が使用しているemacsのサブセットでは、Aquamacsを使用することとLinuxボックスでGNU emacsを使用すること)の違いはほとんどありません。これは、一般的なテキスト編集、LISPインタラクション、バッファーコマンド、新しいフレーム、長方形の選択領域です。 、標準のemacs編集キーバインディング、&c。emacsファイルを編集して構成をカスタマイズするなど。(他の誰かが言ったように、グラフィカル構成エディターを使用するとdoes Aquamacs設定を使用すると思います。)

最近のアップデートの傾向は、従来のemacsスタイルから、より「Macに似た」ものに移行することだと思います。それは事実であり、私はこれらのオプションをオフにしていることに気づきました。しかし、あなたはそれをあなたの意志に曲げて、それをより伝統的にすることができます。

0
Michael H.