60

こんにちは、私は主に C++、Objective-C プログラミングを行っています。そして、Xcode とオートコンプリート/マクロ プラグイン (Completion Dictionary) が非常に適切であることがわかりました。

ただし、すべての人が純粋なテキスト エディターを称賛しているようです。Textmate を少し試してみました。そのシンプルさは気に入ったが、ファイル/フレームワークの処理は嫌いだった。

ここで何か不足していますか?または、Vim や Emacs のオートコンプリートは Xcode と同じくらい優れていますか?

4

21 に答える 21

188

息子の椅子を引き上げて、これについて話させてください。

Xcode の時代よりずっと前に、VIM と Emacs がありました。想像しにくいとは思いますが、本当です。

多くの人が VIM/Emacs に慣れ、使い続けています。

Emacs は非常にカスタマイズ可能で、想像できるほとんどすべてのものを提供します (組み込みのシュリンクやハノイの塔など)。Emacs からコンパイラを簡単に呼び出すことができ、必要に応じて独自の拡張機能を作成できます。

VIM には信じられないほどの正規表現エンジン (Emacs も同様) があり、(VI) はほぼすべての Unix OS に付属しており、矢印キーがなくても素晴らしく機能するため (そうそう、本当の古い学校です)、非常に便利です。人々は、マウスを使わずにキーを使って文書内を移動することに長けています。

同じことが Emacs にも当てはまりますが、私にとっては、カーソルの移動は VIM の方がはるかに簡単です。

テキスト エディター戦争は、Mac 対 PC 戦争と同じくらい宗教的な熱狂によって煽られています。Xcode が好きなら、それを使い続けてください。ただし、PC や Linux マシンでの作業を余儀なくされた場合は幸運を祈ります。個人的には、コーディングには Emacs、テキストの操作には VIM、lollcat を見るには Firefox を使用しています。

于 2009-03-16T02:04:40.227 に答える
15

人々がテキスト エディタについて話すときに、なぜ emacs が支持されるのか、私には本当に理解できません。私の経験では、テキスト編集が得意な環境であるためviよりも eclipse (または他のプラットフォーム/IDE の 1 つ) に似ています。

IDE としての emacs は、バージョン管理、ライブ コンパイル、スペル チェック、オート コンプリート、デバッグ、コード ブラウジングなど、さまざまな SDK 向けの機能を多数備えています。その他のコンピューティングのニーズについては、電子メール/ニュース/ウェブ/irc/twitter/xmmp クライアント、カレンダー、オーガナイザー、電卓、ターミナル エミュレーター、リモート編集、スプレッドシート、ゲームなどです。

ダイクストラの後: 「Emacs はテキスト編集ではなく、天文学は望遠鏡である」

于 2009-03-16T08:15:07.997 に答える
11

あなたが見逃しているのは、Emacs と Vim が実際には IDE だということです。

于 2009-03-16T02:03:02.303 に答える
8

vi は UNIX システムではどこにでもあり、Emacs もほぼそうです。私の知る限り、Xcode は 1 つのプラットフォーム上にあります。

強力な IDE を持つことは素晴らしいことですが、ドロップされる可能性のあるあらゆるプラットフォームでそれらを機能させ続けるために、誰もがわずかなスキルを持っている必要があります。

于 2009-03-16T02:09:33.943 に答える
5

それはすべてあなたの好み次第です。

(g)vim、emacs、pico などの軽量のテキスト エディタを好む人もいれば、MS Visual Studio、Eclipse、Xcode などの IDE を好む人もいます。

お使いの環境がテキスト編集テクノロジと互換性がある限り、それはすべてあなた次第です。

ちなみに、私は Eclipse と vim を使って作業するのが好きです。なぜなら、それらは私がプログラミングを学ぶために使用したものだからです ;)

于 2009-03-16T02:09:46.097 に答える
4

Emacs/Vim が好きだと思われる主な理由は、コード補完のためです。Emacs/Vim のような人々は、どちらもテキスト編集用に作られているからです。他のエディターにはないコントロールとオプションを利用できます。これらのプログラムの 1 つを使いこなせるようになると、これらのキー バインド/コマンドをどこでも使用できるようになります。マクロ、正規表現、検索/単語/段落/関数による移動、バージョン管理とのインターフェース、複雑な元に戻す/やり直し、コピー/貼り付け機能、および拡張オプションは、これらのエディターが本当にうまく機能するもののほんの一部です。

コード補完は、プログラミングの記述を容易にする多くの機能の 1 つにすぎません。Emacs/Vim はそれらのすべてを (ネイティブまたは拡張によって) 処理できます。

于 2009-08-05T20:32:34.273 に答える
3

私にとって最も重要な2つの機能は次のとおりです。

  • Emacsのキーバインディング、それが私の指と互換性があるものです。

  • オープンソース、それが提供する自由のために。1つのプラットフォームに縛られることはアナテマです。

最近、私は主にプログラミング(Emacsキーバインディングに設定)にEclipseを使用し、メールや時折LaTeXを読むためにFSFEmacsを使用しています。

