Safe Haskell | None |
---|
Provides utilities to manipulate HTML pages
- withTags :: (Tag String -> Tag String) -> String -> String
- demoteHeaders :: String -> String
- getUrls :: [Tag String] -> [String]
- withUrls :: (String -> String) -> String -> String
- toUrl :: FilePath -> String
- toSiteRoot :: String -> String
- isExternal :: String -> Bool
- stripTags :: String -> String
- escapeHtml :: String -> String
Generic
Headers
demoteHeaders :: String -> StringSource
Map every h1
to an h2
, h2
to h3
, etc.
Url manipulation
toUrl :: FilePath -> StringSource
Convert a filepath to an URL starting from the site root
Example:
toUrl "foo/bar.html"
Result:
"/foo/bar.html"
toSiteRoot :: String -> StringSource
Get the relative url to the site root, for a given (absolute) url
isExternal :: String -> BoolSource
Check if an URL links to an external HTTP(S) source
Stripping/escaping
stripTags :: String -> StringSource
Strip all HTML tags from a string
Example:
stripTags "<p>foo</p>"
Result:
"foo"
This also works for incomplete tags
Example:
stripTags "<p>foo</p"
Result:
"foo"
escapeHtml :: String -> StringSource
HTML-escape a string
Example:
escapeHtml "Me & Dean"
Result:
"Me & Dean"