From 57748c27565117b3ad10c7fce67c36ecf5e5d5c7 Mon Sep 17 00:00:00 2001 From: Alex Kost Date: Fri, 8 Apr 2016 11:51:54 +0300 Subject: [PATCH] emacs: Add license definition button to License Info buffer. * emacs/guix-ui-license.el (guix-license-insert-file): New procedure. (guix-license-info-format): Use it. --- emacs/guix-ui-license.el | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/emacs/guix-ui-license.el b/emacs/guix-ui-license.el index ab1d25bfd2..772a16801f 100644 --- a/emacs/guix-ui-license.el +++ b/emacs/guix-ui-license.el @@ -29,6 +29,7 @@ (require 'guix-info) (require 'guix-backend) (require 'guix-guile) +(require 'guix-license) (guix-define-entry-type license) @@ -64,7 +65,9 @@ SEARCH-TYPE may be one of the following symbols: `all', `id', `name'." ignore guix-license-insert-packages-button (url ignore (simple guix-url)) - guix-license-insert-comment) + guix-license-insert-comment + ignore + guix-license-insert-file) :titles '((url . "URL"))) (declare-function guix-packages-by-license "guix-ui-package") @@ -89,6 +92,16 @@ SEARCH-TYPE may be one of the following symbols: `all', `id', `name'." (guix-info-param-title 'license 'comment)) (guix-info-insert-value-indent comment)))) +(defun guix-license-insert-file (entry) + "Insert button to open license definition." + (let ((license (guix-entry-value entry 'name))) + (guix-insert-button + (guix-license-file) 'guix-file + 'help-echo (format "Open definition of license '%s'" license) + 'action (lambda (btn) + (guix-find-license-definition (button-get btn 'license))) + 'license license))) + ;;; License 'list'