fix handling of --debug before command
This commit is contained in:
parent
c53732a4af
commit
8bbd22d7ed
@ -87,6 +87,7 @@ where
|
|||||||
import qualified Control.Exception as C
|
import qualified Control.Exception as C
|
||||||
-- import Control.Monad (filterM)
|
-- import Control.Monad (filterM)
|
||||||
import Control.Monad (when)
|
import Control.Monad (when)
|
||||||
|
import Data.Char (isDigit)
|
||||||
import Data.List
|
import Data.List
|
||||||
import Data.List.Split
|
import Data.List.Split
|
||||||
import Data.Maybe
|
import Data.Maybe
|
||||||
@ -504,9 +505,11 @@ argsToCliOpts args addons = do
|
|||||||
moveFlagsAfterCommand :: [String] -> [String]
|
moveFlagsAfterCommand :: [String] -> [String]
|
||||||
moveFlagsAfterCommand args = move args
|
moveFlagsAfterCommand args = move args
|
||||||
where
|
where
|
||||||
move (f:a:as) | isMovableNoArgFlag f = (move $ a:as) ++ [f]
|
move (f:a:as) | isMovableNoArgFlag f = (move $ a:as) ++ [f]
|
||||||
move (f:v:a:as) | isMovableReqArgFlag f = (move $ a:as) ++ [f,v]
|
move (f:v:a:as) | isMovableReqArgFlag f = (move $ a:as) ++ [f,v]
|
||||||
move (fv:a:as) | isMovableReqArgFlagAndValue fv = (move $ a:as) ++ [fv]
|
move (fv:a:as) | isMovableReqArgFlagAndValue fv = (move $ a:as) ++ [fv]
|
||||||
|
move ("--debug":v:a:as) | not (null v) && all isDigit v = (move $ a:as) ++ ["--debug",v]
|
||||||
|
move ("--debug":a:as) = (move $ a:as) ++ ["--debug"]
|
||||||
move as = as
|
move as = as
|
||||||
|
|
||||||
isMovableNoArgFlag a = "-" `isPrefixOf` a && dropWhile (=='-') a `elem` noargflagstomove
|
isMovableNoArgFlag a = "-" `isPrefixOf` a && dropWhile (=='-') a `elem` noargflagstomove
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user