হাস্কেল কোর লাইব্রেরিগুলির (এবং আরও বেশি) অফলাইন ডক্স পাওয়ার জন্য কী কী সম্ভাবনা রয়েছে?
কখনও কখনও আমি আমার ল্যাপটপটি কফি- শপটিতে নিয়ে যাই যেখানে কোনও ওয়াইফাই নেই, এবং এটি হুগলের মতো কিছু থাকলেও অফলাইনে ব্যবহারের জন্য ভাল লাগবে ।
হাস্কেল কোর লাইব্রেরিগুলির (এবং আরও বেশি) অফলাইন ডক্স পাওয়ার জন্য কী কী সম্ভাবনা রয়েছে?
কখনও কখনও আমি আমার ল্যাপটপটি কফি- শপটিতে নিয়ে যাই যেখানে কোনও ওয়াইফাই নেই, এবং এটি হুগলের মতো কিছু থাকলেও অফলাইনে ব্যবহারের জন্য ভাল লাগবে ।
উত্তর:
এইচটিএল অফলাইনে উপলব্ধ, ক্যাবল থেকে ইনস্টলযোগ্য: http://hackage.haskell.org/package/hoogle
ব্যবহারের নির্দেশাবলী http://www.haskell.org/haskellwiki/Hoogle#Command_Line_S 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
প্যাকেজটিতে সীমাবদ্ধ রাখে ) আশা করি এটি আপনার পক্ষে কাজ করে!
সম্পাদনা 2: এটি সমস্যার সমাধান করতে পারে বলে মনে হচ্ছে (আমার জন্য):
$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
hoogle data --local
আমাকে 3 মিনিট সময় নিয়েছে (যার বেশিরভাগ ডাউনলোড করা ছিল) আমি তখন চালাতে পারি hoogle foldl
যা ভাঁজ ফাংশনটি খুঁজে পায় বা hoogle server --local
তারপরে পরিদর্শন করতে পারে http://localhost/
যা পুরো সার্ভার উভয়ই রয়েছে এবং এতে HTML ডকুমেন্টেশনের লিঙ্ক অন্তর্ভুক্ত রয়েছে।
hoogle data all
এবং hoogle data --local
প্রচুর স্টাফ ডাউনলোড / ডাউনলোড করুন, তবে এটি এখনও প্যাকেজগুলিতে ফাংশন সন্ধান করতে দেয় না (যেমন parseFileWithMode
)। এটি কি কাজ করার কথা?
hoogle +haskell-src-exts parseFile
hoogle server --local
আরও দৃশ্যমানতা প্রয়োজন। এটি যেমন এনালগন godoc -http
।
এইচটিএমএল ডকুমেন্টেশন .tar.bz2
হাস্কেল ওয়েবসাইট থেকে ডাউনলোড করা যেতে পারে :
https://downloads.haskell.org/~ghc/latest/docs/
আমি সবেমাত্র https://www.haskell.org/ghc/docs/7.6.3/libraries.html.tar.bz2 ডাউনলোড করেছি এবং এটি ঠিক আমি আশা করছিলাম।
এছাড়াও অন্যান্য বিকল্প রয়েছে যেমন ড্যাশ এবং জিল , এবং সেই reddit থ্রেডও দেখুন ।
hoogle server --local
যদি আপনি হাস্কেল প্ল্যাটফর্মটি ইনস্টল করেন তবে এতে জিএইচসি ডক্স এবং জিএইচসি লাইব্রেরি ডকস অন্তর্ভুক্ত রয়েছে (যা মূল পাঠাগারগুলিকে অন্তর্ভুক্ত করে)। উইন্ডোজ এ তারা "সমস্ত প্রোগ্রাম | হাস্কেল প্ল্যাটফর্ম" এর অধীনে স্টার্ট মেনুতে রয়েছে।
haskell-platform-doc
আপনি ইনস্টল করতে পারেন।
আপনার ~ /। ক্যাবল / কনফিগারেশন ফাইলটি সম্পাদনা করুন। লাইনটি দেখুন (সম্ভবত মন্তব্য করা হয়েছে) যা বলেছে documentation: False
। সেই লাইনটি documentation: True
এটিকে পরিবর্তন করুন এবং এটিকে অসম্পূর্ণ করুন। এখন আপনি cabal install
ডকুমেন্টেশন সহ প্রকল্পগুলি তৈরি করার সময় স্থানীয়ভাবেও নির্মিত এবং সংরক্ষণ করা হবে।
একই কনফিগার ফাইলে আরও কিছুটা ঘুরে দেখুন এবং ডক-ইনডেক্স-ফাইল, ডকডির, ডাটাডির, উপসর্গ ইত্যাদির মতো বিকল্পগুলি পাবেন যা আপনাকে যেখানে ডকুমেন্টেশন সঞ্চিত আছে তা কনফিগার করতে দেয়।
এমনও হতে পারে না "ক্যাননিকাল" কোনটাই, কিন্তু আমি বিশ্বাস করি যে সবচেয়ে দরকারী বিকল্প মত একটি docset সফটওয়্যার ড্যাশ (OS X এর) / উৎসাহ + + উত্পন্ন docsets। এইভাবে আপনি নিখরচায় অনুসন্ধান পাবেন এবং আপনার কাস্টম ডসেটগুলি তৈরি করার একটি বিকল্পও পাবেন। বক্সের বাইরে যে কোনও প্রকল্পের সাথে 'বেস' প্যাকেজ হ্যাডক ডকুমেন্টেশন পেতে কোনও সমস্যা নেই। আপনি হ্যাডডোসেট বা ড্যাশ- হ্যাশেল দিয়ে কাস্টম ডকসেট তৈরি করতে পারেন । এছাড়াও এটি ইমাস / ভিআইএম / অন্যান্য সম্পাদকদের সাথে দুর্দান্তভাবে সংহত করে, আপনাকে প্রকল্প-ভিত্তিক ডকসেটগুলি রাখার অনুমতি দেয় (আপনার প্রতি প্রকল্পের ভিত্তিতে প্রাসঙ্গিক সংস্করণ থাকবে, স্থানীয় এই গুগলের সাথে এই সমস্ত ঝামেলা ভুলে যাবেন!) এবং না আপনার যে কোনও বিল্ড ফ্লোতে সীমিত রাখুন।
আপনি যদি নিজের প্রকল্পটি cabal-install
সেট করে documentation: True
রাখতে পারেন ~/.cabal/config
তবে আপনি স্থানীয়ভাবে উত্পন্ন হ্যাডকগুলি পেতে নির্ভরতা পুনরায় ইনস্টল করুন।
আপনি যদি স্ট্যাক ব্যবহার করছেন তবে আপনি stack haddock
উত্পাদিত হ্যাডকগুলি সহ আপনার নির্ভরতা এবং প্রকল্প তৈরি করতে কমান্ডটি ব্যবহার করতে পারেন ।
আমি ডেভডোকস.ইও ব্যবহার করি , এতে প্রচুর ভাষা এবং গ্রন্থাগার (ডেস্ক রয়েছে হাসকল ) সহ এবং এতে একটি অফলাইন মোড রয়েছে।
আপনি যদি ডেবিয়ান থেকে প্রাপ্ত ডিস্ট্রিবিউশন এবং তাদের প্যাকেজগুলি ব্যবহার করে থাকেন তবে আপনি সমস্ত ইনস্টল করা হাস্কেল প্যাকেজগুলির সংযুক্ত ডকুমেন্টেশন (যদি আপনি libghc-foo-doc
প্যাকেজগুলি ইনস্টল করেন ) পাবেন
file:///usr/share/doc/ghc-doc/html/libraries/index.html
তদ্ব্যতীত, libghc-foo-doc
প্যাকেজগুলিতে hoogle এর জন্য প্রয়োজনীয় ফাইল রয়েছে, তাই যদি আপনি থাকেন apt-get install hoogle
তবে আপনাকে অবিলম্বে এইভাবে hoogle
ইনস্টল করা সমস্ত লাইব্রেরির মধ্যে অনুসন্ধান করতে সক্ষম হওয়া উচিত ।
documentation: True
জন্য আপনার~/.cabal/config
ফাইলটিতে যুক্ত করে এবং সেই প্যাকেজগুলি পুনরায় ইনস্টল করে ডকুমেন্টেশন সক্ষম করতে চানcabal install world --reinstall
।