summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--guix/scripts/edit.scm13
1 files changed, 10 insertions, 3 deletions
diff --git a/guix/scripts/edit.scm b/guix/scripts/edit.scm
index ce3ac4146d..555796a69c 100644
--- a/guix/scripts/edit.scm
+++ b/guix/scripts/edit.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mathieu Lirzin <mthl@gnu.org>
;;;
;;; This file is part of GNU Guix.
@@ -74,9 +74,16 @@ line."
(define (guix-edit . args)
+ (define (parse-arguments)
+ ;; Return the list of package names.
+ (args-fold* args %options
+ (lambda (opt name arg result)
+ (leave (_ "~A: unrecognized option~%") name))
+ cons
+ '()))
+
(with-error-handling
- (let* ((specs (parse-command-line args %options '(())
- #:argument-handler cons))
+ (let* ((specs (reverse (parse-arguments)))
(packages (map specification->package specs)))
(for-each (lambda (package)
(unless (package-location package)