2017-01-16 6 views
1

doxygen 1.8.13を使用して、マークダウンコードで自動リンクを生成するにはどうすればよいですか?Doxygenがマークダウンコードブロックで自動リンクを生成しない

TEST.H

/** 
* Function foo. 
* This is a code snippet in markdown format: 
* 
*   foo("Hello World!!!"); 
* 
* This is a regular code snippet: 
* \code 
* foo("Hello World!!!"); 
* \endcode 
**/ 
void foo(const char *hello); 

、次のコンパニオンファイル:

# Markdown Test 

This is a code snippet in markdown format: 

    foo("Hello World!!!"); 

This is a regular code snippet: 
\code 
foo("Hello World!!!"); 
\endcode 

出力をtest.md

例えば、私は、次の2つのファイルを持っていますこれらのファイルでdoxygenを実行すると、次のようになります。

TEST.H enter image description here

二スニペットはfooのリンクを生成しましたが、最初はしていないか注意してください。また、フォーマットはかなり異なっている -

スニペットのいずれもfoo機能へのリンクを生成していないか

enter image description here

お知らせtest.md。

質問:doxygenを設定して、マークダウンドキュメントのコードセクションに自動リンクが生成されるようにする方法がありますか?

答えて

2

私自身の質問に答える。

  • 私が見るところでは、doxygenはインデントされたコードブロックを適切に強調表示しません。コードとして書式を設定しますが、コードの言語を推測することはしません。 。これは、フェンスで囲まれたコードブロック使用することによってでは解決することができます - それはで発見されたファイルの同じ言語であると想定されますこれは期待通りに動作します:

がfoo.h

/** 
* Function foo. 
* This does not work properly: 
* 
*   foo("Hello World!!!"); 
* 
* But this does: 
* ``` 
* foo("Hello World!!!"); 
* ``` 
**/ 
void foo(const char *hello); 
  • コードサンプルをマークダウンファイル(.md)に書き込むとき、doxygenは自動的にコード言語を推測しません。 .mdファイルにコード例をホスティングするときの解決策は、単に言語を指定することでした。その後、自動リンクが適切に生成されます。

# Markdown Test 

This does not work properly: 

    foo("Hello World!!!"); 

But this does 
```{cpp} 
foo("Hello World!!!"); 
``` 
をfoo.md
関連する問題