X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=Main.hs;h=8dec3829a18d5fe82717ccc98ded344292763635;hb=625a2981711271d1f5841c55978d69881d6054da;hp=3c634d36796ec7e71fb86a52138c7974d4b26acd;hpb=0fa0fc355546141e597b7c483f8c6b9e54ac17ce;p=yawbih.git diff --git a/Main.hs b/Main.hs index 3c634d3..8dec382 100644 --- a/Main.hs +++ b/Main.hs @@ -21,7 +21,7 @@ test key = do main = do db <- testDB - runWithHook [] (\(key:act) -> showPage db (filter (/= '\\') key)) $ showPage db "MainPage" + runWithHook [] (\(key:act) -> showPage db (filter (/= '\\') key)) $ showPage db "itproj3" editPage db key = do s <- io $ getCurrent db key @@ -29,7 +29,7 @@ editPage db key = do Nothing -> return "" Just (x,_) -> return x standardQuery key $ do - t <- p $ makeTextarea s' (attr_SS "rows" "10" ## attr_SS "cols" "75" ## attr_SS "colspan" "2") + t <- p $ makeTextarea s' (attr_SS "rows" "25" ## attr_SS "cols" "120" ## attr_SS "colspan" "2") p empty text "Author: " a <- textInputField (fieldSIZE 20) @@ -66,7 +66,7 @@ parseText full = case parse wikiParser "" full of footer db key = do hr empty table $ tr $ do - td $ submitLink0 (showPage db "MainPage") (text "Back to main page") + td $ submitLink0 (showPage db "itproj3") (text "Back to main page") when (e key) $ td $ submitLink0 (editPage db key) (text "Edit this keyword") when (e key) $ td $ submitLink0 (listRevs db key) (text "List old versions") td $ submitLink0 (listKeywords db) (text "List all keywords") @@ -128,17 +128,8 @@ toWash ((Text s):xs) = do toWash ((Link l d):xs) = do hlink (URL {unURL = ("wiki?"++l)}) (text d) toWash xs -toWash ((Bold d):xs) = do - b (toWash d) - toWash xs -toWash ((Emph d):xs) = do - em (toWash d) - toWash xs -toWash ((Underline d):xs) = do - u (toWash d) - toWash xs -toWash ((Strike d):xs) = do - strike (toWash d) +toWash ((Font o d):xs) = do + fontOp o (toWash d) toWash xs toWash ((Heading n d):xs) = do heading n $ toWash d @@ -147,15 +138,24 @@ toWash ((Url l):xs) = do hlink (URL {unURL = (l)}) (text $ stripMailto l) toWash xs toWash ((Pre s):xs) = do - pre $ text s + pre $ toWash s toWash xs -toWash ((List l):xs) = do - ul $ mapM (\s -> li $ toWash s) l +toWash ((List o l):xs) = do + listType o $ mapM (\s -> li $ toWash s) l toWash xs +listType True = ol +listType False = ul + stripMailto ('m':'a':'i':'l':'t':'o':':':xs) = xs stripMailto xs = xs +fontOp Bold = b +fontOp Emph = em +fontOp Mono = tt +fontOp Underline = u +fontOp Strike = strike + heading 1 = h1 heading 2 = h2 heading 3 = h3