2

Haddock では、「インライン コード」¹ マークアップは@...@、「コード ブロック」マークアップと同じです。

@
...
@

ブロックとして誤解されることなく、インラインコード スパンのみで構成される単一行の Haddock コメントを記述するにはどうすればよいですか? みたいなコメント

-- |@/code/ span@

ブロックとしてレンダリング

コードスパン

目的のインラインの代わりに

code span

より多くの例が役立つ場合のコンテキストは、BNF 文法を表すデータ型を作成しているため、次のような多くの型があるということです。

-- |@/term/ ::=@
data Term = Var Name       -- ^@/name/@
          | Plus Term Term -- ^@/term/ + /term/@
          | Print Term     -- ^@print /term/@

この例は、文法に対応しています

用語::=名前
      |  期間+期間
      | 印刷用語

そのため、文法は Haddock コメントに埋め込まれています。しかし、Haddock はこれらの@...@コメントをブロックとして解析するため、出力は不必要に高くなり、一部の行に余分なコメント テキストがあると一貫性がなくなります (例: -- ^@double /term/@ – syntax sugar)。


¹ 別名「モノスペース」または「タイプライター」。

4

1 に答える 1

1

ここに提案された汚いハックがあります。あなたの問題は、あなたの行にはテキストではなくコードしかないということですよね?コードの後に​​、意味のないテキストを少し追加してください。この形式を使用して&#xH;、Unicode 文字の 16 進コード (幅ゼロや改行なしのスペースなど) を挿入できます。これにより、ブロックコンテキストではなくインラインであることをハドックに納得させることができると思います。

于 2016-03-18T07:33:02.943 に答える