2009-05-08 12 views
127

多くのソースコード書式設定ツールがあります。どちらがC++に最適ですか?ベストC++コードフォーマッタ/美化器

私は、コマンドラインツールや、コードの入力/出力チェック時に自動的に実行できる他のものに興味があります。できればエディタやIDEを起動する必要はありません。

(あなたはすでに答えとして記載されているようなものが表示された場合は、それを投票。それがない場合は、それを追加します。)

答えて

120

AStyleは、C++やJava(とあまりにも他人のために非常に詳細にカスタマイズすることができます)

これはソースコードの書式設定ツールです。


clang-format一貫した方法でも、最もあいまいな言語構造を扱う打ち鳴らすコンパイラにバンドルされて強力なコマンドラインツールです。

これはVisual Studio、Emacs、Vim(など)と統合することができ、選択した行だけをフォーマットすることができます(あるいはdiffをフォーマットするにはgit/svnを使用します)。

さまざまなオプションを指定して設定することができます。here

設定ファイル(名前は.clang-format)を使用する場合、スタイルはディレクトリごとにできます。親ディレクトリの中で最も近いファイルが特定のファイルに使用されます。

スタイルがプリセットから継承することができます(LLVMやGoogle言う)以降のさまざまなオプション

これは、Googleや他の人が使用すると生産準備ができているを上書きすることができます。


UniversalIndentGUIもご覧ください。あなたは、それを使用していくつかのindentersを試すことができます:AStyle、Uncrustify、GreatCode、...あなたのためのベストを選択してください。それらのうちのどれでも後でコマンドラインから実行できます。


Uncrustify設定可能なオプションのたくさんを持っています。おそらくユニバーサルインデントGUI(コンスタンチンの返信で)も設定する必要があります。

+1

複雑なマクロがたくさんある不気味なソースファイルがあり、コードを変更する方法やブレークポイントを設定する方法を理解することが難しいです。私たちはgcc -Eを使ってそれをデ・マクロにしました。非常に長い行のネストされたforループ、if文などがありました。Astyleはそれを読めるように修正し、 Astyleは私のソフトウェアツールチェストに永久的な場所を持っています! – DarenW

+8

Vim tip:現在編集しているファイルのコードを美しくしたい場合、%!astyle – tonylo

+0

これは素晴らしいツールです。 MSVStudio(仕事中)とemacs(Linux)(自宅)の両方で、同じプロジェクトに取り組む必要があるたびに、私は毎度astyleを実行します。私はemacsとastyle(私はMSVCエディタで使用するスタイルに近い)でBSDスタイルを使用していますが、私はいつも適切にインデントされたソースコードを持っています。それはタブサイズとは関係なく美しく見えます! –

関連する問題