about summary refs log tree commit diff
path: root/users/sterni/mblog/packages.lisp
blob: d6e33955d31c400888f683c2626bd94d661670ed (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
;; SPDX-License-Identifier: GPL-3.0-only
;; SPDX-FileCopyrightText: Copyright (C) 2022-2023 by sterni

(defpackage :maildir
  (:use :common-lisp)
  (:shadow :list)
  (:export :list)
  (:documentation
   "Very incomplete package for dealing with maildir(5)."))

(defpackage :config
  (:use
   :common-lisp)
  (:import-from :uiop :getenv)
  (:import-from :alexandria :when-let)
  (:export
   :init-from-env
   :*general-buffer-size*))

(defpackage :note
  (:use
   :common-lisp
   :closure-html
   :cl-date-time-parser
   :mime4cl
   :config)
  (:import-from
   :alexandria
   :when-let*
   :when-let
   :starts-with-subseq
   :ends-with-subseq)
  (:import-from :who :escape-string-minimal)
  (:export
   :apple-note
   :apple-note-uuid
   :apple-note-subject
   :apple-note-time
   :apple-note-text-part
   :make-apple-note
   :apple-note-html-fragment))

(defpackage :mblog
  (:use
   :common-lisp
   :klatre
   :who
   :maildir
   :note
   :config)
  (:export :build-mblog)
  (:import-from :local-time :universal-to-timestamp)
  (:import-from :mime4cl :redirect-stream)
  (:shadowing-import-from :common-lisp :list))

(defpackage :cli
  (:use
   :common-lisp
   :uiop
   :note
   :config
   :mblog)
  (:import-from :alexandria :starts-with)
  (:export :main))