@@ -877,10 +877,11 @@ csvTableDirective top fields rawcsv = do
877 (bs, _) <- fetchItem u
877 (bs, _) <- fetchItem u
878 return $ UTF8.toText bs
878 return $ UTF8.toText bs
879 Nothing -> return rawcsv
879 Nothing -> return rawcsv
880− let res = parseCSV opts (case explicitHeader of
880+ let header' = case explicitHeader of
881− Just h -> h <> "\n" <> rawcsv'
881+ Just h -> parseCSV defaultCSVOptions h
882− Nothing -> rawcsv')
882+ Nothing -> Right []
883+ let res = parseCSV opts rawcsv'
883− case res of
884+ case (<>) <$> header' <*> res of
884 Left e ->
885 Left e ->
885 throwError $ PandocParsecError "csv table" e
886 throwError $ PandocParsecError "csv table" e
886 Right rawrows -> do
887 Right rawrows -> do