diff options
author | Alex Kost <alezost@gmail.com> | 2016-04-02 21:07:09 +0300 |
---|---|---|
committer | Alex Kost <alezost@gmail.com> | 2016-04-15 11:32:36 +0300 |
commit | 6ea80938aedd3ec4d7f5d7fd80b7da9b1993c577 (patch) | |
tree | 5e78f9b05f177f8d660b8b4a4e87e71a2e0f77c4 /emacs/guix-ui.el | |
parent | de946028beb4e90495c77bd08b86f75765095b42 (diff) | |
download | guix-6ea80938aedd3ec4d7f5d7fd80b7da9b1993c577.tar guix-6ea80938aedd3ec4d7f5d7fd80b7da9b1993c577.tar.gz |
emacs: Factorize code for buffer names.
* emacs/guix-ui.el (guix-ui-buffer-name-default): Extract the code to
compose buffer name and move to...
* emacs/guix-utils.el (guix-compose-buffer-name): ... here. New procedure.
Diffstat (limited to 'emacs/guix-ui.el')
-rw-r--r-- | emacs/guix-ui.el | 22 |
1 files changed, 3 insertions, 19 deletions
diff --git a/emacs/guix-ui.el b/emacs/guix-ui.el index 9a88efc286..47773de91f 100644 --- a/emacs/guix-ui.el +++ b/emacs/guix-ui.el @@ -1,6 +1,6 @@ ;;; guix-ui.el --- Common code for Guix package management interface -*- lexical-binding: t -*- -;; Copyright © 2014, 2015 Alex Kost <alezost@gmail.com> +;; Copyright © 2014, 2015, 2016 Alex Kost <alezost@gmail.com> ;; This file is part of GNU Guix. @@ -117,26 +117,10 @@ The function is called with 2 arguments: BASE-NAME and PROFILE." "Return BASE-NAME." base-name) -;; TODO separate '*...*' logic from the real profile appending. Also add -;; another function to return '*Guix ...: /full/path/to/profile*' name. (defun guix-ui-buffer-name-default (base-name profile) "Return buffer name by appending BASE-NAME and PROFILE's base file name." - (let ((profile-name (file-name-base (directory-file-name profile))) - (re (rx string-start - (group (? "*")) - (group (*? any)) - (group (? "*")) - string-end))) - (or (string-match re base-name) - (error "Unexpected error in defining guix buffer name")) - (let ((first* (match-string 1 base-name)) - (name-body (match-string 2 base-name)) - (last* (match-string 3 base-name))) - ;; Handle the case when buffer name is wrapped by '*'. - (if (and (string= "*" first*) - (string= "*" last*)) - (concat "*" name-body ": " profile-name "*") - (concat base-name ": " profile-name))))) + (guix-compose-buffer-name base-name + (file-name-base (directory-file-name profile)))) (defun guix-ui-buffer-name (base-name profile) "Return Guix buffer name based on BASE-NAME and profile. |