документация для конфигурационного файла cabal-install - PullRequest
15 голосов
/ 06 июля 2011

~/.cabal/config хранит конфигурацию, которую использует cabal-install. Я хотел поработать над этим. (В частности, если установлено несколько версий GHC, я хочу иметь отдельные индексы документации).

Однако я не смог найти никакой документации о его синтаксисе или переменных, за исключением того, что включено в файл по умолчанию. Есть ли доступная документация?

Редактировать: я поставил цель выше, но позвольте мне добавить некоторые детали: если один и тот же пакет (например, GTK) установлен в двух версиях GHC, они попадают в один и тот же индексный файл документации. Я не хочу, чтобы этот локальный индекс документации был отдельным для каждой установки GHC. Я полагаю, что это возможно в некотором роде, используя настройки каталога документации, но должна быть переменная для используемой в настоящее время версии GHC. Если его нет, возможно, есть обходные пути, но я не смогу сказать это, пока не увижу документацию.

Ответы [ 2 ]

9 голосов
/ 15 июля 2011

Кажется, это работает, хотя я тестировал только одну версию GHC:

documentation: True
doc-index-file: $datadir/doc/$compiler/index.html

install-dirs user
    docdir: $datadir/doc/$compiler/$pkgid

Если другие параметры остаются по умолчанию, создается документация в .cabal/share/doc/<ghc-version>/<package-name>, а индекс в .cabal/share/doc/<ghc-version>/index.html.

3 голосов
/ 08 июля 2011

Кажется, что в сети очень мало - даже пикш для кода установки cabal.Таким образом, ваш лучший выбор может заключаться в том, чтобы выяснить это из источника.cabal unpack cabal-install, или посмотрите cabal-install repo онлайн.Посмотрите на SavedConfig в Distribution / Client / Config.hs.Например, он импортирует GlobalFlags из Setup.hs;отдельные флаги, например globalCacheDir, связаны с их синтаксисом файла конфигурации (который также является синтаксисом командной строки) в приведенной ниже функции globalCommand, в данном случае remote-repo-cache.

Вам следуеттакже спросите dcoutts в канале #haskell на irc.freenode.net, если у него есть новые доступные документы.

...