diff options
author | Alex Kost <alezost@gmail.com> | 2015-11-17 22:19:14 +0300 |
---|---|---|
committer | Alex Kost <alezost@gmail.com> | 2016-01-02 17:25:35 +0300 |
commit | ceea647c72cac582126688c71e19e4c9f9137a63 (patch) | |
tree | 0b7b573b9d0aa8714be58ec63b7cfd03ad71f33f /emacs | |
parent | 73ce3c19c435db51ec818ec62a75e0956b31899f (diff) | |
download | guix-ceea647c72cac582126688c71e19e4c9f9137a63.tar.gz |
emacs: Simplify defining parameter titles.
* emacs/guix-utils.el (guix-symbol-title): New procedure. * emacs/guix-base.el (guix-get-param-title): Use it. (guix-param-titles): Remove most titles as they are automatically defined by 'guix-symbol-title'.
Diffstat (limited to 'emacs')
-rw-r--r-- | emacs/guix-base.el | 46 | ||||
-rw-r--r-- | emacs/guix-utils.el | 9 |
2 files changed, 14 insertions, 41 deletions
diff --git a/emacs/guix-base.el b/emacs/guix-base.el index 7055a0984e..43dec3dca3 100644 --- a/emacs/guix-base.el +++ b/emacs/guix-base.el @@ -41,48 +41,14 @@ (defvar guix-param-titles '((package - (id . "ID") - (name . "Name") - (version . "Version") - (source . "Source") - (license . "License") - (synopsis . "Synopsis") - (description . "Description") - (home-url . "Home page") - (outputs . "Outputs") - (inputs . "Inputs") - (native-inputs . "Native inputs") - (propagated-inputs . "Propagated inputs") - (location . "Location") - (installed . "Installed")) + (home-url . "Home page")) (installed - (path . "Installed path") - (dependencies . "Dependencies") - (output . "Output")) + (path . "Installed path")) (output - (id . "ID") - (name . "Name") - (version . "Version") - (source . "Source") - (license . "License") - (synopsis . "Synopsis") - (description . "Description") (home-url . "Home page") - (output . "Output") - (inputs . "Inputs") - (native-inputs . "Native inputs") - (propagated-inputs . "Propagated inputs") - (location . "Location") - (installed . "Installed") - (path . "Installed path") - (dependencies . "Dependencies")) + (path . "Installed path")) (generation - (id . "ID") - (number . "Number") - (prev-number . "Previous number") - (current . "Current") - (path . "Path") - (time . "Time"))) + (prev-number . "Previous number"))) "List for defining titles of entry parameters. Titles are used for displaying information about entries. Each element of the list has a form: @@ -93,9 +59,7 @@ Each element of the list has a form: "Return title of an ENTRY-TYPE entry parameter PARAM." (or (guix-assq-value guix-param-titles entry-type param) - (prog1 (symbol-name param) - (message "Couldn't find title for '%S %S'." - entry-type param)))) + (guix-symbol-title param))) (defun guix-get-name-spec (name version &optional output) "Return Guix package specification by its NAME, VERSION and OUTPUT." diff --git a/emacs/guix-utils.el b/emacs/guix-utils.el index 5a0cad4f2a..e24b58fb17 100644 --- a/emacs/guix-utils.el +++ b/emacs/guix-utils.el @@ -165,6 +165,15 @@ This function is similar to `shell-quote-argument', but less strict." (replace-regexp-in-string (rx (not (any alnum "-=,./\n"))) "\\\\\\&" argument)))) +(defun guix-symbol-title (symbol) + "Return SYMBOL's name, a string. +This is like `symbol-name', but fancier." + (if (eq symbol 'id) + "ID" + (let ((str (replace-regexp-in-string "-" " " (symbol-name symbol)))) + (concat (capitalize (substring str 0 1)) + (substring str 1))))) + (defun guix-command-symbol (&optional args) "Return symbol by concatenating 'guix' and ARGS (strings)." (intern (guix-concat-strings (cons "guix" args) "-"))) |