aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/App/Opt.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Text/Pandoc/App/Opt.hs')
-rw-r--r--src/Text/Pandoc/App/Opt.hs21
1 files changed, 19 insertions, 2 deletions
diff --git a/src/Text/Pandoc/App/Opt.hs b/src/Text/Pandoc/App/Opt.hs
index 2c0cef5cd..3ea87de5d 100644
--- a/src/Text/Pandoc/App/Opt.hs
+++ b/src/Text/Pandoc/App/Opt.hs
@@ -18,6 +18,7 @@ Options for pandoc when used as an app.
-}
module Text.Pandoc.App.Opt (
Opt(..)
+ , OptInfo(..)
, LineEnding (..)
, IpynbOutput (..)
, DefaultsState (..)
@@ -55,8 +56,8 @@ import qualified Data.Text as T
import qualified Data.Map as M
import qualified Data.ByteString.Char8 as B8
import Text.Pandoc.Definition (Meta(..), MetaValue(..))
-import Data.Aeson (defaultOptions, Options(..), Result(..), camelTo2,
- genericToJSON, fromJSON)
+import Data.Aeson (defaultOptions, Options(..), Result(..),
+ genericToJSON, fromJSON, camelTo2)
import Data.Aeson.TH (deriveJSON)
import Control.Applicative ((<|>))
import Data.Yaml
@@ -79,6 +80,22 @@ data IpynbOutput =
$(deriveJSON
defaultOptions{ fieldLabelModifier = map toLower . drop 11 } ''IpynbOutput)
+-- | Option parser results requesting informational output.
+data OptInfo =
+ BashCompletion
+ | ListInputFormats
+ | ListOutputFormats
+ | ListExtensions (Maybe Text)
+ | ListHighlightLanguages
+ | ListHighlightStyles
+ | PrintDefaultTemplate (Maybe FilePath) Text
+ | PrintDefaultDataFile (Maybe FilePath) Text
+ | PrintHighlightStyle (Maybe FilePath) Text
+ | VersionInfo
+ | Help
+ | OptError PandocError
+ deriving (Show, Generic)
+
-- | Data structure for command line options.
data Opt = Opt
{ optTabStop :: Int -- ^ Number of spaces per tab