summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--guix/ui.scm12
1 files changed, 7 insertions, 5 deletions
diff --git a/guix/ui.scm b/guix/ui.scm
index cd47989ca6..370b41b9dc 100644
--- a/guix/ui.scm
+++ b/guix/ui.scm
@@ -77,17 +77,19 @@ messages."
(define (augmented-format-string fmt)
(string-append "~:[~*~;guix ~a: ~]~a" (syntax->datum fmt)))
- (syntax-case x (N_ _) ; these are literals, yeah...
- ((name (_ fmt) args (... ...))
- (string? (syntax->datum #'fmt))
+ (syntax-case x ()
+ ((name (underscore fmt) args (... ...))
+ (and (string? (syntax->datum #'fmt))
+ (free-identifier=? #'underscore #'_))
(with-syntax ((fmt* (augmented-format-string #'fmt))
(prefix (datum->syntax x prefix)))
#'(format (guix-warning-port) (gettext fmt*)
(program-name) (program-name) prefix
args (... ...))))
- ((name (N_ singular plural n) args (... ...))
+ ((name (N-underscore singular plural n) args (... ...))
(and (string? (syntax->datum #'singular))
- (string? (syntax->datum #'plural)))
+ (string? (syntax->datum #'plural))
+ (free-identifier=? #'N-underscore #'N_))
(with-syntax ((s (augmented-format-string #'singular))
(p (augmented-format-string #'plural))
(prefix (datum->syntax x prefix)))