这个问题导致了一个新的方案的出现:
scrjrnl
我正在寻找编写每日灵修的软件包,例如这个(例如,单击“在本书内搜索”并在预览末尾查看)。我在 CTAN 上找不到合适的包来执行此操作。
我正在考虑使用book
或scrbook
类并重新定义或封装:
\chapter
每个月,每天重置一个计数器;\section
对于每月的每一天,使用并增加计数器。
在这种情况下,最佳/最简单的方法是什么?
- 创建一个
devotional
类来替换book
; - 编写宏来封装
\chapter
和\section
; - 重新定义
\chapter
和\section
或使用在\chapter
或\section
中调用的内部定义book
;scrbook
- 还有其他什么开明的建议吗...
我正在考虑的用法如下:
\documentclass{scrbook} % or \documentclass{devotional}
\begin{document}
\tableofcontents
\month{January} % Set counter for month of January
\day*{} % Set a new day -- January 1, do not list in toc
\begin{verse}{Genesis 3.4}
% contents of the verse
\end{verse}
% commentary
% commentary
\begin{prayer}
% contents of prayer
\end{prayer}
\day*{} % Set a new day -- January 2, do not list in toc
% day contents
% etc.
\end{document}
答案1
在考虑实施之前,请花一些时间思考一下这本书的结构和语义元素。从示例中,我将按以下方式构建文档:
结构
-- Collection
---- Devotional
------ Title
------ EpigraphTop
------ EpigraphBottom
------ Body
--------- Quote
--------- text
------- PresentationDate
如果您愿意,可以通过抽象分段元素来表示一个月或一周。Adevotional
可以表示请求的每日文本或每周块。
作者命令
下一步是设计作者界面。我的目标是:
\collection{January}
\devotional
\epigraph{...}
\epigraph{...}
body............
................
\Quote{}
..............
.............
\enddevotional
执行
Alias : Chapter -> Collection
Section -> Devotional
我将使用基本的书籍类并创建一个包来处理代码。使用 TikZ 在页面右上角绘制精美的方框和月份开头的月份标记。
我在这里看到的一个困难是,要让每页都适合所有字数。如果你对 TeX 很了解,你可能会决定将body
作为一个命令,你可以用它装箱、测量和拆箱,以帮助你写书。一个可以计算字数的好文本处理器也可能会有所帮助。