[Pkg-haskell-commits] darcs: haskell-hoogle: mkdir file_hoogle for hoogle package specific files

kiwamu at debian.or.jp kiwamu at debian.or.jp
Tue Sep 11 11:45:00 UTC 2012


Tue Sep 11 11:17:28 UTC 2012  kiwamu at debian.or.jp
  * mkdir file_hoogle for hoogle package specific files
  Ignore-this: 6e89a3c0a6118245f80033545991eeed

     ./apache.conf -> ./files_hoogle/hoogle.conf
     ./haddock_collect.hs -> ./files_hoogle/haddock_collect.hs
     ./keyword.txt -> ./files_hoogle/keyword.txt
     ./update-hoogle -> ./files_hoogle/update-hoogle
    A ./files_hoogle/
    M ./hoogle.install -2 +3
    M ./rules -2 +2

Tue Sep 11 11:17:28 UTC 2012  kiwamu at debian.or.jp
  * mkdir file_hoogle for hoogle package specific files
  Ignore-this: 6e89a3c0a6118245f80033545991eeed
diff -rN -u old-haskell-hoogle//apache.conf new-haskell-hoogle//apache.conf
--- old-haskell-hoogle//apache.conf	2012-09-11 11:45:00.290325057 +0000
+++ new-haskell-hoogle//apache.conf	1970-01-01 00:00:00.000000000 +0000
@@ -1,21 +0,0 @@
-# Apache config for hoogle
-
-# resource dir
-Alias /hoogle/ /usr/share/hoogle/resources/
-<Directory "/usr/share/hoogle/resources">
-    Options -Indexes FollowSymLinks MultiViews
-    AllowOverride None
-    order deny,allow
-    deny from all
-    allow from localhost 127.0.0.1
-</Directory>
-
-# Disable execution of hoogle from remote hosts
-<Location /cgi-bin/hoogle>
-    order deny,allow
-    deny from all
-    allow from localhost 127.0.0.1
-    # allow from .your_domain.com
-</Location>
-
-# End hoogle config
diff -rN -u old-haskell-hoogle//files_hoogle/haddock_collect.hs new-haskell-hoogle//files_hoogle/haddock_collect.hs
--- old-haskell-hoogle//files_hoogle/haddock_collect.hs	1970-01-01 00:00:00.000000000 +0000
+++ new-haskell-hoogle//files_hoogle/haddock_collect.hs	2012-09-11 11:45:00.374324361 +0000
@@ -0,0 +1,54 @@
+#!/usr/bin/runhaskell
+{-# OPTIONS -Wall #-}
+
+import Data.List
+import Data.Char
+import System.Environment
+import System.FilePath
+import qualified Data.ByteString.Lazy as BL
+import qualified Data.ByteString.Lazy.Char8 as BL8
+import Codec.Compression.GZip
+
+type URL = String
+
+-- copy from hoogle/src/Recipe/Hackage.hs
+haddockHacks :: [String] -> [String]
+haddockHacks = map (unwords . map f . words) . filter (not . isPrefixOf "@version ")
+    where
+        f "::" = "::"
+        f (':':xs) = "(:" ++ xs ++ ")"
+        f ('!':'!':x:xs) | isAlpha x = xs
+        f ('!':x:xs) | isAlpha x || x `elem` "[(" = x:xs
+        f x | x `elem` ["[overlap","ok]","[incoherent]"] = ""
+        f x = x
+
+haddockPackageUrl :: URL -> [String] -> [String]
+haddockPackageUrl x = concatMap f
+    where f y | "@package " `isPrefixOf` y = ["@url " ++ x, y]
+              | otherwise = [y]
+-- copy end
+
+filterHaddock :: URL -> String -> String
+filterHaddock url = unlines . haddockHacks . haddockPackageUrl url . lines
+
+readFileGz :: FilePath -> IO String
+readFileGz file
+  | takeExtension file == ".gz" = do
+    c <- BL.readFile file
+    return $ BL8.unpack . decompress $ c
+  | otherwise = readFile file
+
+readAndPrint :: URL -> FilePath -> FilePath -> IO ()
+readAndPrint prefix outdir file = do
+  f <- readFileGz file
+  writeFile outfile $ filterHaddock url f
+    where dropgz f | takeExtension f == ".gz" = dropExtension f
+                   | otherwise                = f
+          outfile = outdir </> takeFileName (dropgz file)
+          url = prefix ++ dropFileName file
+
+main :: IO ()
+main = do
+  [p, o] <- getArgs
+  c <- getContents
+  mapM_ (readAndPrint p o) (lines c)
diff -rN -u old-haskell-hoogle//files_hoogle/hoogle.conf new-haskell-hoogle//files_hoogle/hoogle.conf
--- old-haskell-hoogle//files_hoogle/hoogle.conf	1970-01-01 00:00:00.000000000 +0000
+++ new-haskell-hoogle//files_hoogle/hoogle.conf	2012-09-11 11:45:00.378326011 +0000
@@ -0,0 +1,21 @@
+# Apache config for hoogle
+
+# resource dir
+Alias /hoogle/ /usr/share/hoogle/resources/
+<Directory "/usr/share/hoogle/resources">
+    Options -Indexes FollowSymLinks MultiViews
+    AllowOverride None
+    order deny,allow
+    deny from all
+    allow from localhost 127.0.0.1
+</Directory>
+
+# Disable execution of hoogle from remote hosts
+<Location /cgi-bin/hoogle>
+    order deny,allow
+    deny from all
+    allow from localhost 127.0.0.1
+    # allow from .your_domain.com
+</Location>
+
+# End hoogle config
diff -rN -u old-haskell-hoogle//files_hoogle/keyword.txt new-haskell-hoogle//files_hoogle/keyword.txt
--- old-haskell-hoogle//files_hoogle/keyword.txt	1970-01-01 00:00:00.000000000 +0000
+++ new-haskell-hoogle//files_hoogle/keyword.txt	2012-09-11 11:45:00.382323887 +0000
@@ -0,0 +1,849 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
+	<head>
+		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+				<meta name="keywords" content="Keywords,Abstract syntax tree,Arrow notation,Constructor,Cunning Newtype Deriving,Foreign Function Interface,Functional dependencies,GADT,Hoogle,Implicit parameters,Import" />
+		<link rel="shortcut icon" href="/favicon.ico" />
+		<link rel="search" type="application/opensearchdescription+xml" href="/haskellwiki/opensearch_desc.php" title="HaskellWiki (English)" />
+		<link title="Creative Commons" type="application/rdf+xml" href="/haskellwiki/index.php?title=Keywords&action=creativecommons" rel="meta" />
+		<link rel="copyright" href="/haskellwiki/HaskellWiki:Copyrights" />
+<link rel="alternate" type="application/rss+xml" title="HaskellWiki RSS Feed" href="http://www.haskell.org/haskellwiki/index.php?title=Special:Recentchanges&feed=rss" />
+<link rel="alternate" type="application/atom+xml" title="HaskellWiki Atom Feed" href="http://www.haskell.org/haskellwiki/index.php?title=Special:Recentchanges&feed=atom" />
+		<title>Keywords - HaskellWiki</title>
+		<style type="text/css" media="screen, projection">/*<![CDATA[*/
+			@import "/wikistatic/skins//common/shared.css?116";
+			@import "/wikistatic/skins//hawiki/main.css?116";
+		/*]]>*/</style>
+		<link rel="stylesheet" type="text/css" media="print" href="/wikistatic/skins//common/commonPrint.css?116" />
+		<!--[if lt IE 5.5000]><style type="text/css">@import "/wikistatic/skins//hawiki/IE50Fixes.css?116";</style><![endif]-->
+		<!--[if IE 5.5000]><style type="text/css">@import "/wikistatic/skins//hawiki/IE55Fixes.css?116";</style><![endif]-->
+		<!--[if IE 6]><style type="text/css">@import "/wikistatic/skins//hawiki/IE60Fixes.css?116";</style><![endif]-->
+		<!--[if IE 7]><style type="text/css">@import "/wikistatic/skins//hawiki/IE70Fixes.css?116";</style><![endif]-->
+		<!--[if lte IE 7]><script type="text/javascript" src="/wikistatic/skins//hawiki/IEFixes.js?116"></script>
+		<meta http-equiv="imagetoolbar" content="no" /><![endif]-->
+                                                <script type="text/javascript">
+                        var isMSIE55 = (window.showModalDialog && window.clipboardData && window.createPopup); /*alert("test: " + isMSIE55);*/</script>
+
+		<script type= "text/javascript">/*<![CDATA[*/
+var skin = "hawiki";
+var stylepath = "/wikistatic/skins/";
+var wgArticlePath = "/haskellwiki/$1";
+var wgScriptPath = "/haskellwiki";
+var wgScript = "/haskellwiki/index.php";
+var wgServer = "http://www.haskell.org";
+var wgCanonicalNamespace = "";
+var wgCanonicalSpecialPageName = false;
+var wgNamespaceNumber = 0;
+var wgPageName = "Keywords";
+var wgTitle = "Keywords";
+var wgAction = "view";
+var wgRestrictionEdit = [];
+var wgRestrictionMove = [];
+var wgArticleId = "1373";
+var wgIsArticle = true;
+var wgUserName = null;
+var wgUserGroups = null;
+var wgUserLanguage = "en";
+var wgContentLanguage = "en";
+var wgBreakFrames = false;
+var wgCurRevisionId = "47894";
+var wgVersion = "1.12.0";
+var wgEnableAPI = true;
+var wgEnableWriteAPI = false;
+/*]]>*/</script>
+
+		<script type="text/javascript" src="/wikistatic/skins//common/wikibits.js?116"><!-- wikibits js --></script>
+		<!-- Head Scripts -->
+		<script type="text/javascript" src="/wikistatic/skins//common/ajax.js?116"></script>
+<style type="text/css">/*<![CDATA[*/
+.source-haskell {line-height: normal;}
+.source-haskell li {line-height: normal;}
+/**
+ * GeSHi Dynamically Generated Stylesheet
+ * --------------------------------------
+ * Dynamically generated stylesheet for haskell
+ * CSS class: source-haskell, CSS id: 
+ * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann
+ * (http://qbnz.com/highlighter/ and http://geshi.org/)
+ * --------------------------------------
+ */
+.source-haskell .de1, .source-haskell .de2 {font-family: 'Courier New', Courier, monospace; font-weight: normal; font-style: normal;}
+.source-haskell  {}
+.source-haskell .head {}
+.source-haskell .foot {}
+.source-haskell .imp {font-weight: bold; color: red;}
+.source-haskell li, .source-haskell li.li1 {font-weight: normal;}
+.source-haskell li.li2 {font-weight: bold;}
+.source-haskell .kw1 {color: #06c; font-weight: bold;}
+.source-haskell .kw2 {color: #06c; font-weight: bold;}
+.source-haskell .kw3 {font-weight: bold;}
+.source-haskell .kw4 {color: #cccc00; font-weight: bold;}
+.source-haskell .kw5 {color: maroon;}
+.source-haskell .co1 {color: #5d478b; font-style: italic;}
+.source-haskell .co2 {color: #339933; font-weight: bold;}
+.source-haskell .coMULTI {color: #5d478b; font-style: italic;}
+.source-haskell .es0 {background-color: #3cb371; font-weight: bold;}
+.source-haskell .br0 {color: green;}
+.source-haskell .sy0 {color: #339933; font-weight: bold;}
+.source-haskell .st0 {background-color: #3cb371;}
+.source-haskell .nu0 {color: red;}
+.source-haskell .me1 {color: #060;}
+.source-haskell .ln-xtra, .source-haskell li.ln-xtra, .source-haskell div.ln-xtra {color: #cc0; background-color: #ffc;}
+
+/*]]>*/
+</style>
+<style type="text/css">/*<![CDATA[*/
+ at import "/haskellwiki/index.php?title=MediaWiki:Geshi.css&usemsgcache=yes&action=raw&ctype=text/css&smaxage=18000";
+/*]]>*/
+</style>		<script type="text/javascript" src="/haskellwiki/index.php?title=-&action=raw&gen=js&useskin=hawiki"><!-- site js --></script>
+		<style type="text/css">/*<![CDATA[*/
+ at import "/haskellwiki/index.php?title=MediaWiki:Common.css&usemsgcache=yes&action=raw&ctype=text/css&smaxage=18000";
+ at import "/haskellwiki/index.php?title=MediaWiki:Hawiki.css&usemsgcache=yes&action=raw&ctype=text/css&smaxage=18000";
+ at import "/haskellwiki/index.php?title=-&action=raw&gen=css&maxage=18000&useskin=hawiki";
+/*]]>*/</style>
+	</head>
+<body class="mediawiki ltr page-Keywords ">
+   <div id="topbar" class="noprint">
+	<div class="portlet noprint" id="p-personal">
+		<h5>Personal tools</h5>
+		<div class="pBody">
+			<ul><li><a class="homebutton" href="/haskellwiki/Haskell">Home</a></li>
+				<li id="pt-login"><a href="/haskellwiki/index.php?title=Special:Userlogin&returnto=Keywords" title="You are encouraged to log in, it is not mandatory however. [o]" accesskey="o">Log in / create account</a></li>
+			</ul>
+		</div>
+	</div>
+        	  <div id="p-search">
+	    <div id="searchBody" class="pBody">
+	       <form action="/haskellwiki/index.php" id="searchform"><div>
+	          <input type='hidden' name="title" value=""/>
+	          <input id="searchInput" name="search" type="text" title="Search HaskellWiki [f]" accesskey="f" value="" />
+				<input type='submit' name="go" class="searchButton" id="searchGoButton"	value="Go" title="Go to a page with this exact name if exists" /> 
+				<input type='submit' name="fulltext" class="searchButton" id="mw-searchButton" value="Search" title="Search the pages for this text" />
+
+	         </div></form>
+	    </div>
+	  </div>
+   </div>
+	<div id="globalWrapper">
+	<div class="portlet" id="p-logo">
+		<a style="background-image: url(/wikistatic/haskellwiki_logo.png);" href="/haskellwiki/Haskell" title="Main Page"></a>
+	</div>
+	<div id="column-content">
+        <div id="notice-area" class="noprint">
+        <!-- ?php $this->data['sitenotice'] = 'This is a test instance.  Do not edit, your changes will be lost.'; ? -->
+			        </div>
+        <div id="content-wrapper">
+	<div id="p-cactions" class="portlet noprint">
+		<h5>Views</h5>
+		<div class="pBody">
+			<ul>
+	
+				 <li id="ca-nstab-main" class="selected"><a href="/haskellwiki/Keywords" title="View the content page [c]" accesskey="c">Page</a></li>
+				 <li id="ca-talk" class="new"><a href="/haskellwiki/index.php?title=Talk:Keywords&action=edit" title="Discussion about the content page [t]" accesskey="t">Discussion</a></li>
+				 <li id="ca-viewsource"><a href="/haskellwiki/index.php?title=Keywords&action=edit" title="This page is protected. You can view its source. [e]" accesskey="e">View source</a></li>
+				 <li id="ca-history"><a href="/haskellwiki/index.php?title=Keywords&action=history" title="Past versions of this page. [h]" accesskey="h">History</a></li>			</ul>
+		</div>
+	</div>
+                        <div id="content">
+		<a name="top" id="top"></a>
+                        <h1 id="firstHeading" class="firstHeading">Keywords</h1>
+		<div id="bodyContent">
+			<h3 id="siteSub">From HaskellWiki</h3>
+			<div id="contentSub"></div>
+			<div id="jump-to-nav">Jump to: <a href="#column-one">navigation</a>, <a href="#searchInput">search</a></div>			<!-- start content -->
+			<p>This page lists all Haskell keywords, feel free to edit. <a href="/haskellwiki/Hoogle" title="Hoogle">Hoogle</a> searches will return results from this page. Please respect the Anchor macros.
+</p><p>For additional information you might want to look at <a href="http://www.haskell.org/onlinereport/" class="external text" title="http://www.haskell.org/onlinereport/" rel="nofollow">the Haskell 98 report</a>.
+</p>
+<table id="toc" class="toc" summary="Contents"><tr><td><div id="toctitle"><h2>Contents</h2></div>
+<ul>
+<li class="toclevel-1"><a href="#.21"><span class="tocnumber">1</span> <span class="toctext">!</span></a></li>
+<li class="toclevel-1"><a href="#.27"><span class="tocnumber">2</span> <span class="toctext">'</span></a></li>
+<li class="toclevel-1"><a href="#.27.27"><span class="tocnumber">3</span> <span class="toctext">''</span></a></li>
+<li class="toclevel-1"><a href="#-"><span class="tocnumber">4</span> <span class="toctext">-</span></a></li>
+<li class="toclevel-1"><a href="#--"><span class="tocnumber">5</span> <span class="toctext">--</span></a></li>
+<li class="toclevel-1"><a href="#-.3C"><span class="tocnumber">6</span> <span class="toctext">-<</span></a></li>
+<li class="toclevel-1"><a href="#-.3C.3C"><span class="tocnumber">7</span> <span class="toctext">-<<</span></a></li>
+<li class="toclevel-1"><a href="#-.3E"><span class="tocnumber">8</span> <span class="toctext">-></span></a></li>
+<li class="toclevel-1"><a href="#::"><span class="tocnumber">9</span> <span class="toctext">::</span></a></li>
+<li class="toclevel-1"><a href="#.3B"><span class="tocnumber">10</span> <span class="toctext">;</span></a></li>
+<li class="toclevel-1"><a href="#.3C-"><span class="tocnumber">11</span> <span class="toctext"><-</span></a></li>
+<li class="toclevel-1"><a href="#.3D"><span class="tocnumber">12</span> <span class="toctext">=</span></a></li>
+<li class="toclevel-1"><a href="#.3D.3E"><span class="tocnumber">13</span> <span class="toctext">=></span></a></li>
+<li class="toclevel-1"><a href="#.3E"><span class="tocnumber">14</span> <span class="toctext">></span></a></li>
+<li class="toclevel-1"><a href="#.3F"><span class="tocnumber">15</span> <span class="toctext">?</span></a></li>
+<li class="toclevel-1"><a href="#.3F.3F"><span class="tocnumber">16</span> <span class="toctext">??</span></a></li>
+<li class="toclevel-1"><a href="#.23"><span class="tocnumber">17</span> <span class="toctext">#</span></a></li>
+<li class="toclevel-1"><a href="#.28.23.29"><span class="tocnumber">18</span> <span class="toctext">(#)</span></a></li>
+<li class="toclevel-1"><a href="#.2A"><span class="tocnumber">19</span> <span class="toctext">*</span></a></li>
+<li class="toclevel-1"><a href="#.40"><span class="tocnumber">20</span> <span class="toctext">@</span></a></li>
+<li class="toclevel-1"><a href="#.5B.7C.2C_.7C.5D"><span class="tocnumber">21</span> <span class="toctext">[|, |]</span></a></li>
+<li class="toclevel-1"><a href="#.5C"><span class="tocnumber">22</span> <span class="toctext">\</span></a></li>
+<li class="toclevel-1"><a href="#_"><span class="tocnumber">23</span> <span class="toctext">_</span></a></li>
+<li class="toclevel-1"><a href="#.60"><span class="tocnumber">24</span> <span class="toctext">`</span></a></li>
+<li class="toclevel-1"><a href="#.7B.2C_.7D"><span class="tocnumber">25</span> <span class="toctext">{, }</span></a></li>
+<li class="toclevel-1"><a href="#.7B-.2C_-.7D"><span class="tocnumber">26</span> <span class="toctext">{-, -}</span></a></li>
+<li class="toclevel-1"><a href="#.7C"><span class="tocnumber">27</span> <span class="toctext">|</span></a></li>
+<li class="toclevel-1"><a href="#.7E"><span class="tocnumber">28</span> <span class="toctext">~</span></a></li>
+<li class="toclevel-1"><a href="#as"><span class="tocnumber">29</span> <span class="toctext">as</span></a></li>
+<li class="toclevel-1"><a href="#case.2C_of"><span class="tocnumber">30</span> <span class="toctext">case, of</span></a></li>
+<li class="toclevel-1"><a href="#class"><span class="tocnumber">31</span> <span class="toctext">class</span></a></li>
+<li class="toclevel-1"><a href="#data"><span class="tocnumber">32</span> <span class="toctext">data</span></a></li>
+<li class="toclevel-1"><a href="#data_family"><span class="tocnumber">33</span> <span class="toctext">data family</span></a></li>
+<li class="toclevel-1"><a href="#data_instance"><span class="tocnumber">34</span> <span class="toctext">data instance</span></a></li>
+<li class="toclevel-1"><a href="#default"><span class="tocnumber">35</span> <span class="toctext">default</span></a></li>
+<li class="toclevel-1"><a href="#deriving"><span class="tocnumber">36</span> <span class="toctext">deriving</span></a></li>
+<li class="toclevel-1"><a href="#deriving_instance"><span class="tocnumber">37</span> <span class="toctext">deriving instance</span></a></li>
+<li class="toclevel-1"><a href="#do"><span class="tocnumber">38</span> <span class="toctext">do</span></a></li>
+<li class="toclevel-1"><a href="#forall"><span class="tocnumber">39</span> <span class="toctext">forall</span></a></li>
+<li class="toclevel-1"><a href="#foreign"><span class="tocnumber">40</span> <span class="toctext">foreign</span></a></li>
+<li class="toclevel-1"><a href="#hiding"><span class="tocnumber">41</span> <span class="toctext">hiding</span></a></li>
+<li class="toclevel-1"><a href="#if.2C_then.2C_else"><span class="tocnumber">42</span> <span class="toctext">if, then, else</span></a></li>
+<li class="toclevel-1"><a href="#import"><span class="tocnumber">43</span> <span class="toctext">import</span></a></li>
+<li class="toclevel-1"><a href="#infix.2C_infixl.2C_infixr"><span class="tocnumber">44</span> <span class="toctext">infix, infixl, infixr</span></a></li>
+<li class="toclevel-1"><a href="#instance"><span class="tocnumber">45</span> <span class="toctext">instance</span></a></li>
+<li class="toclevel-1"><a href="#let.2C_in"><span class="tocnumber">46</span> <span class="toctext">let, in</span></a></li>
+<li class="toclevel-1"><a href="#mdo"><span class="tocnumber">47</span> <span class="toctext">mdo</span></a></li>
+<li class="toclevel-1"><a href="#module"><span class="tocnumber">48</span> <span class="toctext">module</span></a></li>
+<li class="toclevel-1"><a href="#newtype"><span class="tocnumber">49</span> <span class="toctext">newtype</span></a></li>
+<li class="toclevel-1"><a href="#proc"><span class="tocnumber">50</span> <span class="toctext">proc</span></a></li>
+<li class="toclevel-1"><a href="#qualified"><span class="tocnumber">51</span> <span class="toctext">qualified</span></a></li>
+<li class="toclevel-1"><a href="#rec"><span class="tocnumber">52</span> <span class="toctext">rec</span></a></li>
+<li class="toclevel-1"><a href="#type"><span class="tocnumber">53</span> <span class="toctext">type</span></a></li>
+<li class="toclevel-1"><a href="#type_family"><span class="tocnumber">54</span> <span class="toctext">type family</span></a></li>
+<li class="toclevel-1"><a href="#type_instance"><span class="tocnumber">55</span> <span class="toctext">type instance</span></a></li>
+<li class[...incomplete...]



More information about the Pkg-haskell-commits mailing list