MediaWikiのフォーマットは複雑で、さまざまなパラダイムや文法と組み合わされており、phpとMediaWiki自体なしでは変換できないと言われていました。
Clang RewriterをハッキングしてMediaWikiテキストをHTMLに書き換えることは可能ですか?Clangをハッキングして、これらのテンプレートを再帰的に補間することはできますか?
編集:私は完璧な結果を期待していません、これがもっともらしいかどうか疑問に思います。
Clangが役立つとは思えません。それは本当に、本当に、Cのような言語のコンパイラになりたいと思っています。特に、C / C ++ / ObjectiveC用の手書きのパーサーがあることは理解しており、そのパーサーを曲げようとしても意味がないと思います。解析後、プログラムを表す必要があります。ClangのASTクラスは、実際には、そのターゲット言語をモデル化することを目的としています。
あなたが欲しいのはプログラム変換システムだと思います。これらのツールは、任意の言語の文法を提供し、ソース間の書き換えを使用して変更を加えることができるように設計されています。
当社のDMSソフトウェアリエンジニアリングツールキットはその1つです。非常に強力な解析サポートを提供します。IBM COBOL、Java、HTML、C ++、Verilogなどのさまざまな言語を解析して、そのスパンを把握できます。一度に複数の言語定義を受け入れます。これにより、ある言語を別の言語にマップするソースからソースへの変換を記述できます。これは、あなたがやりたいことのようです。(ソースからソースへの変換のアイデアは非常にうまく機能し、他のPTSは純粋なソースからソースですが、実際問題として、純粋なsからsで翻訳ツールを実装するのは少し厄介です。 DMSは、手続き型コードを組み合わせて推論を計算し、s-to-sを組み合わせてその効果を実現します)。
複雑な状況(あなたがやりたいように思われる)のために本当の翻訳者を構築することは、PTSを使っても簡単ではありません。間違った機械を仕事に曲げようとするよりもはるかに実用的です。
他のコメント投稿者が観察しているように、MediaWiki入力からHTMLへの実際のマッピングをリバースエンジニアリングするという追加のタスクもあります。