X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;f=Ekitai.hs;h=af47e0237ed135e3f8efd4de8eccda3faab7a2e6;hb=76d05eb2de39a69e93c2c342073cde2627c9f50c;hp=6fe1195234d822b5dd13faeeef1c7d767e9f7e79;hpb=c68579ccc2b03996eec6ac5c1526d6e5d20c3c78;p=ekitaihs.git diff --git a/Ekitai.hs b/Ekitai.hs index 6fe1195..af47e02 100644 --- a/Ekitai.hs +++ b/Ekitai.hs @@ -1,21 +1,29 @@ import System.Environment +import System.IO import qualified Data.Vector as V -import qualified Brick as B import Parse import Sim import Render --- ui :: B.Widget () --- ui = B.str "hello" <+> B.str "World" +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 :: IO () main = do - initialState <- buildInitialState - endState <- B.defaultMain ekitaiApp initialState - print endState - -- argv <- getArgs - -- (opts, fname) <- ekitaiOpts argv - -- return 0 + -- handle file stuff + argv <- getArgs + (opts, fname) <- ekitaiOpts argv + handle <- openFile fname ReadMode + contents <- hGetLines handle + hClose handle + -- start brick + ekitaiMain $ stringToSim contents + return 0