diff options
| author | Albert Krewinkel <albert@zeitkraut.de> | 2022-09-23 22:26:37 +0200 |
|---|---|---|
| committer | Albert Krewinkel <albert@zeitkraut.de> | 2022-09-23 22:26:37 +0200 |
| commit | e3648357cfe2bd54b0426f332ea3abd44e68a8af (patch) | |
| tree | 112e79b37fd0e2007850d0ba6ce267a3a2a9fe46 /pandoc-cli/src | |
| parent | ced8b258be630b70bb42edbe2418547b26f56934 (diff) | |
Use hslua-cli package for pandoc-lua interface
Diffstat (limited to 'pandoc-cli/src')
| -rw-r--r-- | pandoc-cli/src/pandoc.hs | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/pandoc-cli/src/pandoc.hs b/pandoc-cli/src/pandoc.hs index 49aaa884e..bcbc0ba46 100644 --- a/pandoc-cli/src/pandoc.hs +++ b/pandoc-cli/src/pandoc.hs @@ -1,3 +1,4 @@ +{-# LANGUAGE OverloadedStrings #-} {- | Module : Main Copyright : Copyright (C) 2006-2022 John MacFarlane @@ -11,11 +12,15 @@ Parses command-line options and calls the appropriate readers and writers. -} module Main where +import Control.Monad ((<=<)) import qualified Control.Exception as E +import HsLua.CLI (Settings (..), runStandalone) import Text.Pandoc.App (convertWithOpts, defaultOpts, options, parseOptions) +import Text.Pandoc.Class (runIOorExplode) import Text.Pandoc.Error (handleError) -import Text.Pandoc.Lua (runScript) +import Text.Pandoc.Lua (runLua) import Text.Pandoc.Server (ServerOpts(..), parseServerOpts, app) +import Text.Pandoc.Shared (pandocVersion) import Safe (readDef) import System.Environment (getProgName, lookupEnv) import qualified Network.Wai.Handler.CGI as CGI @@ -31,5 +36,10 @@ main = E.handle (handleError . Left) $ do "pandoc-server" -> do sopts <- parseServerOpts Warp.run (serverPort sopts) (timeout (serverTimeout sopts) app) - "pandoc-lua" -> runScript + "pandoc-lua" -> do + let settings = Settings + { settingsVersionInfo = "\nEmbedded in pandoc " <> pandocVersion + , settingsRunner = handleError <=< runIOorExplode . runLua + } + runStandalone settings _ -> parseOptions options defaultOpts >>= convertWithOpts |
