@@ -93,25 +93,26 @@ noDocs = (emptyDocstring, [])
9393
9494-- | Does a string occur in the docstring?
9595containsText :: T.Text -> Docstring -> Bool
96−containsText str (CT.Doc _ blocks) = F.any (blockContains str) blocks
96+containsText str (CT.Doc _ blocks) = F.any (blockContains (T.toLower str)) blocks
97+ -- blockContains and inlineContains should always be called with a lower-case search string
9798 where blockContains :: T.Text -> CT.Block -> Bool
9899 blockContains str (CT.Para inlines) = F.any (inlineContains str) inlines
99100 blockContains str (CT.Header lvl inlines) = F.any (inlineContains str) inlines
100101 blockContains str (CT.Blockquote blocks) = F.any (blockContains str) blocks
101102 blockContains str (CT.List b ty blockss) = F.any (F.any (blockContains str)) blockss
102− blockContains str (CT.CodeBlock attr src) = T.isInfixOf str src
103+ blockContains str (CT.CodeBlock attr src) = T.isInfixOf str (T.toLower src)
103104 blockContains str (CT.HtmlBlock txt) = False -- TODO
104105 blockContains str CT.HRule = False
105106
106107 inlineContains :: T.Text -> CT.Inline -> Bool
107− inlineContains str (CT.Str s) = T.isInfixOf str s
108+ inlineContains str (CT.Str s) = T.isInfixOf str (T.toLower s)
108109 inlineContains str CT.Space = False
109110 inlineContains str CT.SoftBreak = False
110111 inlineContains str CT.LineBreak = False
111112 inlineContains str (CT.Emph txt) = F.any (inlineContains str) txt
112113 inlineContains str (CT.Strong txt) = F.any (inlineContains str) txt
113− inlineContains str (CT.Code txt) = T.isInfixOf str txt
114+ inlineContains str (CT.Code txt) = T.isInfixOf str (T.toLower txt)
114115 inlineContains str (CT.Link body url title) = F.any (inlineContains str) body
115116 inlineContains str (CT.Image body url title) = False
116117 inlineContains str (CT.Entity a) = False
117− inlineContains str (CT.RawHtml txt) = T.isInfixOf str txt
118+ inlineContains str (CT.RawHtml txt) = T.isInfixOf str (T.toLower txt)