于 2009-03-16T08:50:02.153 に答える
3

私は個人的にemacsが大好きです。私はvimといくつかのIDEを使用しました。Vim と emacs の両方には、人々があらゆる言語の機能を喜んでコード化する素晴らしいコミュニティがあります。私は Haskell をサポートする IDE を知りません。それはすべて、あなたにとって何が重要かによります。どちらにも拡張言語がありますが、IMO では emacs lisp の方が優れています。マウスを無視する機能も、私が気に入っている主なものです。非常に多くの IDE には、emacs と vim の互換モードまたは拡張機能も備わっています。どちらも多大な時間を投資しますが、どちらもそれだけの価値があります。遅かれ早かれ、自分に合った vim/emacs/IDE を選択し、それを使ってスキルを向上させることに固執するでしょう。

于 2009-03-16T06:23:57.873 に答える
3

いいえ、そうではありません。それは本当に好みの問題です。私は Visual Studio 6 で作業するのが好きでしたが、最近の新しいバージョンは肥大化しすぎています。したがって、VS の外部で何かを実行できる場合は、通常、IDE ボックス全体を開かずに実行します。

Windows では、notepad2 と gvim が好きです。自分のニーズに完全に合うようにvimをカスタマイズしたので、何をどこで考える必要はありません。

しかし、言及するのは良いことです (これらのちょっとした投稿を読んで自分でそれを理解することもできます) 多くのユーザーが vim/emacs/... を使用しています。実際の使用感。したがって、あなたに合わない場合は、使用しないでください。そのせいで、誰もあなたを間違った目で見ることはありません。

于 2009-03-16T02:49:12.320 に答える
2

emacs は強力です。すべての emacs 機能で vim キー バインドを使用できるように、私は vimplus.el で emacs を使用します。

于 2011-04-18T14:48:01.293 に答える
2

Emacs を使用している場合、豊富なエディター機能に加えて、 Cedetまたは Autocomplete パッケージをインストールして、一部の言語 (C++ はかなり優れていますが、Obj-C はまだサポートされていません) で名前補完を使用できます。

于 2009-03-16T07:43:11.877 に答える
1

個人的に、私は TextMate が大好きです。なぜなら、それは実際には非常に軽量なソリューションだからです。確かに、私は Vim や Emacs を深く使用したことはありません (GUI が好きです)...ただし、Control ベースのカーソル ナビゲーションは十分に楽しんでいます (Control-A は行頭、Control-E は行末、Control- F と Control-B は前進と後退など)。したがって、Xcode と TextMate の間で、私は本格的な開発のほとんどに Xcode を使用しますが、ソース ファイルをすばやく編集する必要がある場合は、Xcode の起動が完了する前にコーディングを開始できます (TextMate が以前に開いたファイルを記憶できるようにするのに役立ちます)。それらを復元します)。したがって、軽量のテキスト編集には、TextMate が私の選択です。

その上、TextMate のプラグイン サポートは驚くべきものです。Xcode が提供していない非常に多くの異なる機能 (シェル スクリプト、CSS、SQL、LaTeX など) を完全にサポート (構文の色付け、ビルドと実行など) します。Java で簡単なプログラムをブラッシュ アップしたり、Web ページを微調整したりする必要がある場合、Vim を使用してからターミナルからビルドするよりもはるかに簡単です。

TextMate に関する私の唯一の不満は、コンソールが読み取り専用であるため、インタラクティブなものを構築できないことです。それと、プレーン C ファイルで C99 キーワード (ループとブール値) をサポートしていないように見えるという事実。

于 2011-01-02T20:16:03.540 に答える
1

私は Xcode と TextMate を持っていますが、それらが非常に強力であることはわかっていますが、使用していません。代わりに、Vim (または必要に応じて MacVim) を使用します。なんで ?

軽くて、速くて、中毒性があり、パワフルで、カスタマイズ可能だからです... このまま長く続けられますが、最も重要なことは、Vim でやりたいことがすべてできるということです。

どのエディタを使用しても、最高のエディタとは、(ほぼ) 完璧に習得したエディタです。

于 2009-03-16T11:47:46.703 に答える
1

私は長年の vim ユーザーで、Vim エミュレーションをオンにした Komodo 編集が本当に好きです。したがって、vim のキー バインディングの便利さ (最近作成した最近の MS Word 文書に 3 つ以上の ":w" が含まれているほど慣れている) と、適切に実装されたコード補完をすべて取得します。 C++、Python、JavaScript など。

私は OS X 固有のアプリケーションをあまり開発していないため、XCode は使用しません。そのため、OS X フレームワーク統合の利点は、vim キー バインドがないことによるコストを上回るほど大きくなく、「自分たちのやり方で行う」 Apple が開発に向けて採用しているアプローチです。

于 2011-04-18T22:53:48.660 に答える
1

入力モデルには主に Vim を使用しています。入力モデルに習熟すると、マウスを使わなければならないエディターに戻るのは不器用で、最終的には (少なくとも私にとっては) イライラします。「ci」と入力して 2 つの単一引用符の間のすべてのテキストを変更し、ホーム行から手を離して、マウスでテキストを見つけて選択し、最後に「削除」を押す方がはるかに効率的です。

