3

スナップショット データベースに一連のパッケージをインストールしました。ドキュメントのローカル コピーが欲しいです (ハイパーリンクされたソースがあればさらに良いでしょう)。それらすべてでstack実行するように指示できる方法はありますか?haddock

編集(私の答えからコピー):

明らかstack haddock packageに、パッケージの haddock をインストールするようですので、

$ cd ~/.stack/snapshots/x86_64-linux/lts-3.0/7.10.2/doc
$ stack haddock *

2つの欠点がありますが、私が望むことをしているようです:

  1. 私はまだ--haddockフラグをすべてに渡すことを覚えておく必要がありますbuild(~/.stack/configファイルはありませんか?)
  2. それらを再構築するようです。それを避ける方法はありますか?
4

2 に答える 2

0

ステップ 1. 最新の haddock をダウンロードしてビルドします。ビルド手順は にありREADME.mdます。

git clone https://github.com/haskell/haddock.git
cd haddock

cabal sandbox init
cabal sandbox add-source haddock-library
cabal sandbox add-source haddock-api
cabal install --dependencies-only
cabal build

次に、新しいハドックを次のようにインストールしますhaddock.real

cp dist/build/haddock/haddock /some/bin/dir/haddock.real

ステップ 2. 次の名前のラッパー スクリプトを作成しますhaddock

#!/bin/sh

/some/bin/dir/haddock.real --hyperlinked-source "$@"

実行可能にしてパスに入れることを忘れないでください。

ステップ 3. ダウンロードしてビルドしstandalone-haddockます。

mkdir build-standalone-haddock
git clone https://github.com/feuerbach/standalone-haddock.git
cd standalone-haddock
cabal build
cp dist/build/standalone-haddock/standalone-haddock /some/bin/dir/

使用方法の例standalone-haddock:

mkdir temp
cd temp
cabal get heredoc-0.2.0.0
standalone-haddock -o doc heredoc-0.2.0.0

次にdoc/heredoc/index.html、ブラウザで開きます。

タイプ定義に移動するとSource、右側にリンクが表示され、新しいハイパーリンク ソースに移動します。

于 2015-08-23T21:58:47.517 に答える