aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Kost <alezost@gmail.com>2016-04-15 21:43:13 +0300
committerAlex Kost <alezost@gmail.com>2016-04-18 10:09:02 +0300
commit8934c3b60f2d8438dca0e513b286e11cd2adb096 (patch)
tree3ad9d7de2a57c0937e444d453478e1d3f04af798
parent27986d7b192f23eb4185d5ff0135d0a0470cd86a (diff)
downloadguix-8934c3b60f2d8438dca0e513b286e11cd2adb096.tar
guix-8934c3b60f2d8438dca0e513b286e11cd2adb096.tar.gz
emacs: Display message if license not found.
* emacs/guix-ui-license.el (guix-license-message): New procedure. (guix-license-info-message-function): Use it. (guix-license-list-message-function): Likewise.
-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"))