@@ -143,7 +143,7 @@ pdfWriterAndProg :: Maybe String -- ^ user-specified writer name
143 -> IO (String, Maybe String) -- ^ IO (writerName, maybePdfEngineProg)
143 -> IO (String, Maybe String) -- ^ IO (writerName, maybePdfEngineProg)
144pdfWriterAndProg mWriter mEngine = do
144pdfWriterAndProg mWriter mEngine = do
145 let panErr msg = liftIO $ E.throwIO $ PandocAppError msg
145 let panErr msg = liftIO $ E.throwIO $ PandocAppError msg
146− case go (baseWriterName <$> mWriter) mEngine of
146+ case go mWriter mEngine of
147 Right (writ, prog) -> return (writ, Just prog)
147 Right (writ, prog) -> return (writ, Just prog)
148 Left err -> panErr err
148 Left err -> panErr err
@@ -151,7 +151,7 @@ pdfWriterAndProg mWriter mEngine = do
151 go (Just writer) Nothing = (writer,) <$> engineForWriter writer
151 go (Just writer) Nothing = (writer,) <$> engineForWriter writer
152 go Nothing (Just engine) = (,engine) <$> writerForEngine engine
152 go Nothing (Just engine) = (,engine) <$> writerForEngine engine
153 go (Just writer) (Just engine) =
153 go (Just writer) (Just engine) =
154− case find (== (writer, engine)) engines of
154+ case find (== (baseWriterName writer, engine)) engines of
155 Just _ -> Right (writer, engine)
155 Just _ -> Right (writer, engine)
156 Nothing -> Left $ "pdf-engine " ++ engine ++
156 Nothing -> Left $ "pdf-engine " ++ engine ++
157 " is not compatible with output format " ++ writer
157 " is not compatible with output format " ++ writer
@@ -161,7 +161,7 @@ pdfWriterAndProg mWriter mEngine = do
161 [] -> Left $
161 [] -> Left $
162 "pdf-engine " ++ eng ++ " not known"
162 "pdf-engine " ++ eng ++ " not known"
164− engineForWriter w = case [e | (f,e) <- engines, f == w] of
164+ engineForWriter w = case [e | (f,e) <- engines, f == baseWriterName w] of
165 eng : _ -> Right eng
165 eng : _ -> Right eng
166 [] -> Left $
166 [] -> Left $
167 "cannot produce pdf output from " ++ w
167 "cannot produce pdf output from " ++ w