diff options
Diffstat (limited to 'CmdLine/GitAnnex/Options.hs')
-rw-r--r-- | CmdLine/GitAnnex/Options.hs | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/CmdLine/GitAnnex/Options.hs b/CmdLine/GitAnnex/Options.hs index 04f24367c..d762f6a00 100644 --- a/CmdLine/GitAnnex/Options.hs +++ b/CmdLine/GitAnnex/Options.hs @@ -1,6 +1,6 @@ {- git-annex command-line option parsing - - - Copyright 2010-2017 Joey Hess <id@joeyh.name> + - Copyright 2010-2018 Joey Hess <id@joeyh.name> - - Licensed under the GNU GPL version 3 or higher. -} @@ -10,10 +10,12 @@ module CmdLine.GitAnnex.Options where import Options.Applicative import Options.Applicative.Builder.Internal import Control.Concurrent +import qualified Data.Map as M import Annex.Common import qualified Git.Config import qualified Git.Construct +import Git.Remote import Git.Types import Types.Key import Types.TrustLevel @@ -348,9 +350,10 @@ completeRemotes :: HasCompleter f => Mod f a completeRemotes = completer $ mkCompleter $ \input -> do r <- maybe (pure Nothing) (Just <$$> Git.Config.read) =<< Git.Construct.fromCwd - return $ filter (input `isPrefixOf`) - (maybe [] (mapMaybe remoteName . remotes) r) - + return $ filter (input `isPrefixOf`) $ + map remoteKeyToRemoteName $ + filter isRemoteKey $ + maybe [] (M.keys . config) r completeBackends :: HasCompleter f => Mod f a completeBackends = completeWith $ |