Safe Haskell | None |
---|---|
Language | Haskell98 |
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 -> String Source
Map every h1
to an h2
, h2
to h3
, etc.
Url manipulation
toUrl :: FilePath -> String Source
Convert a filepath to an URL starting from the site root
Example:
toUrl "foo/bar.html"
Result:
"/foo/bar.html"
This also sanitizes the URL, e.g. converting spaces into '%20'
toSiteRoot :: String -> String Source
Get the relative url to the site root, for a given (absolute) url
isExternal :: String -> Bool Source
Check if an URL links to an external HTTP(S) source
Stripping/escaping
stripTags :: String -> String Source
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 -> String Source
HTML-escape a string
Example:
escapeHtml "Me & Dean"
Result:
"Me & Dean"