diff options
Diffstat (limited to 'haddock-api/src/Haddock.hs')
-rw-r--r-- | haddock-api/src/Haddock.hs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/haddock-api/src/Haddock.hs b/haddock-api/src/Haddock.hs index 7eba7b92..65d329e2 100644 --- a/haddock-api/src/Haddock.hs +++ b/haddock-api/src/Haddock.hs @@ -35,6 +35,7 @@ import Haddock.Backends.Xhtml.Themes (getThemes) import Haddock.Backends.LaTeX import Haddock.Backends.Hoogle import Haddock.Backends.Hyperlinker +import Haddock.Backends.Org import Haddock.Interface import Haddock.Interface.Json import Haddock.Parser @@ -65,7 +66,7 @@ import System.FilePath import System.Environment (getExecutablePath) #else import qualified GHC.Paths as GhcPaths -import Paths_haddock_api (getDataDir) +import Paths_haddorg_api (getDataDir) #endif import System.Directory (doesDirectoryExist, getTemporaryDirectory) @@ -217,7 +218,7 @@ haddockWithGhc ghc args = handleTopExceptions $ do liftIO $ renderStep logger dflags unit_state flags sinceQual qual packages ifaces else do - when (any (`elem` [Flag_Html, Flag_Hoogle, Flag_LaTeX]) flags) $ + when (any (`elem` [Flag_Html, Flag_Hoogle, Flag_LaTeX, Flag_Org]) flags) $ throwE "No input file(s)." -- Get packages supplied with --read-interface. @@ -503,6 +504,10 @@ render logger dflags unit_state flags sinceQual qual ifaces packages extSrcMap = ppLaTeX title pkgStr visibleIfaces odir (fmap _doc prologue) opt_latex_style libDir return () + when (Flag_Org `elem` flags) $ do + withTiming logger dflags' "ppOrg" (const ()) $ do + let org = {-# SCC ppOrg #-} ppOrg title (_doc <$> prologue) (fromJust pkgStr) visibleIfaces + writeUtf8File (fromMaybe "haddock" (cleanPkgStr <$> pkgStr) <.> "org") org when (Flag_HyperlinkedSource `elem` flags && not (null ifaces)) $ do withTiming logger dflags' "ppHyperlinkedSource" (const ()) $ do |