@@ -17,6 +17,7 @@ Does a pandoc conversion based on command-line options.
1717-}
1818module Text.Pandoc.App.CommandLineOptions (
1919 parseOptions
20+ , parseOptionsFromArgs
2021 , options
2122 , engines
2223 , lookupHighlightStyle
@@ -73,9 +74,13 @@ parseOptions :: [OptDescr (Opt -> IO Opt)] -> Opt -> IO Opt
7374parseOptions options' defaults = do
7475 rawArgs <- map UTF8.decodeArg <$> getArgs
7576 prg <- getProgName
77+ parseOptionsFromArgs options' defaults prg rawArgs
7678
79+parseOptionsFromArgs
80+ :: [OptDescr (Opt -> IO Opt)] -> Opt -> String -> [String] -> IO Opt
81+parseOptionsFromArgs options' defaults prg rawArgs = do
7782 let (actions, args, unrecognizedOpts, errors) =
78− getOpt' Permute options' rawArgs
83+ getOpt' Permute options' (map UTF8.decodeArg rawArgs)
7984
8085 let unknownOptionErrors =
8186 foldr (handleUnrecognizedOption . takeWhile (/= '=')) []