a06e30e73b
Eventually, we'll want to replace dump-stream-binary with something more efficient—given that we have flexi-streams we can use something that only does matching element types no problem. REDIRECT-STREAM is much more efficient thanks to using an internal buffer. streams.lisp gets a new section at the beginning for grouping utilities that don't have any real (internal) dependencies. Change-Id: I141cd36440d532131f389be2768fdaa54e7c7218 Reviewed-on: https://cl.tvl.fyi/c/depot/+/8583 Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
64 lines
1.2 KiB
Common Lisp
64 lines
1.2 KiB
Common Lisp
;; 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))
|