From 53b9d8224a56ea8463b5ef7efba9858d78d33593 Mon Sep 17 00:00:00 2001 From: Adrian Cochrane Date: Mon, 15 Jul 2019 12:37:21 +1200 Subject: [PATCH] Upgrade to nonbroken Stylish Haskell. --- rhapsode.cabal | 2 +- src/DefaultCSS.hs | 40 ++++++++++++++++++++-------------------- src/Main.hs | 4 ++-- 3 files changed, 23 insertions(+), 23 deletions(-) diff --git a/rhapsode.cabal b/rhapsode.cabal index 26554d5..f55838c 100644 --- a/rhapsode.cabal +++ b/rhapsode.cabal @@ -64,7 +64,7 @@ executable rhapsode http-client, http-client-tls, bytestring, html-conduit, xml-conduit, text, containers, network-uri, - stylish-haskell >= 0.2.0, css-syntax, stylish-html-conduit + stylish-haskell >= 0.2.2, css-syntax, stylish-html-conduit -- Directories containing source files. hs-source-dirs: src diff --git a/src/DefaultCSS.hs b/src/DefaultCSS.hs index c36f137..bff902f 100644 --- a/src/DefaultCSS.hs +++ b/src/DefaultCSS.hs @@ -16,17 +16,17 @@ userAgentCSS = unlines [ "select::before, textarea::before, input::before {content: 'Input'; pitch: high}", "output::before {content: 'Output'; pitch: high}", "text-area, button, select, input, output {pitch: low}", --- "input, output {content: attr(value)}", + "input, output {content: attr(value)}", "text-area {speak-as: literal-punctuation}", "", --- "option:not([checked]) {speak: never}", + "option:not([checked]) {speak: never}", "select[multiple] option {cue-before: url(bulletpoint.wav)}", "", "/* Forms themselves require a label in order to support navigation */", "form::before {content: 'Form'}", --- "form[action]::before {content: attr(action)}", --- "form[alt]::before {content: attr(alt)}", --- "form[title]::before {content: attr(title)}", + "form[action]::before {content: attr(action)}", + "form[alt]::before {content: attr(alt)}", + "form[title]::before {content: attr(title)}", "", "/** Tables **/", "table::before {content: 'Table'; voice-volume: x-soft}", @@ -78,29 +78,29 @@ userAgentCSS = unlines [ "ol ol ol ol {counter-reset: -rhaps-ol4}", "ol ol ol ol ol {counter-reset: -rhaps-ol5}", "ol ol ol ol ol ol {counter-reset: -rhaps-ol6}", --- "ol li::before {content: counter(-rhaps-ol1)}", --- "ol ol li::before {content: counters(-rhaps-ol1, -rhaps-ol2)}", --- "ol ol ol li::before {content: counters(-rhaps-ol1, -rhaps-ol2, -rhaps-ol3)}", --- "ol ol ol ol li::before {", --- "content: counters(-rhaps-ol1, -rhaps-ol2, -rhaps-ol3, -rhaps-ol4)", --- "}", --- "ol ol ol ol ol li::before {", --- "content: counters(-rhaps-ol1, -rhaps-ol2, -rhaps-ol3, -rhaps-ol4, -rhaps-ol5)", --- "}", --- "ol ol ol ol ol ol li::before {", --- "content: counters(-rhaps-ol1, -rhaps-ol2, -rhaps-ol3, -rhaps-ol4, -rhaps-ol5, -rhaps-ol6)", --- "}", + "ol li::before {content: counter(-rhaps-ol1)}", + "ol ol li::before {content: counters(-rhaps-ol1, -rhaps-ol2)}", + "ol ol ol li::before {content: counters(-rhaps-ol1, -rhaps-ol2, -rhaps-ol3)}", + "ol ol ol ol li::before {", + "content: counters(-rhaps-ol1, -rhaps-ol2, -rhaps-ol3, -rhaps-ol4)", + "}", + "ol ol ol ol ol li::before {", + "content: counters(-rhaps-ol1, -rhaps-ol2, -rhaps-ol3, -rhaps-ol4, -rhaps-ol5)", + "}", + "ol ol ol ol ol ol li::before {", + "content: counters(-rhaps-ol1, -rhaps-ol2, -rhaps-ol3, -rhaps-ol4, -rhaps-ol5, -rhaps-ol6)", + "}", "", "", "/** HTML6 **/", --- "abbr[title]::after {content: attr(title); voice-volume: x-soft}", + "abbr[title]::after {content: attr(title); voice-volume: x-soft}", "abbr {speak-as: spell-out}", "", "q, blockquote {voice-family: neutral 2}", "cite {voice-stress: reduce}", --- "dialog:not([open]) {speak: never}", + "dialog:not([open]) {speak: never}", "kbd {speak-as: spell-out}", --- "progress {content: attr(value) 'of' attr(max)}" + "progress {content: attr(value) 'of' attr(max)}", "sub {voice-rate: x-fast}", "sup {voice-rate: fast}", "var {voice-rate: slow}" diff --git a/src/Main.hs b/src/Main.hs index 183c11f..8de7e9a 100644 --- a/src/Main.hs +++ b/src/Main.hs @@ -42,12 +42,12 @@ renderElLBS el = XML.renderLBS XML.def $ XML.Document { retreiveStyles html manager base = do style <- H2C.externalStyles authorStyle testMedia html loadURL - return agentStyle -- FIXME Stylish Haskell freezes when I parse more. + return style where emptyStyle :: Style.QueryableStyleSheet MapPropertyParser emptyStyle = Style.queryableStyleSheet agentStyle = H2C.cssPriorityAgent emptyStyle `CSS.parse` Txt.pack userAgentCSS - authorStyle = H2C.internalStyles testMedia (H2C.cssPriorityAuthor agentStyle) html + authorStyle = H2C.internalStyles testMedia agentStyle html loadURL url = do -- TODO parallelise. request <- setUriRelative base url -- 2.30.2