C開発のための便利で効率的な開発環境を構築するためのアイデアを探しています。私が見つけたVimでCを編集するとても役に立ちますが、もっと幅広いアドバイスを聞きたいです。
答え1
Emacs/ウィム/式/... - 私は個人的にEmacsユーザーです。制御シーケンスによって子指が疲れた場合は、Viperモードを使用してください。 EmacsはUnixにうまく統合されており、1か所ですべてを非常に簡単に制御できます。 Vimはここでも良いことですが、私はElispがVim Scriptよりも強力な拡張言語だと思います。 C開発のためにEmacsを設定するすべての方法について話しながら数時間を過ごすこともできます。 飛行機モードすでに述べたように、これは仕事の始まりです。私はEclipseを初めて使用していますが、画面にコードを入れるのに十分なスペースがなく、あまりにも肥大になることも気に入りません(VimユーザーはEmacsについて同じことを言います)。私は純粋に審美的な理由でJavaで書かれたすべてについて不当に偏見を持っています。
商標- Vim、Emacs、または他の言語がファイルにハイパーテキストリンクを作成できるように、C(または他の複数の言語)機能にタグを付けます。あちこちを見回すが、どんな関数を見て頭を傷つけ、「この関数の役割は何ですか?名前がちょっと曖昧です」と言うと仮定しましょう。ブームブーム、まさにその定義に進むことができます。
翻訳者/Gnu自動ツール- Makeは素晴らしいですが、ある時点でプロジェクトがテストできないさまざまなシステムで独自に構築できるように抽象化する必要があります。 Autotoolsは*nixでコードをビルドする人が必要な場合に便利ですが、とにかくCmakeに精通している必要があります。 Cmakeチームは、可能なすべての構成でコードを構築し、ユーザーが気になることを経験する必要がないことを保証します。プロジェクトで他のプロジェクトを簡単に購入できるようにするには、これらのツールの1つが不可欠です。
子/水銀/破壊/... - バージョン管理ソフトウェアを研究するために数ヶ月を過ごすことができますが、おそらくGitを選択する必要があります。これは安定して分散しており、@$!#%& Linuxカーネルはこれを追跡に使用します。 Linusに十分であれば、あなたにも十分でしょう。 Mercurialについても良いニュースが聞こえ、G**gleでもこれを使っているので悪くないようです。一部の人々はSubversionやCVSのようなものが好きなようです。私は彼らが独身なので、彼らは好きではありません。これは私にとって非常に不便で制限的です。
ストゥパーム/ウィミイ/Xモナード/... - ある時点で、ワークフローを維持するために実行するすべてのタスクが結果を劇的に増加させることに気付くでしょう。脳がコンテキストを破壊するのを防ぐ最善の方法の1つは、タイルで構成されたキーボードベースのウィンドウマネージャに切り替えることです。私は次の個人ファンですスタブ WM、ウィンドウマネージャのEmacs。動的にカスタマイズ可能なCommon Lispプロセス内で完全に実装されているため、繰り返し実行するすべての操作を関数として削除してコマンドにバインドできます。良いこと。私は他のことについてあまり知りませんが、おそらくより詳細な説明は他のスレッドに任せるのが最善です。可能な限りキーボードを使用してください。
広東開発銀行- 他のデバッガはよくわかりませんが、これは事実上標準のようです。
ウォールグリーン- 私はこの仕事をする他の何も知らない。 Valgrindは、あなたが望むすべての迷惑なプロファイリング/メモリリーク検索に不可欠です。 Valgrindがないと、malloc / callocを使用してコードを書くことはできません。
答え2
私はしばらくVimを使用していましたが、VIMの基本を知ることが役に立ちました。どこかでそのような基本だけを備えたUNIXボックスを常に見つけることができるからです。しかし、Emacsを使った後、振り返ってみませんでした。 Eclipseは「現代的な」代替手段であり、私のシステムには3つすべてがあります!
答え3
これは極めて個人的な好みなので、私が何を使うのかお話しする以外にできることはあまりないと思います。 Emacsを設定しました。飛行機モード、作業中のファイルを定期的にコンパイルし、コンパイラの出力を解析して発生したエラーを見つけます。バッファのエラー/警告を強調表示し、関連するコンパイラエラーメッセージを表示します。
答え4
私は組み込み端末でgeditを使用します。