2009-05-30 8 views
14

私は非常に大きなオープンソースのRTSゲームエンジン(Spring)に取り組んでいます。私は最近、Luaが呼び出し可能な新しいC++関数を追加し、それらを最もよく文書化する方法を疑問に思っていました。同時に、人々はのドキュメントを書いたり更新したりすることを刺激して、既存のLua呼び出しの多くをにしました。doxygenコメントを編集するための「wiki」がありますか?

C++関数の近くで最初にドキュメントをdoxygenコメントとして書くことができればうれしいかもしれないと思いました。これは関数本体が関数の動作を正確に定義しているためです。しかし、git(私たちが使っているVCS)やC++についてほとんど理解していないエンジンを使って、ゲーム開発者がドキュメントを改善したいと思っています。

したがって、C++ファイルから自動的にapidocを生成する方法があるだけでなく、より多くのオーディエンスがコメントを更新したり、例を追加したりするためのwiki風のWebインターフェイスを持つのが理想的です。

doxygenスタイルの書式設定、それらのコメントの編集(できればソースファイルの他の部分を編集することなく)、gitを統合するWebツールが存在するのでしょうか?

開発者はこのたびにこのブランチをマージしてから、改善点をマスターブランチに追加すると同時に、開発者による改善をドキュメントは、この特別なブランチにマスターブランチをマージしただけで、このWebツールで終了します。

まだ何も見つかりませんでしたが、この特定のものがまだ存在しているかどうかは疑問です。

+1

クールなアイデア。私はそれが好きです:) –

+2

+1、非常に涼しい...実際には、おそらく "コアデベロッパー"にとっても便利です。もしフォーマットされたドキュメントの編集経験を編集(時には隠された)マークアップよりもうまく行かせるならば。 – unwind

+0

良い点、私はそれも考えていませんでした:-) – Tobi

答えて

6

これは実際には非常にクールなアイデアです。数年前、私はそのようなものの必要性も非常に強かったのです。残念なことに、少なくとも当時、私はそのようなものを見つけることができませんでした。 sourceforgeとfreshmeatのクイック検索を行うことで、今日の関連するものは何も出てこない。

しかし、このようなWikiのフロントエンドは非常に役に立つと思っています。私はこのようなことが最近Luaコミュニティー(this参照)でも議論されていたことを知っています。

したがって、基本的な作業草案/プロトタイプを作成するために、要件を決定できますか?

このようなプロジェクトを最小限の機能で開始し、オープンソースプロジェクト(sourceforgeなど)として野生にリリースするだけで、他のユーザーが貢献できるようになると思います。

理想的には、統一パッチを使用して、このような方法で提供された変更を適用することができます。また、テキストの任意の変更を許可するのではなく、コメントの追加/編集のみを制限することはおそらく意味がありますが、これはおそらく単純な正規表現を使用して実装できます。

おそらく、メディアウィキのような既存の(確立された)wikiソフトウェアを変更することによって、そのようなものを実装することができます。あるいは、すでにgitを格納目的でバックエンドとして使用しているものが好ましいでしょう。それでは、主にDoxygenスタイルのコメントに対応し、その上にシンプルなインターフェイスを提供する必要があります。

もう少し考えてみると、DoxyGen自体はすでにHTMLドキュメントを生成するためのサポートを提供しています。その観点から見ると、DoxyGenを拡張する可能性があるため、実際にこのようなスクリプトバックエンド埋め込みソースコードのドキュメントを簡単にカスタマイズすることができます。

これは主にdoxygen(例えばpython、php、perlなど)を使ってスタンドアロンスクリプトを提供し、オプションで自動的に作成されたHTML文書にフォームを埋め込むことで、文書の修正/補足を対応するブラウザを介してスクリプトを実行すると、対応するブランチに変更が書き戻されます。

長期的には、このようなスクリプトがさまざまなタイプのバックエンド(CVS、SVN、git)をサポートするか、少なくとも簡単に拡張できるように一般的に十分に実装されていれば涼しいでしょう。

我々は良いデザインを考え出すことができるのであれば、それもまた、全体のことに多くのより多くの露出と運動量を与えることになる、そのような変更が、一般的に自分自身をdoxygenがへの貢献として受け入れられることは可能かもしれません。

アイデアが実際のプロジェクトに直接反映されない場合でも、他の多くのユーザーがこのアイデアを実際に気に入っているかどうかを知ることは興味深いので、Doxygen Todoウェブサイトで言及することができます。

編集:this"Documentation, Git and MediaWiki"というタイトルの記事もご覧ください。

+0

私はこのようなwikiを使わずにこれをやっている私たちの現在の方法について、関連する他の質問にちょうど答えました(明らかに、使用されているSCMシステムとうまく統合されたwiki-solutionを好むでしょう):http:// stackoverflow。 com/questions/961601/how-to-get-the-no-no-documentがある場合のソフトウェアの構造/ 962169#962169 – none

関連する問題