summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn MacFarlane <jgm@berkeley.edu>2017-03-09 09:41:22 +0100
committerJohn MacFarlane <jgm@berkeley.edu>2017-03-09 09:41:22 +0100
commit239a17a9863db9eea87e142931e6647b0e0064e1 (patch)
tree6100bdbaad97d07cb98b7bcb8f0f0850ce60d0af
parentfd35661646b87c4960f6c610de06c891c78e9aab (diff)
HTML writer: fallback to basename rather than Untitled.
-rw-r--r--src/Text/Pandoc/Writers/HTML.hs9
-rw-r--r--test/lhs-test.html2
-rw-r--r--test/lhs-test.html+lhs2
3 files changed, 7 insertions, 6 deletions
diff --git a/src/Text/Pandoc/Writers/HTML.hs b/src/Text/Pandoc/Writers/HTML.hs
index e904b5fb7..ab2713748 100644
--- a/src/Text/Pandoc/Writers/HTML.hs
+++ b/src/Text/Pandoc/Writers/HTML.hs
@@ -76,7 +76,7 @@ import qualified Text.Blaze.Html5 as H5
#endif
import Control.Monad.Except (throwError)
import Data.Aeson (Value)
-import System.FilePath (takeExtension)
+import System.FilePath (takeExtension, takeBaseName)
import Text.Blaze.Html.Renderer.String (renderHtml)
import qualified Text.Blaze.XHtml1.Transitional as H
import qualified Text.Blaze.XHtml1.Transitional.Attributes as A
@@ -197,9 +197,10 @@ writeHtmlString' st opts d = do
case getField "pagetitle" context of
Just (s :: String) | not (null s) -> return context
_ -> do
- report $ NoTitleElement "Untitled"
- return $ resetField "pagetitle" ("Untitled" :: String)
- context
+ let fallback = fromMaybe "Untitled" $ takeBaseName <$>
+ lookup "sourcefile" (writerVariables opts)
+ report $ NoTitleElement fallback
+ return $ resetField "pagetitle" fallback context
return $ renderTemplate' tpl $
defField "body" (renderHtml body) context'
diff --git a/test/lhs-test.html b/test/lhs-test.html
index 330122666..db90ae95e 100644
--- a/test/lhs-test.html
+++ b/test/lhs-test.html
@@ -4,7 +4,7 @@
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
- <title>Untitled</title>
+ <title>lhs-test</title>
<style type="text/css">
code{white-space: pre-wrap;}
.smallcaps{font-variant: small-caps;}
diff --git a/test/lhs-test.html+lhs b/test/lhs-test.html+lhs
index 7ce9a83c7..d13aa36e3 100644
--- a/test/lhs-test.html+lhs
+++ b/test/lhs-test.html+lhs
@@ -4,7 +4,7 @@
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
- <title>Untitled</title>
+ <title>lhs-test</title>
<style type="text/css">
code{white-space: pre-wrap;}
.smallcaps{font-variant: small-caps;}