moduleには、 moduleのメンバーにB
リンクする link を含むドキュメントがあります。モジュールでは、モジュールをインポートします。Haddock は、これを へのリンクとしてレンダリングします。つまり、 にある関数ではなく、タイプ(存在しない) を指します。'A.foo'
foo
A
A
B
A.html#t:foo
foo
foo
A.html#v:foo
t:
Haddockが小文字で始まる変数にリンクするのはなぜですか? それはバグですか?'A.Foo'
型またはコンストラクターである可能性があるため、名前空間の問題があります。foo
変数は、少なくとももっともらしいと思われるからです。- リンクを偽造する方法はありますか? これをコードサンプルで書いているので、 としてレンダリングする必要があります
foo
。アンカーを試しましたが、それらはモジュール名としてレンダリングされ、直接ハイパーリンクの場合、表示されるテキストを制御できません。 - 私はポスト プロセッサを検討しました ( に置き換えます
t:[a-z]
)v:
が、これにはカスタムの Setup.hs が必要であり、問題が発生し、非常に見苦しくなります。 foo
変数であると指定するなど、より合理的な動作を得るための Haddock コマンド ライン フラグが見つかりませんでした。- 循環インポートを導入せずに
A
toのインポートを追加することはできません。これは、純粋にドキュメントのために追加するのは下劣です。B
Shake documentationでこの問題に遭遇しています。例としてremoveFilesAfter
、正しいリンクが得られません。