Flexible Lisp Blogware. Fork for personal use. Mirrored from https://github.com/kingcons/coleslaw originally.

packages.lisp 1.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. (defpackage :coleslaw
  2. (:documentation "Homepage: <a href=\"http://github.com/redline6561/coleslaw\">Github</a>")
  3. (:use :cl)
  4. (:import-from :alexandria #:hash-table-values
  5. #:make-keyword
  6. #:mappend)
  7. (:import-from :cl-fad #:file-exists-p)
  8. (:import-from :cl-ppcre #:scan-to-strings)
  9. (:import-from :closure-template #:compile-template)
  10. (:import-from :local-time #:format-rfc1123-timestring)
  11. (:import-from :uiop #:getcwd
  12. #:ensure-directory-pathname)
  13. (:export #:main
  14. #:preview
  15. #:*config*
  16. ;; Config Accessors
  17. #:author
  18. #:deploy-dir
  19. #:domain
  20. #:page-ext
  21. #:repo-dir
  22. #:staging-dir
  23. #:title
  24. ;; Core Classes
  25. #:content
  26. #:post
  27. #:index
  28. ;; Content Helpers
  29. #:title-of
  30. #:author-of
  31. #:find-content-by-path
  32. ;; Theming + Plugin API
  33. #:theme-fn
  34. #:plugin-conf-error
  35. #:render-text
  36. #:add-injection
  37. #:get-updated-files
  38. #:deploy
  39. ;; The Document Protocol
  40. #:discover
  41. #:publish
  42. #:page-url
  43. #:render
  44. #:find-all
  45. #:purge-all
  46. #:add-document
  47. #:delete-document
  48. #:write-document
  49. #:content-text))