aboutsummaryrefslogtreecommitdiff
path: root/emacs.am
diff options
context:
space:
mode:
authorAlex Kost <alezost@gmail.com>2015-11-20 12:38:31 +0300
committerAlex Kost <alezost@gmail.com>2016-01-02 17:25:35 +0300
commit7735c503b5b8dfe7d8963207f4f2cf0b7dfd3894 (patch)
treeabff13562165160b51938a84a7f93ab32c39f329 /emacs.am
parent2c7ed388cf403120c17b5e222ac5dda093f5ad94 (diff)
downloadpatches-7735c503b5b8dfe7d8963207f4f2cf0b7dfd3894.tar
patches-7735c503b5b8dfe7d8963207f4f2cf0b7dfd3894.tar.gz
emacs: Factorize macros for defining interfaces.
Make a root 'guix-buffer-define-interface' macro. It should generate a common code for any type of interface. Inherit 'guix-info-define-interface' and 'guix-list-define-interface' from it. They should provide a general 'info'/'list' interface for any data. Finally, make 'guix-ui-define-interface' for the common code for interfaces to Guix packages and generations, and inherit 'guix-ui-info-define-interface' and 'guix-ui-list-define-interface' from it. * emacs/guix-base.el (guix-define-buffer-type): Rename to... (guix-buffer-define-interface): ... this. Rename internal variables ('buf-' -> 'buffer-'). Move ':required' keyword to 'guix-ui-define-interface'. * emacs/guix-info.el (guix-info-define-interface): New macro. (guix-info-font-lock-keywords): New variable. * emacs/guix-list.el (guix-list-define-entry-type): Rename to... (guix-list-define-interface): ... this. (guix-list-font-lock-keywords): New variable. (guix-list-describe-ids): Move and rename to... * emacs/guix-ui.el: New file. (guix-ui-list-describe): ... this. (guix-ui-define-interface, guix-ui-info-define-interface) (guix-ui-list-define-interface): New macros. (guix-ui-font-lock-keywords): New variable. * emacs.am (ELFILES): Add "emacs/guix-ui.el"
Diffstat (limited to 'emacs.am')
-rw-r--r--emacs.am1
1 files changed, 1 insertions, 0 deletions
diff --git a/emacs.am b/emacs.am
index a205b0a359..ad7de78657 100644
--- a/emacs.am
+++ b/emacs.am
@@ -40,6 +40,7 @@ ELFILES = \
emacs/guix-prettify.el \
emacs/guix-profiles.el \
emacs/guix-read.el \
+ emacs/guix-ui.el \
emacs/guix-utils.el \
emacs/guix.el