where
import Data.Maybe
-import Network.URI
+import Network.URI hiding (fragment)
import Rakka.Wiki
-import Text.ParserCombinators.Parsec
+import Text.ParserCombinators.Parsec hiding (label)
type CommandTypeOf = String -> Maybe CommandType
toType :: Char -> ListType
toType '*' = Bullet
toType '#' = Numbered
+ toType _ = undefined
definitionList :: CommandTypeOf -> Parser BlockElement
return []
-blockCommand :: Parser BlockElement
-blockCommand = pzero -- not implemented
-
-
paragraph :: CommandTypeOf -> Parser BlockElement
paragraph cmdTypeOf = paragraph' >>= return . Paragraph
where
objLink :: Parser InlineElement
objLink = do try (string "[[[")
- page <- many1 (noneOf "|]")
- text <- option Nothing
- (char '|' >> many1 (satisfy (/= ']')) >>= return . Just)
+ page <- many1 (noneOf "|]")
+ label <- option Nothing
+ (char '|' >> many1 (satisfy (/= ']')) >>= return . Just)
string "]]]"
- return $ ObjectLink page text
+ return $ ObjectLink page label
<?>
"object link"
(many1 (noneOf "#|]") >>= return . Just)
fragment <- option Nothing
(char '#' >> many1 (noneOf "|]") >>= return . Just)
- text <- option Nothing
+ label <- option Nothing
(char '|' >> many1 (satisfy (/= ']')) >>= return . Just)
case (page, fragment) of
(_, _) -> return ()
string "]]"
- return $ PageLink page fragment text
+ return $ PageLink page fragment label
<?>
"page link"
extLink = do char '['
uriStr <- many1 (noneOf " \t]")
skipMany (oneOf " \t")
- text <- option Nothing
- (many1 (noneOf "]") >>= return . Just)
+ label <- option Nothing
+ (many1 (noneOf "]") >>= return . Just)
case parseURI uriStr of
- Just uri -> char ']' >> return (ExternalLink uri text)
+ Just uri -> char ']' >> return (ExternalLink uri label)
Nothing -> pzero <?> "absolute URI"
<?>
"external link"