aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Tom Willemsen2012-07-01 17:45:46 +0200
committerGravatar Tom Willemsen2012-07-01 17:45:46 +0200
commit4820492a557622061038f8e2a32cf2c8614347da (patch)
tree9349d1b93dc6b9b86f11a3a7186baa42012eb724
parentdf9ad8f1629061b40e170fe440644cc645299574 (diff)
downloadgitto-4820492a557622061038f8e2a32cf2c8614347da.tar.gz
gitto-4820492a557622061038f8e2a32cf2c8614347da.zip
Add switch to list saved repository locations
-rw-r--r--gitto/main.scm14
1 files changed, 12 insertions, 2 deletions
diff --git a/gitto/main.scm b/gitto/main.scm
index 600ddc5..defe542 100644
--- a/gitto/main.scm
+++ b/gitto/main.scm
@@ -33,6 +33,7 @@
gitto [options]
-r, --register REPO Register a new repository directory
-R, --remove REPO Repmove a repository directory
+ -l, --repositories List all registered repositories' locations
-v, --version Display version
-h, --help Display this help
"))
@@ -101,22 +102,31 @@ gitto [options]
(if clean? "not " ""))))
repositories))
+(define (list-repository-locations)
+ (for-each (lambda (repo)
+ (display repo)
+ (newline))
+ repositories))
+
(define option-spec
`((version (single-char #\v) (value #f))
(help (single-char #\h) (value #f))
(register (single-char #\r) (value #t)
(predicate ,git-dir?))
(remove (single-char #\R) (value #t)
- (predicate ,git-dir?))))
+ (predicate ,git-dir?))
+ (repositories (single-char #\l))))
(define (main args)
(let* ((options (getopt-long args option-spec))
(help-wanted (option-ref options 'help #f))
(version-wanted (option-ref options 'version #f))
(registration-needed (option-ref options 'register #f))
- (removal (option-ref options 'remove #f)))
+ (removal (option-ref options 'remove #f))
+ (list (option-ref options 'repositories #f)))
(cond (version-wanted (version))
(help-wanted (help))
(registration-needed => register-repository)
(removal => remove-repository)
+ (list (list-repository-locations))
(#t (list-repositories)))))