Ich möchte hoogle
auf einem Projekt von mir laufen lassen. Ich habe die Hoogle-Datenbank (eine Datei mit der Erweiterung .hoo
) aus meinem Projekt erfolgreich erstellt. Aber wenn ich den Server lokal ausführe, kann hoogle keine der Funktionen oder Typen finden, die in meinem Projekt definiert sind. Es kann einige der Prelude-Funktionen wie map
finden, aber keine der Funktionen, die in meinem Projekt definiert sind. hoogle dump my-project.hoo
speichert den Inhalt ohne Fehler ab. Ich bewegte auch my-project.hoo
zu ~/.cabal/share/x86_64-osx-ghc-7.8.4/hoogle-4.2.38/databases
, wo alle .hoo
Dateien liegen. Kein Erfolg mehr. -verbose
Switch gibt auch keine nützlichen Informationen aus. Jeder Vorschlag wird geschätzt.Hoogle lokal ausführen
Edit:
Dank mhuesch
‚s Vorschlag, konnte ich die Suchergebnisse erhalten. Die zurückgegebenen Ergebnisse sind jedoch nicht mit den lokalen Hack-Dokumenten verknüpft. Etwas, das ich nirgendwo im Internet finden konnte, ist, dass der Hoogle Server im aktuellen Verzeichnis nach einer Datei namens default.hoo
sucht.
Edit 2:
Wenn Sie, wie ich, haben 5000+ Datenbanken (heißt, .hoo
-Dateien) Sie können eine "zu viele offene Dateien" Fehlermeldung erhalten, wenn sie kombiniert werden. Der Trick ist einfach: Führen Sie hoogle combine x*.hoo -o=parts/x.hoo
für alle x='a' ... 'z'
und dann im Teileordner ausführen.
bearbeiten 3:
Wenn Sie Ihre Hoogle Suchergebnisse mit lokalen Hackage Dokumentation verknüpfen, Verwendung hoogle convert --doc='absolute-path-to-your-doc' your-package-hoogle-doc.txt default.hoo
. Ich konnte relativen Pfad nicht arbeiten.
AFAIK müssen Sie 'hoogle kombinieren', um Ihre Datenbank dort zu bekommen - leider sind alle Online-Dokumente jetzt deadlinked und ich kann die Details nicht finden - Ich bin sicher, dass jemand so schnell wie möglich helfen wird – Carsten
The [Ganeti] (http://code.google.com/p/ganeti/) Das Projekt hat ein [repository] (http://git.ganeti.org/?p=ganeti -hoogle.git) mit einer lockeren Rolle, die das Einrichten eines Hoogle-Webservers automatisiert von Grund auf, der den gesamten Haskell-Code des Projekts indiziert. Vielleicht könnte es für Sie hilfreich sein. (Disclaimer: Ich bin in das Projekt involviert.) –