summaryrefslogtreecommitdiff
path: root/emacs
diff options
context:
space:
mode:
Diffstat (limited to 'emacs')
-rw-r--r--emacs/guix-ui-license.el11
1 files changed, 11 insertions, 0 deletions
diff --git a/emacs/guix-ui-license.el b/emacs/guix-ui-license.el
index c5e642f606..ab1d25bfd2 100644
--- a/emacs/guix-ui-license.el
+++ b/emacs/guix-ui-license.el
@@ -44,12 +44,22 @@ SEARCH-TYPE may be one of the following symbols: `all', `id', `name'."
(apply #'guix-list-get-display-entries
'license search-type args))
+(defun guix-license-message (entries search-type &rest args)
+ "Display a message after showing license ENTRIES."
+ ;; Some objects in (guix licenses) module are procedures (e.g.,
+ ;; 'non-copyleft' or 'x11-style'). Such licenses cannot be "described".
+ (when (null entries)
+ (if (cdr args)
+ (message "Unknown licenses.")
+ (message "Unknown license."))))
+
;;; License 'info'
(guix-info-define-interface license
:buffer-name "*Guix License Info*"
:get-entries-function 'guix-license-get-entries
+ :message-function 'guix-license-message
:format '((name ignore (simple guix-info-heading))
ignore
guix-license-insert-packages-button
@@ -86,6 +96,7 @@ SEARCH-TYPE may be one of the following symbols: `all', `id', `name'."
:buffer-name "*Guix Licenses*"
:get-entries-function 'guix-license-get-entries
:describe-function 'guix-license-list-describe
+ :message-function 'guix-license-message
:format '((name nil 40 t)
(url guix-list-get-url 50 t))
:titles '((name . "License"))