diff --git a/ParseHtml.hs b/ParseHtml.hs
index ac6128c..8ccedee 100644
--- a/ParseHtml.hs
+++ b/ParseHtml.hs
@@ -11,7 +11,7 @@ printDifferentDef :: T.Text -> IO ()
printDifferentDef x = putStrLn (getDifferentDef x)
getDifferentDef :: T.Text -> String
-getDifferentDef x = getDifferentDefMessages (length xs) ++ renderWordList xs
+getDifferentDef x = getDifferentDefMessages (length xs) ++ renderHeaderList xs
where xs = (parseDefTags . differentDefTags) x
getDifferentDefMessages :: Int -> String
@@ -21,8 +21,8 @@ getDifferentDefMessages _ = "Plusieurs définitions disponibles : \n"
parseDefTags :: [Tag String] -> [WordDefHeader]
parseDefTags [] = []
-parseDefTags xs =
- (WordDefHeader (WordName (renderTags (take 1 (fst st))))
+parseDefTags xs =
+ (WordDefHeader (WordName (renderTags (take 1 (fst st))))
(WordType (renderTags [(fst st) !! 1])))
: (parseDefTags (snd st))
where st = subTags xs
@@ -55,9 +55,9 @@ parseFullDefTags = findRelevantTags . parseTags . T.unpack
findRelevantTags :: [Tag String] -> [Tag String]
findRelevantTags [] = []
-findRelevantTags (x:xs) = if x ~== " y:(f xs)) (L.find (~== TagText "") xs)
+ then maybe (f xs) (\y -> y:(f xs)) (L.find (~== TagText "") xs)
else (f xs)
where
f = findRelevantTags
diff --git a/WordDef.hs b/WordDef.hs
index 72d8fd6..2e62936 100644
--- a/WordDef.hs
+++ b/WordDef.hs
@@ -5,7 +5,7 @@ module WordDef
WordName(WordName),
WordType(WordType),
WordSentence(..),
- renderWordList,
+ renderHeaderList,
renderHeader,
renderFullDef
) where
@@ -19,19 +19,27 @@ data WordDefHeader = WordDefHeader WordName WordType deriving Show
data WordName = WordName String deriving Show
data WordType = WordType String deriving Show
-renderFullDef :: WordFullDef -> String
-renderFullDef w = show w
-
-renderHeader :: WordDefHeader -> String
-renderHeader (WordDefHeader n t) = (getNameString n) ++ (getTypeString t)
-
getNameString :: WordName -> String
getNameString (WordName s) = s
getTypeString :: WordType -> String
getTypeString (WordType s) = s
-renderWordList :: [WordDefHeader] -> String
-renderWordList [] = ""
-renderWordList (x:xs) = (renderHeader x) ++ "\n" ++ (renderWordList xs)
+renderFullDef :: WordFullDef -> String
+renderFullDef (WordFullDef wordDefHeader wordSentenceList) =
+ renderHeader wordDefHeader ++ "\n\n" ++ renderWordSentenceList wordSentenceList
+renderHeader :: WordDefHeader -> String
+renderHeader (WordDefHeader n t) = (getNameString n) ++ (getTypeString t)
+
+renderHeaderList :: [WordDefHeader] -> String
+renderHeaderList [] = ""
+renderHeaderList (x:xs) = (renderHeader x) ++ "\n" ++ (renderHeaderList xs)
+
+renderWordSentence :: WordSentence -> String
+renderWordSentence (WordDefSentence s) = s
+renderWordSentence (WordExampleSentence s) = s
+
+renderWordSentenceList :: [WordSentence] -> String
+renderWordSentenceList [] = []
+renderWordSentenceList (x:xs) = renderWordSentence x ++ renderWordSentenceList xs