diff options
author | Joey Hess <joey@kitenet.net> | 2014-02-20 13:00:34 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2014-02-20 13:00:34 -0400 |
commit | 42fe9f99f1c8a808f94330273df0e15fb0ff2c4c (patch) | |
tree | e088694555d0b0efe7c8923c2c1a7bb153dc756c | |
parent | 1e3c8006a99257b3b14a3e14a77493cd8c68a59a (diff) |
urk, forgot to check this in yesterday!
-rw-r--r-- | Command/VFilter.hs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/Command/VFilter.hs b/Command/VFilter.hs new file mode 100644 index 000000000..c16b28956 --- /dev/null +++ b/Command/VFilter.hs @@ -0,0 +1,30 @@ +{- git-annex command + - + - Copyright 2014 Joey Hess <joey@kitenet.net> + - + - Licensed under the GNU GPL version 3 or higher. + -} + +module Command.VFilter where + +import Common.Annex +import Command +import Annex.View +import Command.View (paramView, parseViewParam, checkoutViewBranch) + +def :: [Command] +def = [notBareRepo $ notDirect $ + command "vfilter" paramView seek SectionMetaData "filter current view"] + +seek :: CommandSeek +seek = withWords start + +start :: [String] -> CommandStart +start params = do + showStart "vfilter" "" + withCurrentView $ \view -> do + let view' = filterView view $ + map parseViewParam $ reverse params + next $ next $ if visibleViewSize view' > visibleViewSize view + then error "That would add an additional level of directory structure to the view, rather than filtering it. If you want to do that, use vadd instead of vfilter." + else checkoutViewBranch view' narrowView |