Commit e805feb23545cda2ff628afda53cddd498982a0f

Thomas de Grivel 2013-12-16T22:11:27

Change *asset-{url,path}-prefix* to *assets-{url,path}-template*.

diff --git a/asset.lisp b/asset.lisp
index 6d369ee..cd1d698 100644
--- a/asset.lisp
+++ b/asset.lisp
@@ -44,14 +44,14 @@
   (asset-source-ext asset))
 
 (defmethod asset-url ((asset asset))
-  (let ((name (asset-name asset))
-	(ext (asset-ext asset)))
-    (str *asset-url-prefix* name (when ext ".") ext)))
+  (expand-uri nil *assets-url-template*
+	      :name (asset-name asset)
+	      :ext (string-downcase (asset-ext asset))))
 
 (defmethod asset-path ((asset asset))
-  (let ((name (asset-name asset))
-	(ext (asset-ext asset)))
-    (str *asset-path-prefix* name (when ext ".") ext)))
+  (expand-uri nil *assets-path-template*
+	      :name (asset-name asset)
+	      :ext (string-downcase (asset-ext asset))))
 
 (defmethod asset-source-path ((asset asset))
   (with-slots (name source-dir source-ext) asset
diff --git a/config.lisp b/config.lisp
index 9d76569..3e3f2ff 100644
--- a/config.lisp
+++ b/config.lisp
@@ -45,9 +45,8 @@
 (defparameter *precompiled-assets*
   *default-precompiled-assets*)
 
-(defvar *asset-url-prefix* "/assets/")
-
-(defvar *asset-path-prefix* "public/assets/")
+(defvar *assets-url-template* "/assets{/name}{.ext}")
+(defvar *assets-path-template* "public/assets{/name}{.ext}")
 
 ;;  Config stanzas
 
diff --git a/lowh.triangle.assets.asd b/lowh.triangle.assets.asd
index 5baab85..6afdea9 100644
--- a/lowh.triangle.assets.asd
+++ b/lowh.triangle.assets.asd
@@ -35,7 +35,7 @@
    (:file "config"     :depends-on ("package"))
    (:file "lib"        :depends-on ("package"))
    (:file "extensions" :depends-on ("package"))
-   (:file "asset"      :depends-on ("extensions" "lib"))
+   (:file "asset"      :depends-on ("config" "extensions" "lib"))
    (:file "find"       :depends-on ("asset"))
    (:file "font"       :depends-on ("asset"))
    (:file "preprocess" :depends-on ("find"))
diff --git a/package.lisp b/package.lisp
index c2ef610..c5353bc 100644
--- a/package.lisp
+++ b/package.lisp
@@ -24,8 +24,8 @@
   (:export
    ;;  Config
    #:*debug*
-   #:*asset-url-prefix*
-   #:*asset-path-prefix*
+   #:*assets-url-template*
+   #:*assets-path-template*
    #:*assets-dirs*
    #:assets-dir
    #:*precompiled-assets*