diff options
author | Yuchen Pei <hi@ypei.me> | 2022-07-18 18:08:00 +1000 |
---|---|---|
committer | Yuchen Pei <hi@ypei.me> | 2022-07-22 23:58:25 +1000 |
commit | ade326ccab4ad7fbefe8a7e5594f555f8e4e4f23 (patch) | |
tree | 5173605331e1f89aa44815d25f5a47f273eafbbe /haddock-api/src/Haddock.hs | |
parent | 2368e9329e6600b46000abd24ec00b7e27bcae75 (diff) |
Adding org backend.
Diffstat (limited to 'haddock-api/src/Haddock.hs')
-rw-r--r-- | haddock-api/src/Haddock.hs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/haddock-api/src/Haddock.hs b/haddock-api/src/Haddock.hs index 942798eb..cae37c44 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 @@ -215,7 +216,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. @@ -470,6 +471,10 @@ render log' dflags unit_state flags sinceQual qual ifaces installedIfaces extSrc 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 "ppHyperlinkedSource" (const ()) $ do |