summaryrefslogtreecommitdiff
path: root/src/cuirass/ui.scm
diff options
context:
space:
mode:
authorMathieu Lirzin <mthl@gnu.org>2016-07-14 17:56:27 +0200
committerMathieu Lirzin <mthl@gnu.org>2016-07-25 02:12:37 +0200
commit89b1f89cfc88c1cdc4e61834e8e1b497b978ee99 (patch)
tree06627f9215e4701f38a7d674bf4273fd4daf01f4 /src/cuirass/ui.scm
parent55e72cb1074b5819660f93426e09c0a10f78e102 (diff)
downloadcuirass-89b1f89cfc88c1cdc4e61834e8e1b497b978ee99.tar
cuirass-89b1f89cfc88c1cdc4e61834e8e1b497b978ee99.tar.gz
Move '%program-name' to (cuirass ui) module.
Diffstat (limited to 'src/cuirass/ui.scm')
-rw-r--r--src/cuirass/ui.scm18
1 files changed, 15 insertions, 3 deletions
diff --git a/src/cuirass/ui.scm b/src/cuirass/ui.scm
index d351e4e..c63a3e5 100644
--- a/src/cuirass/ui.scm
+++ b/src/cuirass/ui.scm
@@ -18,10 +18,22 @@
;;; along with Cuirass. If not, see <http://www.gnu.org/licenses/>.
(define-module (cuirass ui)
- #:use-module (cuirass base)
#:use-module (cuirass config)
- #:export (show-version
- show-package-information))
+ #:export (;; Procedures.
+ show-version
+ show-package-information
+ ;; Parameters.
+ %program-name))
+
+(define %program-name
+ ;; Similar in spirit to Gnulib 'progname' module.
+ (make-parameter ""
+ (λ (val)
+ (cond ((not (string? val))
+ (scm-error 'wrong-type-arg
+ "%program-name" "Not a string: ~S" (list #f) #f))
+ ((string-rindex val #\/) => (λ (idx) (substring val (1+ idx))))
+ (else val)))))
(define (show-version)
"Display version information for COMMAND."