convert all commands to work with optparse-applicative
Still no options though.
This commit is contained in:
parent
3125da54f6
commit
6e5c1f8db3
99 changed files with 391 additions and 297 deletions
|
@ -20,7 +20,7 @@ type Batchable t = BatchMode -> t -> CommandStart
|
|||
-- In batch mode, one line at a time is read, parsed, and a reply output to
|
||||
-- stdout. In non batch mode, the command's parameters are parsed and
|
||||
-- a reply output for each.
|
||||
batchable :: ((t -> CommandStart) -> CommandSeek) -> Batchable t -> CommandSeek
|
||||
batchable :: ((t -> CommandStart) -> CmdParams -> CommandSeek) -> Batchable t -> CmdParams -> CommandSeek
|
||||
batchable seeker starter params = ifM (getOptionFlag batchOption)
|
||||
( batchloop
|
||||
, seeker (starter NoBatch) params
|
||||
|
|
|
@ -16,7 +16,6 @@ import Utility.Env
|
|||
import Annex.Ssh
|
||||
|
||||
import qualified Command.Add
|
||||
{-
|
||||
import qualified Command.Unannex
|
||||
import qualified Command.Drop
|
||||
import qualified Command.Move
|
||||
|
@ -117,12 +116,10 @@ import qualified Command.TestRemote
|
|||
#ifdef WITH_EKG
|
||||
import System.Remote.Monitoring
|
||||
#endif
|
||||
-}
|
||||
|
||||
cmds :: [Command]
|
||||
cmds =
|
||||
[ Command.Add.cmd
|
||||
{-
|
||||
, Command.Get.cmd
|
||||
, Command.Drop.cmd
|
||||
, Command.Move.cmd
|
||||
|
@ -221,7 +218,6 @@ cmds =
|
|||
, Command.FuzzTest.cmd
|
||||
, Command.TestRemote.cmd
|
||||
#endif
|
||||
-}
|
||||
]
|
||||
|
||||
header :: String
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{- git-annex usage messages
|
||||
-
|
||||
- Copyright 2010-2011 Joey Hess <id@joeyh.name>
|
||||
- Copyright 2010-2015 Joey Hess <id@joeyh.name>
|
||||
-
|
||||
- Licensed under the GNU GPL version 3 or higher.
|
||||
-}
|
||||
|
@ -8,10 +8,10 @@
|
|||
module CmdLine.Usage where
|
||||
|
||||
import Common.Annex
|
||||
|
||||
import Types.Command
|
||||
|
||||
import System.Console.GetOpt
|
||||
import qualified Options.Applicative as O
|
||||
|
||||
usageMessage :: String -> String
|
||||
usageMessage s = "Usage: " ++ s
|
||||
|
@ -56,6 +56,13 @@ commandUsage cmd = unlines
|
|||
, "[option ...]"
|
||||
]
|
||||
|
||||
{- Simple CommandParser generator, for when the CommandSeek wants all
|
||||
- non-option parameters. -}
|
||||
withParams :: (CmdParams -> CommandSeek) -> String -> CommandParser
|
||||
withParams mkseek paramdesc = mkseek <$> O.many cmdparams
|
||||
where
|
||||
cmdparams = O.argument O.str (O.metavar paramdesc)
|
||||
|
||||
{- Descriptions of params used in usage messages. -}
|
||||
paramPaths :: String
|
||||
paramPaths = paramRepeating paramPath -- most often used
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue