Browse Source

Use smarter string appending for assets

Getty Ritter 3 years ago
parent
commit
f3543cfbe1
1 changed files with 8 additions and 1 deletions
  1. 8 1
      core.rkt

+ 8 - 1
core.rkt

@@ -84,9 +84,16 @@
 
 (define (asset name table)
   (define (mk-feature feature)
-    (list (car feature) (apply string-append (cdr feature))))
+    (list (car feature) (smart-string-append (cdr feature))))
   (let [(stuff (map mk-feature table))]
     `(asset ,name ,stuff)))
+
+(define (smart-string-append list)
+  (define (ensure-leading-space str)
+    (if (char-whitespace? (string-ref str 0))
+        str
+        (string-append " " str)))
+  (apply string-append (cons (car list) (map ensure-leading-space (cdr list)))))
   
 
 (define-syntax-rule [define-asset-path name . table]