git-annex/Command/Describe.hs
Joey Hess 2ba1559a8e
git style quoting for ActionItemOther
Added StringContainingQuotedPath, which is used for ActionItemOther.

In the process, checked every ActionItemOther for those containing
filenames, and made them use quoting.

Sponsored-by: Graham Spencer on Patreon
2023-04-08 16:30:01 -04:00

36 lines
893 B
Haskell

{- git-annex command
-
- Copyright 2011 Joey Hess <id@joeyh.name>
-
- Licensed under the GNU AGPL version 3 or higher.
-}
module Command.Describe where
import Command
import qualified Remote
import Logs.UUID
cmd :: Command
cmd = command "describe" SectionSetup
"change description of a repository"
(paramPair paramRemote paramDesc)
(withParams seek)
seek :: CmdParams -> CommandSeek
seek = withWords (commandAction . start)
start :: [String] -> CommandStart
start (name:description) | not (null description) = do
u <- Remote.nameToUUID name
starting "describe" ai si $
perform u $ unwords description
where
ai = ActionItemOther (Just (UnquotedString name))
si = SeekInput [name]
start _ = giveup "Specify a repository and a description."
perform :: UUID -> String -> CommandPerform
perform u description = do
describeUUID u (toUUIDDesc description)
next $ return True