aboutsummaryrefslogtreecommitdiff
path: root/lib/Daffm.hs
diff options
context:
space:
mode:
authorAkshay Nair <phenax5@gmail.com>2025-10-08 12:51:02 +0530
committerAkshay Nair <phenax5@gmail.com>2025-10-08 13:10:49 +0530
commit4e8e81b05afa4ba56d64ba714c78ba307f936076 (patch)
tree3d481ce541ea8d5b46cb9e3debcaf1db8a112415 /lib/Daffm.hs
parente173e1f105e72e06c6a3206b9b94f4f1da63b00f (diff)
downloaddaffm-4e8e81b05afa4ba56d64ba714c78ba307f936076.tar.gz
daffm-4e8e81b05afa4ba56d64ba714c78ba307f936076.zip
Refactor args parsing to module + docs update
Diffstat (limited to '')
-rw-r--r--lib/Daffm.hs26
1 files changed, 16 insertions, 10 deletions
diff --git a/lib/Daffm.hs b/lib/Daffm.hs
index afdba11..a4ced9f 100644
--- a/lib/Daffm.hs
+++ b/lib/Daffm.hs
@@ -1,18 +1,24 @@
-module Daffm (app, loadDirToState, mkEmptyAppState) where
+module Daffm (initApp, loadDirToState, mkEmptyAppState) where
-import qualified Brick.Main as M
+import qualified Brick.Main as B
+import Control.Monad (void)
import Daffm.Attrs (appAttrMap)
import Daffm.Event (appEvent)
import Daffm.State (loadDirToState, mkEmptyAppState)
-import Daffm.Types (AppState (..), FocusTarget)
+import Daffm.Types (AppState (..), Configuration, FilePathText, FocusTarget)
import Daffm.View (appView)
-app :: M.App AppState e FocusTarget
+app :: B.App AppState e FocusTarget
app =
- M.App
- { M.appDraw = appView,
- M.appChooseCursor = M.showFirstCursor,
- M.appHandleEvent = appEvent,
- M.appStartEvent = pure (),
- M.appAttrMap = const appAttrMap
+ B.App
+ { B.appDraw = appView,
+ B.appChooseCursor = B.showFirstCursor,
+ B.appHandleEvent = appEvent,
+ B.appStartEvent = pure (),
+ B.appAttrMap = const appAttrMap
}
+
+initApp :: FilePathText -> Configuration -> IO ()
+initApp dir config = do
+ initialState <- loadDirToState dir $ mkEmptyAppState config
+ void $ B.defaultMain app initialState