[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 4/7] emacs: Buttonize licenses in "Package Info".
From: |
Alex Kost |
Subject: |
[PATCH 4/7] emacs: Buttonize licenses in "Package Info". |
Date: |
Fri, 22 Jan 2016 11:19:32 +0300 |
* emacs/guix-ui-package.el (guix-package-license): New button type.
(guix-package-info-format, guix-output-info-format): Use it.
* doc/emacs.texi (Emacs Info buffer): Mention it.
---
doc/emacs.texi | 1 +
emacs/guix-ui-package.el | 12 ++++++++++--
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/doc/emacs.texi b/doc/emacs.texi
index eb470ab..d321a89 100644
--- a/doc/emacs.texi
+++ b/doc/emacs.texi
@@ -355,6 +355,7 @@ emacs, The GNU Emacs Manual}) which can be used to:
@item install/remove a package;
@item jump to a package location;
@item browse home page of a package;
address@hidden browse license URL;
@item describe packages from ``Inputs'' fields.
@end itemize
diff --git a/emacs/guix-ui-package.el b/emacs/guix-ui-package.el
index 2951452..655ed74 100644
--- a/emacs/guix-ui-package.el
+++ b/emacs/guix-ui-package.el
@@ -35,6 +35,7 @@
(require 'guix-entry)
(require 'guix-utils)
(require 'guix-hydra-build)
+(require 'guix-license)
(guix-ui-define-entry-type package)
(guix-ui-define-entry-type output)
@@ -220,7 +221,7 @@ ENTRIES is a list of package entries to get info about
packages."
(source simple guix-package-info-insert-source)
(location format (format guix-package-location))
(home-url format (format guix-url))
- (license format (format guix-package-info-license))
+ (license format (format guix-package-license))
(systems format guix-package-info-insert-systems)
(inputs format (format guix-package-input))
(native-inputs format (format guix-package-native-input))
@@ -338,6 +339,13 @@ formatted with this string, an action button is inserted.")
'action (lambda (btn)
(guix-find-location (button-label btn))))
+(define-button-type 'guix-package-license
+ :supertype 'guix
+ 'face 'guix-package-info-license
+ 'help-echo "Browse license URL"
+ 'action (lambda (btn)
+ (guix-browse-license-url (button-label btn))))
+
(define-button-type 'guix-package-name
:supertype 'guix
'face 'guix-package-info-name-button
@@ -767,7 +775,7 @@ for all ARGS."
(dependencies simple (indent guix-file))
(location format (format guix-package-location))
(home-url format (format guix-url))
- (license format (format guix-package-info-license))
+ (license format (format guix-package-license))
(systems format guix-package-info-insert-systems)
(inputs format (format guix-package-input))
(native-inputs format (format guix-package-native-input))
--
2.7.0
- [PATCH 0/7]: Add "M-x guix-licenses" and friends., Alex Kost, 2016/01/22
- [PATCH 4/7] emacs: Buttonize licenses in "Package Info".,
Alex Kost <=
- [PATCH 5/7] emacs: Add 'guix-packages-by-license' command., Alex Kost, 2016/01/22
- [PATCH 1/7] emacs: Rename 'file-path' to 'file-name'., Alex Kost, 2016/01/22
- [PATCH 6/7] emacs: list: Support displaying URL links., Alex Kost, 2016/01/22
- [PATCH 7/7] emacs: Add interface for licenses., Alex Kost, 2016/01/22
- [PATCH 3/7] emacs: Add 'guix-browse-license-url' command., Alex Kost, 2016/01/22