私は Emacs を少ししか使ったことがなく、Vim の方が好きですが、その機能のいくつかには嫉妬しています。しかし、Emacs が使用するコード入力モデルが私の指に不必要な負担をかけていることがわかったので、最終的には Vim を選びました。

于 2009-03-16T09:22:34.650 に答える
1

TextMate は私には軽く感じます。私の頭の上から:

  1. ファイル間およびファイル内のメソッド間をジャンプするための優れたサポートがあります。ファイル/メソッドについては Quicksilver を考えてください。編集用にファイルを開いた状態で、command-shift-t を押して、ファイル内のすべてのメソッドを一覧表示するフローティング パネルを表示します。入力を開始すると、リスト自体がフィルタリングされます。目的のメソッドを選択し、リターン キーを押してそのメソッドにジャンプします。Xcodeにはこのようなものがありますが、文字列の一致はより文字通りです。

  2. 多くの組み込みのテキスト拡張。トリガーを入力し、タブを押して展開します。たとえば、新しい行で m と入力してからタブを押すと、メソッドが作成されます。タブ キーは、挿入されたテキストのさまざまな部分にインテリジェントにジャンプし、その場で編集できるようにします。これらはばかげているほど大幅な時間の節約になります。

  3. Subversion と Git の優れたプラグイン サポート。おそらく他のVCSも。

  4. 補完 (Xcode など) と履歴。TextMate を使用すると、基本的にファイルに存在するすべてのテキストをタブ補完できます。したがって、変数名またはメソッド呼び出しを 1 回入力すると、タブを使用して同じファイル内の任意の場所でオートコンプリートできます。

  5. 歴史のあるスマートな過去のボード、素敵な組み込みの差分、テーマのサポート、優れたキーボードのサポート、ファイル内およびプロジェクト間での検索 (RegEx を使用) など、おそらく私が忘れているものは他にもあります。

とにかく、それで十分です。

于 2009-05-25T18:21:23.403 に答える
0

私はずっと前にvimを試しましたが、何らかの理由で「取得できませんでした」。その後、何年にもわたって他のエディターを試した結果、どのエディターも自分のやりたいことを実行していないように見える点に到達しました。友人にフラストレーションを表明した後、彼は私が vim を試すことを勧めました....そして、それが私が尋ねる方法を知らなかった質問への答えだったので、もう一度見てよかったです! それ以来、私は Vim/MacVim を使用しています...

ここで私の設定: https://github.com/RandyMcMillan/QuickVim

コード補完があると便利なので、Xcode も使用します。XVim は、Xcode エディターでモーダル/vim の感覚を求める人に適しています: https://github.com/JugglerShu/XVim

しかし、私の日々の編集に関しては、Vim が常に勝っています。そのため、いつでもどこでも自分の環境をすばやく再現できるように、QuickVim リポジトリを用意しています。

私は TextMate などのエディタのライセンスのリストを持っていますが、vim は無料で使用でき、自分の仕様に合わせてカスタマイズできるため、使用することはないでしょう。

于 2012-12-08T01:40:14.907 に答える
0

Xcode はどちらかというと IDE に近いものですが、emacs と vi は純粋なテキスト用です (ただし、それらには大規模な拡張機能があります)。これは、古いシステムまたは SSH を使用している場合に適しています。さらに、それらはほぼすべての UNIX ベースのコンピューターに搭載されていますが、XCode は Apple 独自のソフトウェアです。

于 2009-03-16T02:00:47.770 に答える
0

なぜ Emacs なのかという主題に関する私のエッセイを見たことがあるかもしれません。. 多かれ少なかれ Emacs 中心ですが、その中で述べられているポイントのいくつかは vim と TextMate にも当てはまります。

于 2012-03-14T06:43:04.803 に答える
0

Vimのヘビーユーザーです。Vi/Vim のテキスト操作機能は、次のようなものを欠いている従来のエディターよりもはるかに優れていることが一般的にわかります。

  • ビジュアル モード: 例: 5 行の先頭にコメントを付ける //
  • マクロ: 例: 行の 3 番目から 5 番目の単語を引用符で囲み、100 行繰り返します
  • 複数のレジスタ: 36 個のレジスタをコピーして貼り付けると考えてください
  • delete{motion}: 例: カーソルから次の「initWithFrame」までの削除

これらは、Vim が XCode のテキスト編集に勝るほんの一例です。

Objective-C の場合。私は IDE に Vim プラグインをインストールして、両方の世界 (ネイティブ ビルドと UI コンポーネントのサポート) を最大限に活用する傾向があります。

ちなみに。Emac のキーボード バインディング (行の先頭に移動するための CTRL-A など) は、Mac の多くのネイティブ (Coacoa) テキスト フィールドでサポートされています。スタックオーバーフローで回答を入力するために使用しているものを含めます:D

XVimは XCodeで動作します。 AppCodeIdeaVim

于 2014-04-23T13:26:28.330 に答える