From 7baa79597e1306eeed0313ffafd240b4df5080bb Mon Sep 17 00:00:00 2001
From: fiddlosopher <fiddlosopher@788f1e2b-df1e-0410-8736-df70ead52e1b>
Date: Thu, 31 Dec 2009 01:15:42 +0000
Subject: [PATCH] Use $for$ for --css option in HTML writer.

git-svn-id: https://pandoc.googlecode.com/svn/trunk@1721 788f1e2b-df1e-0410-8736-df70ead52e1b
---
 src/Text/Pandoc/Writers/HTML.hs | 6 +++---
 src/pandoc.hs                   | 9 +--------
 templates/html.template         | 7 ++++++-
 3 files changed, 10 insertions(+), 12 deletions(-)

diff --git a/src/Text/Pandoc/Writers/HTML.hs b/src/Text/Pandoc/Writers/HTML.hs
index cae2bb021..a5b403a9b 100644
--- a/src/Text/Pandoc/Writers/HTML.hs
+++ b/src/Text/Pandoc/Writers/HTML.hs
@@ -38,7 +38,7 @@ import Text.Pandoc.Highlighting ( highlightHtml )
 import Text.Pandoc.XML (stripTags)
 import Numeric ( showHex )
 import Data.Char ( ord, toLower )
-import Data.List ( isPrefixOf, intersperse, intercalate )
+import Data.List ( isPrefixOf, intersperse )
 import Data.Maybe ( catMaybes )
 import Control.Monad.State
 import Text.XHtml.Transitional hiding ( stringToHtml )
@@ -155,8 +155,8 @@ inTemplate opts tit auths date toc body' newvars =
                     , ("pagetitle", topTitle')
                     , ("toc", renderHtmlFragment toc)
                     , ("title", renderHtmlFragment tit)
-                    , ("authors", intercalate "; " authors)
-                    , ("date", date') ]
+                    , ("date", date') ] ++
+                    [ ("author", a) | a <- authors ]
   in  renderTemplate context $ writerTemplate opts
 
 -- | Like Text.XHtml's identifier, but adds the writerIdentifierPrefix
diff --git a/src/pandoc.hs b/src/pandoc.hs
index 18ea40be8..8b626c2c2 100644
--- a/src/pandoc.hs
+++ b/src/pandoc.hs
@@ -358,14 +358,7 @@ options =
     , Option "c" ["css"]
                  (ReqArg
                   (\arg opt -> do
-                     let text' = "<link rel=\"stylesheet\" href=\"" ++ arg ++
-                                  "\" type=\"text/css\" />\n"
-                     let oldvars = optVariables opt
-                     let newvars = case lookup "css" oldvars of
-                                        Nothing -> ("css", text') : oldvars
-                                        Just b  -> ("css", b ++ text') :
-                                                    filter ((/= "css") . fst)
-                                                     oldvars
+                     let newvars = ("css",arg) : optVariables opt
                      return opt { optVariables = newvars,
                                   optStandalone = True })
                   "URL")
diff --git a/templates/html.template b/templates/html.template
index 129febb03..68cacd568 100644
--- a/templates/html.template
+++ b/templates/html.template
@@ -4,7 +4,9 @@
   <title>$if(title-prefix)$$title-prefix$ - $endif$$if(pagetitle)$$pagetitle$$endif$</title>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
   <meta name="generator" content="pandoc" />
-  <meta name="author" content="$authors$" />
+$for(author)$
+  <meta name="author" content="$author$" />
+$endfor$
   <meta name="date" content="$date$" />
 $if(highlighting)$
   <style type="text/css">
@@ -28,6 +30,9 @@ $if(highlighting)$
     pre.sourceCode span.Error { color: red; font-weight: bold; }
   </style>
 $endif$
+$for(css)$
+  <link rel="stylesheet" href="$css$" type="text/css" />
+$endfor$
 $if(header-includes)$
   $header-includes$
 $endif$