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'.
This commit is contained in:
parent
73ce3c19c4
commit
ceea647c72
|
@ -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."
|
||||
|
|
|
@ -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) "-")))
|
||||
|
|
Loading…
Reference in New Issue