started converting to use optparse-applicative
This is a work in progress. It compiles and is able to do basic command dispatch, including git autocorrection, while using optparse-applicative for the core commandline parsing. * Many commands are temporarily disabled before conversion. * Options are not wired in yet. * cmdnorepo actions don't work yet. Also, removed the [Command] list, which was only used in one place.
This commit is contained in:
parent
4018e5f6f1
commit
a2ba701056
104 changed files with 435 additions and 370 deletions
12
Command.hs
12
Command.hs
|
@ -7,6 +7,7 @@
|
|||
|
||||
module Command (
|
||||
command,
|
||||
commandParser,
|
||||
noRepo,
|
||||
noCommit,
|
||||
noMessages,
|
||||
|
@ -32,10 +33,17 @@ import CmdLine.Action as ReExported
|
|||
import CmdLine.Option as ReExported
|
||||
import CmdLine.GitAnnex.Options as ReExported
|
||||
|
||||
{- Generates a normal command -}
|
||||
command :: String -> String -> CommandSeek -> CommandSection -> String -> Command
|
||||
import qualified Options.Applicative as O
|
||||
|
||||
{- Generates a normal Command -}
|
||||
command :: String -> String -> CommandSection -> String -> CommandParser -> Command
|
||||
command = Command [] Nothing commonChecks False False
|
||||
|
||||
{- Simple CommandParser generator, for when the CommandSeek wants all
|
||||
- non-option parameters. -}
|
||||
commandParser :: (CmdParams -> CommandSeek) -> CommandParser
|
||||
commandParser mkseek = mkseek <$> O.many (O.argument O.str O.idm)
|
||||
|
||||
{- Indicates that a command doesn't need to commit any changes to
|
||||
- the git-annex branch. -}
|
||||
noCommit :: Command -> Command
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue