Haskell ऑफ़लाइन दस्तावेज़?


94

हास्केल कोर पुस्तकालयों (और शायद अधिक) के लिए ऑफ़लाइन डॉक्स प्राप्त करने के लिए, यदि कोई हो, तो क्या संभावनाएं हैं?

कभी-कभी मैं अपने लैपटॉप को कॉफ़ी-शॉप में ले जाता हूँ जहाँ कोई वाईफाई नहीं होता है, और यह अच्छा होगा कि हुगली जैसा कुछ हो लेकिन ऑफ़लाइन उपयोग के लिए।

जवाबों:


53

होईगल ऑफ़लाइन उपलब्ध है, जो किबल से उपलब्ध है: http://hackage.haskell.org/package/hoogle

उपयोग निर्देश http://www.haskell.org/haskellwiki/Hoogle#Command_Line_Search_Flags पर हैं

उपयोग:

$ hoogle --help
Hoogle v4.2.8, (C) Neil Mitchell 2004-2011
http://haskell.org/hoogle

hoogle [COMMAND] ... [OPTIONS]

Commands:
  [search]  Perform a search
  data      Generate Hoogle databases
  server    Start a Hoogle server
  combine   Combine multiple databases into one
  convert   Convert an input file to a database
  test      Run tests
  dump      Dump sections of a database to stdout
  rank      Generate ranking information
  log       Analyse log files

Common flags:
  -? --help     Display help message
  -V --version  Print version information
  -v --verbose  Loud verbosity
  -q --quiet    Quiet verbosity

एक डिफ़ॉल्ट डेटाबेस hoogle data( http://neilmitchell.blogspot.com/2008/08/hoogle-database-generation.html पर अधिक जानकारी के साथ ) बनाएँ ।

संपादित करें: स्थानीय रूप से हुगली स्थापित करने के बाद उपयोग का एक सत्र:

$ hoogle
No query entered
Try --help for command line options
$ hoogle data
(downloads databases...takes a few minutes)

मैं यहां एक त्रुटि में भाग गया ... जाहिरा तौर पर यह कैबाल के संस्करण से संबंधित है, इसलिए मैंने अपडेट किया कि (http://hackage.haskell.org/trac/hackage/ticket/811)। इससे मदद नहीं मिली, इसलिए मैं भाग गया hoogle data all, जिसे मैंने रद्द कर दिया था क्योंकि यह इतना समय ले रहा था (यह हैकेज पर हर पैकेज से गुजरता है)। यह अभी भी एक क्वेरी की तरह अनुमति नहीं देगा, hoogle mapलेकिन अनुमति दी hoogle map +base(यानी baseपैकेज को खोज को प्रतिबंधित करें ) उम्मीद है कि यह आपके लिए काम करता है!

EDIT2: यह समस्या को ठीक करने के लिए लगता है (मेरे लिए):

$cd .cabal/share/hoogle-4.2.8/databases
$hoogle combine base.hoo
$hoogle foldl\'
Data.List foldl' :: (a -> b -> a) -> a -> [b] -> a
Data.Foldable foldl' :: Foldable t => (a -> b -> a) -> a -> t b -> a

15
आप शायद documentation: Trueअपनी ~/.cabal/configफ़ाइल में जोड़कर और फिर उन पैकेजों को फिर से स्थापित करके अपने स्थापित पैकेजों के लिए दस्तावेज़ सक्षम करना चाहते हैं cabal install world --reinstall
हमर

2
hoogle data --localमुझे 3 मिनट लग गए (जिनमें से अधिकांश डाउनलोड हो रहा था) फिर मैं चला सकता हूं hoogle foldlजो फोल्ड फ़ंक्शन को ढूंढता है, या hoogle server --localफिर यात्रा http://localhost/जो कि एक पूर्ण सर्वर है और इसमें HTML प्रलेखन के लिंक शामिल हैं।
नील मिशेल

1
@NeilMitchell hoogle data allऔर hoogle data --localबहुत सारे सामान डाउनलोड / डाउनलोड करते हैं, लेकिन यह अभी भी मुझे संकुल (जैसे parseFileWithMode) में कार्य नहीं करने देता है । क्या यह काम करने वाला है?
nh2

1
@ nh2: डिफ़ॉल्ट रूप से Hoogle केवल प्लेटफ़ॉर्म को खोजता है, कोशिश करता हैhoogle +haskell-src-exts parseFile
नील मिशेल

1
hoogle server --localअधिक दृश्यता की जरूरत है। यह उदाहरण के लिए analogon है godoc -http
sjakobi

21

HTML प्रलेखन .tar.bz2को हास्केल वेबसाइट से डाउनलोड किया जा सकता है :

https://downloads.haskell.org/~ghc/latest/docs/

मैंने अभी https://www.haskell.org/ghc/docs/7.6.3/lbooks.html.tar.bz2 डाउनलोड किया है और यह वही है जो मैं उम्मीद कर रहा था।

अन्य विकल्प भी हैं, जैसे कि डैश और उत्साह , और यह भी देखें कि रेडिट थ्रेड


उत्तर तक नहीं :( ऐसा लगता है जैसे पहला लिंक टूट गया है।
MaiaVictor

वो रहा। धन्यवाद!
MaiaVictor

यह मेरे लिए सबसे अच्छा जवाब है, क्योंकि मैं उद्देश्य को प्राप्त करने में असमर्थ थाhoogle server --local
user24601

14

यदि आप हास्केल प्लेटफार्म स्थापित करते हैं तो इसमें जीएचसी डॉक्स और जीएचसी लाइब्रेरी डॉक्स (जो मुख्य पुस्तकालयों को कवर करते हैं) शामिल हैं। विंडोज पर वे "सभी कार्यक्रम | हास्केल प्लेटफार्म" के तहत स्टार्ट मेनू पर हैं।


यह जानकर बहुत अच्छा लगा। क्या लिनक्स पर ऐसा कुछ है?
एंड्री Drozdyuk

मुझे लगता है कि हास्केल प्लेटफॉर्म को अलग-अलग ओएस पर समान माना जाता है, लेकिन मैंने इसे लिनक्स पर कभी इस्तेमाल नहीं किया है। यदि आपने इसे स्थापित कर लिया है, तो आप फ़ाइल "Data-Binary.html" (डेटा के लिए डॉक्स) के लिए खोज करने का प्रयास कर सकते हैं। यह देखने के लिए कि डॉक्स कहीं स्थापित किए गए हैं या नहीं।
arx

4
@ डॉर्ज़ी: डेबियन / उबंटू पर, मेरा मानना ​​है कि ऐसे डॉक्यूमेंटेशन पैकेज हैं, जैसे haskell-platform-docआप इंस्टॉल कर सकते हैं।
li.davidm

haskell प्लेटफ़ॉर्म अब बनाए नहीं रखा जाएगा और यह हमेशा पुराना था, इसलिए मैंने इसे एक अच्छा जवाब नहीं माना
dredozubov

1
@dredozubov स्रोत? मैं इसके बारे में भविष्य में कुछ भी नहीं बता सकता।
एंड्री Drozdyuk

10

अपनी ~ / .cabal / config फाइल को संपादित करें। लाइन के लिए देखो (शायद टिप्पणी की) कि कहते हैं documentation: False। उस लाइन को documentation: Trueबदलकर उसे अनलिम करें। अब जब आप cabal installडॉक्यूमेंटेशन के साथ प्रोजेक्ट्स का निर्माण भी करेंगे और स्थानीय स्तर पर सहेजेंगे।

उसी कॉन्फिग फ़ाइल में थोड़ा और चारों ओर देखें और आपको डॉक-इंडेक्स-फाइल, डॉकडिर, डेटाडिर, उपसर्ग आदि जैसे विकल्प मिलेंगे जो आपको उस जगह को कॉन्फ़िगर करने की अनुमति देते हैं जहां प्रलेखन संग्रहीत है।


5

यह प्रति seonical "canonical" नहीं हो सकता है, लेकिन मेरा मानना ​​है कि सबसे उपयोगी विकल्प डैश (OS X) / zeal + जेनरेट किए गए डॉक्ससेट जैसे डॉक्ससेट सॉफ्टवेयर है । इस तरह आपको मुफ्त में खोज मिलेगी और आपके पास अपने कस्टम डॉक्ससेट बनाने का विकल्प भी होगा। बॉक्स से बाहर की किसी भी परियोजना के साथ 'आधार' पैकेज हैडॉक प्रलेखन प्राप्त करना कोई समस्या नहीं है। आप हडकोसेट या डैश- हैस्केल के साथ कस्टम डॉक्ससेट बना सकते हैं । इसके अलावा, यह emacs / vim / अन्य संपादकों के साथ अच्छी तरह से एकीकृत करता है, आपको प्रोजेक्ट-आधारित डॉक्ससेट देता है (आपके पास प्रति-प्रोजेक्ट के आधार पर संबंधित संस्करण होंगे, इस तरह की परेशानी को स्थानीय हुगले के साथ भूल जाएं!) और न करें आपको किसी भी निर्माण प्रवाह तक सीमित कर सकता है।

आप अपने प्रोजेक्ट का निर्माण तो साथ cabal-installआप सेट कर सकते हैं documentation: Trueअपने में ~/.cabal/configहै, तो पुनर्स्थापना उत्पन्न haddocks स्थानीय रूप से प्राप्त करने के लिए निर्भरता।

यदि आप स्टैक का उपयोग कर रहे हैं , तो आप उपयोग कर सकते हैंstack haddock अपनी निर्भरता बनाने के लिए कमांड का और जेनरेट किए गए हेडॉक्स के साथ प्रोजेक्ट कर सकते हैं।


3

मैं devdocs.io का उपयोग करता हूं , इसमें बहुत सी भाषाओं और पुस्तकालयों (हास्केल सहित) के लिए डॉक्स हैं और एक ऑफ़लाइन मोड है।


1

वेग बस करने के लिए एक स्वतंत्र और सुंदर सार्वभौमिक उपकरण है। यह भाषाओं, प्रौद्योगिकियों और पुस्तकालयों की एक विस्तृत श्रृंखला का समर्थन करता है, और एक क्लिक अपडेट करता है।

आप शायद इसके प्रलेखन सूची में पहले से ही उपयोग कर रहे हैं और अधिक पा सकेंगे।


1

विंडोज के लिए, cygwin के wget और कर्ल पैकेज स्थापित करें। वह सक्षम हो जाएगा hoogle data


0

यदि आप एक डेबियन व्युत्पन्न वितरण और उनके पैकेज का उपयोग कर रहे हैं, तो आपको सभी स्थापित हास्केल पैकेज (यदि आप भी libghc-foo-docपैकेज स्थापित करते हैं) का संयुक्त प्रलेखन मिलेगा

file:///usr/share/doc/ghc-doc/html/libraries/index.html

इसके अलावा, libghc-foo-docपैकेजों में घेरा के लिए आवश्यक फाइलें हैं, इसलिए यदि आप apt-get install hoogle, तो आप तुरंत hoogleइस तरह से स्थापित सभी पुस्तकालयों के माध्यम से खोज करने में सक्षम हो सकते हैं ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.