@@ -75,6 +75,7 @@ data LogMessage =
7575 | CouldNotConvertTeXMath String String
7676 | CouldNotParseCSS String
7777 | Fetching String
78+ | NoTitleElement String
7879 deriving (Show, Eq, Data, Ord, Typeable, Generic)
7980
8081instance ToJSON LogMessage where
@@ -168,6 +169,9 @@ instance ToJSON LogMessage where
168169 Fetching fp ->
169170 ["type" .= String "CouldNotParseCSS",
170171 "path" .= Text.pack fp]
172+ NoTitleElement fallback ->
173+ ["type" .= String "NoTitleElement",
174+ "fallback" .= Text.pack fallback]
171175
172176showPos :: SourcePos -> String
173177showPos pos = sn ++ "line " ++
@@ -228,6 +232,10 @@ showLogMessage msg =
228232 "Could not parse CSS" ++ if null m then "" else (':':'\n':m)
229233 Fetching fp ->
230234 "Fetching " ++ fp ++ "..."
235+ NoTitleElement fallback ->
236+ "This document format requires a nonempty <title> element.\n" ++
237+ "Please specify either 'title' or 'pagetitle' in the metadata.\n" ++
238+ "Falling back to '" ++ fallback ++ "'"
231239
232240messageVerbosity:: LogMessage -> Verbosity
233241messageVerbosity msg =
@@ -251,3 +259,4 @@ messageVerbosity msg =
251259 CouldNotConvertTeXMath{} -> WARNING
252260 CouldNotParseCSS{} -> WARNING
253261 Fetching{} -> INFO
262+ NoTitleElement{} -> WARNING