added some samples
[ekitaihs.git] / Ekitai.hs
index 6fe1195..9e416e1 100644 (file)
--- a/Ekitai.hs
+++ b/Ekitai.hs
@@ -1,4 +1,5 @@
 import System.Environment
+import System.IO
 
 import qualified Data.Vector as V
 import qualified Brick as B
@@ -10,12 +11,28 @@ import Render
 -- ui :: B.Widget ()
 -- ui = B.str "hello" <+> B.str "World"
 
--- main :: IO ()
+hGetLines :: Handle -> IO [String]
+hGetLines h = do
+    line <- hGetLine h
+    isEof <- hIsEOF h
+    if isEof then return [line]
+    else do
+        lines <- hGetLines h
+        return (line:lines)
+
 main = do
-    initialState <- buildInitialState
+    argv <- getArgs
+    (opts, fname) <- ekitaiOpts argv
+    handle <- openFile fname ReadMode
+    contents <- hGetLines handle
+    hClose handle
+    -- putStrLn $ show $ stringToSim contents
+    initialState <- buildInitialState $ stringToSim contents
     endState <- B.defaultMain ekitaiApp initialState
-    print endState
-    -- argv <- getArgs
-    -- (opts, fname) <- ekitaiOpts argv
+    -- print endState
+    return 0
+
+-- main :: IO ()
+-- main = do
     -- return 0