on master help sign in
Remove markdown blocks as a language construct
commitf9f5d8e2bdca7c445c2dbafade14b64f9a8a61fd authorEvan Czaplicki <info@elm-lang.org> dateSun 30 Nov 2014, 18:09 (12 years ago) parent48928dc
11 files changed+1−96
elm-compiler.cabal−5 src/AST/Expression/General.hs−3 src/Generate/JavaScript.hs−13 src/Generate/Markdown.hs−39 src/Parse/Expression.hs+1−7 src/Parse/Helpers.hs−15 src/Transform/Canonicalize.hs−4 src/Transform/Expression.hs−3 src/Transform/SortDefinitions.hs−2 src/Transform/Substitute.hs−2 src/Type/Constrain/Expression.hs−3
elm-compiler.cabal−5
@@ -69,7 +69,6 @@ Library
6969 Generate.JavaScript.Helpers,
7070 Generate.JavaScript.Ports,
7171 Generate.JavaScript.Variable,
72− Generate.Markdown,
7372 Generate.Cases,
7473 Transform.AddDefaultImports,
7574 Transform.Canonicalize,
@@ -115,12 +114,10 @@ Library
115114 blaze-html >= 0.5 && < 0.8,
116115 blaze-markup >= 0.5.1 && < 0.7,
117116 bytestring >= 0.9 && < 0.11,
118− cheapskate >= 0.1 && < 0.2,
119117 cmdargs >= 0.7 && < 0.11,
120118 containers >= 0.3 && < 0.6,
121119 directory >= 1.0 && < 2.0,
122120 filepath >= 1 && < 2.0,
123− highlighting-kate >= 0.5 && < 0.6,
124121 indents >= 0.3 && < 0.4,
125122 language-ecmascript >=0.15 && < 0.17,
126123 language-glsl >= 0.0.2 && < 0.2,
@@ -217,14 +214,12 @@ Test-Suite compiler-tests
217214 blaze-html >= 0.5 && < 0.8,
218215 blaze-markup >= 0.5.1 && < 0.7,
219216 bytestring >= 0.9 && < 0.11,
220− cheapskate >= 0.1 && < 0.2,
221217 cmdargs >= 0.7 && < 0.11,
222218 containers >= 0.3 && < 0.6,
223219 directory >= 1.0 && < 2.0,
224220 elm-compiler,
225221 filemanip >= 0.3.5 && < 0.4,
226222 filepath >= 1 && < 2.0,
227− highlighting-kate >= 0.5 && < 0.6,
228223 indents >= 0.3 && < 0.4,
229224 language-ecmascript >=0.15 && < 0.17,
230225 language-glsl >= 0.0.2 && < 0.2,
src/AST/Expression/General.hs−3
@@ -55,7 +55,6 @@ data Expr' ann def var
5555 | Insert (Expr ann def var) String (Expr ann def var)
5656 | Modify (Expr ann def var) [(String, Expr ann def var)]
5757 | Record [(String, Expr ann def var)]
58− | Markdown String String
5958 -- for type checking and code gen only
6059 | PortIn String (Type var)
6160 | PortOut String (Type var) (Expr ann def var)
@@ -179,8 +178,6 @@ instance (Pretty def, Pretty var, Var.ToString var) => Pretty (Expr' ann def var
179178 field (field, value) =
180179 variable field <+> P.equals <+> pretty value
181180
182− Markdown _ _ -> P.text "[markdown| ... |]"
183−
184181 GLShader _ _ _ -> P.text "[glsl| ... |]"
185182
186183 PortIn name _ -> P.text $ "<port:" ++ name ++ ">"
src/Generate/JavaScript.hs−13
@@ -13,7 +13,6 @@ import Generate.JavaScript.Helpers as Help
1313import qualified Generate.Cases as Case
1414import qualified Generate.JavaScript.Ports as Port
1515import qualified Generate.JavaScript.Variable as Var
16−import qualified Generate.Markdown as MD
1716
1817import AST.Annotation
1918import AST.Module
@@ -192,18 +191,6 @@ expression (A region expr) =
192191 ctor = (prop "ctor", string name)
193192 fields = zipWith (\n e -> (prop ("_" ++ show n), e)) [0..]
194193
195− Markdown uid doc ->
196− let text =
197− obj ["Elm","Text","make"] <| ref localRuntime
198−
199− pad =
200− "<div style=\"height:0;width:0;\">&nbsp;</div>"
201−
202− md =
203− pad ++ MD.toHtml doc ++ pad
204− in
205− return (DotRef () text (var "markdown") `call` [ string md, string uid ])
206−
207194 GLShader _uid src _tipe ->
208195 return $ ObjectLit () [(PropString () "src", literal (Str src))]
209196
src/Generate/Markdown.hsdeleted−39
@@ -1,39 +0,0 @@
1−{-# OPTIONS_GHC -Wall #-}
2−module Generate.Markdown where
3−
4−import qualified Cheapskate as CS
5−import qualified Cheapskate.Html as CS
6−import qualified Data.Text as Text
7−import qualified Text.Blaze.Html.Renderer.String as Blaze
8−import qualified Text.Highlighting.Kate as Kate
9−import Elm.Utils ((|>))
10−
11−
12−toHtml :: String -> String
13−toHtml rawMarkdown =
14− Text.pack rawMarkdown
15− |> CS.markdown options
16− |> CS.walk highlightCode
17− |> CS.renderDoc
18− |> Blaze.renderHtml
19−
20−options :: CS.Options
21−options =
22− CS.Options
23− { CS.sanitize = False
24− , CS.allowRawHtml = True
25− , CS.preserveHardBreaks = False
26− , CS.debug = False
27− }
28−
29−highlightCode :: CS.Block -> CS.Block
30−highlightCode block =
31− case block of
32− CS.CodeBlock (CS.CodeAttr lang _info) src ->
33− Kate.highlightAs (Text.unpack lang) (Text.unpack src)
34− |> Kate.formatHtmlBlock Kate.defaultFormatOpts
35− |> Blaze.renderHtml
36− |> Text.pack
37− |> CS.HtmlBlock
38−
39− _ -> block
src/Parse/Expression.hs+1−7
@@ -49,19 +49,13 @@ negative = do
4949-------- Complex Terms --------
5050
5151listTerm :: IParser Source.Expr'
52−listTerm = markdown' <|> shader' <|> braces (try range <|> E.ExplicitList <$> commaSep expr)
52+listTerm = shader' <|> braces (try range <|> E.ExplicitList <$> commaSep expr)
5353 where
5454 range = do
5555 lo <- expr
5656 padded (string "..")
5757 E.Range lo <$> expr
5858
59− markdown' = do
60− pos <- getPosition
61− let uid = show (sourceLine pos) ++ ":" ++ show (sourceColumn pos)
62− rawText <- Help.markdown
63− return (E.Markdown uid (filter (/='\r') rawText))
64−
6559 shader' = do
6660 pos <- getPosition
6761 let uid = show (sourceLine pos) ++ ":" ++ show (sourceColumn pos)
src/Parse/Helpers.hs−15
@@ -381,7 +381,6 @@ ignoreUntil end =
381381 choice
382382 [ try (ignore chr) <|> ignore str
383383 , ignore multiComment
384− , ignore markdown
385384 , ignore anyChar
386385 ]
387386
@@ -425,20 +424,6 @@ anyUntilPos pos =
425424
426425-- BASIC LANGUAGE LITERALS
427426
428−markdown :: IParser String
429−markdown =
430− do try (string "[markdown|")
431− closeMarkdown id
432− where
433− closeMarkdown markdownBuilder =
434− choice
435− [ do try (string "|]")
436− return (markdownBuilder "")
437− , do c <- anyChar
438− closeMarkdown (markdownBuilder . (c:))
439− ]
440−
441−
442427shader :: IParser (String, L.GLShaderTipe)
443428shader =
444429 do try (string "[glsl|")
src/Transform/Canonicalize.hs−4
@@ -282,10 +282,6 @@ expression env (A.A ann expr) =
282282 (,) <$> format (pattern env p)
283283 <*> expression (update p env) b
284284
285− Markdown uid md ->
286− do Env.uses ["Text"]
287− return (Markdown uid md)
288−
289285 PortIn name st ->
290286 PortIn name <$> tipe' env st
291287
src/Transform/Expression.hs−3
@@ -85,9 +85,6 @@ crawl portInCheck portOutCheck defsTransform =
8585 Record fields ->
8686 Record <$> mapM (\(k,v) -> (,) k <$> go v) fields
8787
88− Markdown uid md ->
89− return $ Markdown uid md
90−
9188 Let defs body ->
9289 Let <$> defsTransform defs <*> go body
9390
src/Transform/SortDefinitions.hs−2
@@ -97,8 +97,6 @@ reorder (A ann expr) =
9797 Record fields ->
9898 Record <$> mapM (\(k,v) -> (,) k <$> reorder v) fields
9999
100− Markdown uid md -> return $ Markdown uid md
101−
102100 GLShader _ _ _ -> return expr
103101
104102 PortOut name st signal -> PortOut name st <$> reorder signal
src/Transform/Substitute.hs−2
@@ -79,8 +79,6 @@ subst old new expression =
7979
8080 Literal _ -> expression
8181
82− Markdown _ _ -> expression
83−
8482 GLShader _ _ _ -> expression
8583
8684 PortIn name st ->
src/Type/Constrain/Expression.hs−3
@@ -151,9 +151,6 @@ constrain env (A region expr) tipe =
151151 recordType = record fields' (termN EmptyRecord1)
152152 return . ex vars . and $ tipe === recordType : cs
153153
154− Markdown _ _ ->
155− return ("Text.markdown" <? tipe)
156−
157154 Let defs body ->
158155 do c <- constrain env body tipe
159156 (schemes, rqs, fqs, header, c2, c1) <-