anchor.diff:    (cl-ppcre:create-scanner "^.*/([^/]+/?)$")
     "Grabs a path's basename.")
   
  +(defun get-mime (file)
  +  (let* ((extension (cl-ppcre:regex-replace *scanner-get-extension*
  +                                            file "\\1"))
  +         (ext-sym (intern (string-upcase extension)
  +                          :wookie-plugin-core-directory-router)))
  +    (case ext-sym
  +      ((html htm shtml) "text/html")
  +      ((css) "text/css")
  +      ((xml) "text/xml")
  +      ((gif) "image/gif")
  +      ((jpeg jpg) "image/jpeg")
  +      ((js) "application/x-javascript")
  +      ((atom) "application/atom+xml")
  +      ((rss) "application/rss+xml")
  +
  +      ((mml) "text/mathml")
  +      ((txt) "text/plain")
  +      ((jad) "text/vnd.sun.j2me.app-descriptor")
  +      ((wml) "text/vnd.wap.wml")
  +      ((htc) "text/x-component")
  +
  +      ((png) "image/png")
  +      ((tif tiff) "image/tiff")
  +      ((wbmp) "image/vnd.wap.wbmp")
  +      ((ico) "image/x-icon")
  +      ((jng) "image/x-jng")
  +      ((bmp) "image/x-ms-bmp")
  +      ((svg) "image/svg+xml")
  +
  +      ((jar war ear) "application/java-archive")
  +      ((hqx) "application/mac-binhex40")
  +      ((doc) "application/msword")
  +      ((pdf) "application/pdf")
  +      ((ps eps ai) "application/postscript")
  +      ((rtf) "application/rtf")
  +      ((xls) "application/vnd.ms-excel")
  +      ((ppt) "application/vnd.ms-powerpoint")
  +      ((wmlc) "application/vnd.wap.wmlc")
  +      ((kml) "application/vnd.google-earth.kml+xml")
  +      ((kmz) "application/vnd.google-earth.kmz")
  +      ((7z) "application/x-7z-compressed")
  +      ((cco) "application/x-cocoa")
  +      ((jardiff) "application/x-java-archive-diff")
  +      ((jnlp) "application/x-java-jnlp-file")
  +      ((run) "application/x-makeself")
  +      ((pl pm) "application/x-perl")
  +      ((prc pdb) "application/x-pilot")
  +      ((rar) "application/x-rar-compressed")
  +      ((rpm) "application/x-redhat-package-manager")
  +      ((sea) "application/x-sea")
  +      ((swf) "application/x-shockwave-flash")
  +      ((sit) "application/x-stuffit")
  +      ((tcl tk) "application/x-tcl")
  +      ((der pem crt) "application/x-x509-ca-cert")
  +      ((xpi) "application/x-xpinstall")
  +      ((xhtml) "application/xhtml+xml")
  +      ((zip) "application/zip")
  +
  +      ((bin exe dll) "application/octet-stream")
  +      ((deb) "application/octet-stream")
  +      ((dmg) "application/octet-stream")
  +      ((eot) "application/octet-stream")
  +      ((iso img) "application/octet-stream")
  +      ((msi msp msm) "application/octet-stream")
  +
  +      ((mid midi kar) "audio/midi")
  +      ((mp3) "audio/mpeg")
  +      ((ogg) "audio/ogg")
  +      ((ra) "audio/x-realaudio")
  +
  +      ((3gpp 3gp) "video/3gpp")
  +      ((mpeg mpg) "video/mpeg")
  +      ((mov) "video/quicktime")
  +      ((flv) "video/x-flv")
  +      ((mng) "video/x-mng")
  +      ((asx asf) "video/x-ms-asf")
  +      ((wmv) "video/x-ms-wmv")
  +      ((avi) "video/x-msvideo")
  +      (t "text/plain"))))
  +  
   (defun directory-listing (file-path route-path local-path request response)
     "Send a directory listing."
     (declare (ignore request))
  
positive.code:   (declare (ignore request route-path))
    (let ((path (concatenate 'string local-path "/" file-path))
          (buffer (make-array 1024 :element-type '(unsigned-byte 8)))
          (stream (start-response response :headers '(:content-type "text/plain"))))
      (with-open-file (fstream path :element-type '(unsigned-byte 8))
        (loop for n = (read-sequence buffer fstream)
              while (< 0 n) do
  
negative.code: (defpackage :wookie-plugin-core-directory-router
    (:use :cl :wookie :wookie-util :wookie-plugin))
  (in-package :wookie-plugin-core-directory-router)
  
  (defparameter *scanner-get-extension*
    (cl-ppcre:create-scanner "^.*\\.([a-z0-9]+)$" :case-insensitive-mode t)
    "Grab a file extension.")
  
  (defparameter *scanner-strip-trailing-slash*
    (cl-ppcre:create-scanner "/+$")
  