From 4e945d5fd90ab40362c473e1c0e65bdc8a34c907 Mon Sep 17 00:00:00 2001 From: Michael Snoyman Date: Mon, 24 Nov 2014 10:32:13 +0200 Subject: [PATCH] Use pre-wrap on text changelogs/readmes #39 --- Data/Hackage.hs | 8 ++++++-- templates/package.lucius | 5 +++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/Data/Hackage.hs b/Data/Hackage.hs index e440209..c886224 100644 --- a/Data/Hackage.hs +++ b/Data/Hackage.hs @@ -38,6 +38,8 @@ import qualified Data.Version import Text.ParserCombinators.ReadP (readP_to_S) import Text.Blaze.Html.Renderer.Utf8 (renderHtml) import Text.Blaze.Html (unsafeByteString) +import qualified Text.Blaze.Html5 as H +import qualified Text.Blaze.Html5.Attributes as A sinkUploadHistory :: Monad m => Consumer (Entity Uploaded) m UploadHistory sinkUploadHistory = @@ -325,8 +327,10 @@ grabExtraFiles name version lfiles = runResourceT $ do _ -> trip _ -> trip - md = Just . toHtml . Markdown . decodeUtf8 - txt = Just . toHtml . Textarea . toStrict . decodeUtf8 + md = wrapClass "markdown" . Markdown . decodeUtf8 + txt = wrapClass "plain-text" . Textarea . toStrict . decodeUtf8 + + wrapClass clazz inner = Just $ H.div H.! A.class_ clazz $ toHtml inner parseFilePath :: String -> Maybe (PackageName, Version) parseFilePath s = diff --git a/templates/package.lucius b/templates/package.lucius index 62c5177..644ec3b 100644 --- a/templates/package.lucius +++ b/templates/package.lucius @@ -211,3 +211,8 @@ h2.changes-title { border: none; color: #fff; } + +/* https://github.com/fpco/stackage-server/issues/39 */ +div.plain-text { + white-space: pre-wrap; +}