diff options
| author | Akshay Nair <phenax5@gmail.com> | 2025-10-24 20:25:15 +0530 |
|---|---|---|
| committer | Akshay Nair <phenax5@gmail.com> | 2025-10-24 20:25:15 +0530 |
| commit | ff0daf7c5edb92e9e2361e9985996725bade9a85 (patch) | |
| tree | eea01a125f94bd1169e12ee55b0ff4df365ef92c /lib | |
| parent | cae48d231a82cd451658e3745ab23e1a2057d406 (diff) | |
| download | daffm-ff0daf7c5edb92e9e2361e9985996725bade9a85.tar.gz daffm-ff0daf7c5edb92e9e2361e9985996725bade9a85.zip | |
Add build/install setup + fix read error for move command
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/Daffm/Action/Commands.hs | 9 | ||||
| -rw-r--r-- | lib/Daffm/State.hs | 2 |
2 files changed, 5 insertions, 6 deletions
diff --git a/lib/Daffm/Action/Commands.hs b/lib/Daffm/Action/Commands.hs index 669ff3c..c77a9fc 100644 --- a/lib/Daffm/Action/Commands.hs +++ b/lib/Daffm/Action/Commands.hs @@ -20,6 +20,7 @@ import Data.Maybe (fromMaybe) import qualified Data.Text as Text import qualified Data.Text.IO as Text import qualified System.Process as Proc +import Text.Read (readMaybe) runCmdline :: AppEvent () runCmdline = do @@ -53,14 +54,14 @@ parseCommand cmd = mkCmd . splitCmdArgs $ trimStart cmd ("search", term) -> Just $ CmdSearch $ trim term ("search-next", _) -> Just $ CmdSearchNext 1 ("search-prev", _) -> Just $ CmdSearchNext (-1) - ("move", Text.stripPrefix "$" -> Just _) -> Just $ CmdMove MoveToEnd - ("move", Text.stripPrefix "+" -> Just inc) -> Just . CmdMove . MoveDown . read $ Text.unpack inc - ("move", Text.stripPrefix "-" -> Just inc) -> Just . CmdMove . MoveUp . read $ Text.unpack inc - ("move", pos) -> Just . CmdMove . MoveTo . read $ Text.unpack pos ("map", Text.break isSpace -> (keysraw, cmdraw)) -> do keys <- parseKeySequence keysraw cmd' <- parseCommand $ trimStart cmdraw pure $ CmdKeymapSet keys cmd' + ("move", Text.stripPrefix "$" -> Just _) -> Just $ CmdMove MoveToEnd + ("move", Text.stripPrefix "+" -> Just inc) -> Just . CmdMove . MoveDown . read $ Text.unpack inc + ("move", Text.stripPrefix "-" -> Just inc) -> Just . CmdMove . MoveUp . read $ Text.unpack inc + ("move", readMaybe . Text.unpack -> Just pos) -> Just . CmdMove . MoveTo $ pos _ -> Nothing readCommandLines' :: Text.Text -> IO [Text.Text] diff --git a/lib/Daffm/State.hs b/lib/Daffm/State.hs index cd8d6ec..6d7f6ea 100644 --- a/lib/Daffm/State.hs +++ b/lib/Daffm/State.hs @@ -3,13 +3,11 @@ {-# HLINT ignore "Redundant multi-way if" #-} module Daffm.State where -import Brick (suspendAndResume') import qualified Brick.Widgets.Edit as Editor import qualified Brick.Widgets.List as L import Control.Applicative ((<|>)) import Control.Exception (try) import Control.Monad (filterM, forM) -import qualified Debug.Trace as Debug import Daffm.Types import Daffm.Utils (trim) import Data.List (findIndex, sortBy) |
