Minimal Template
SATySFi で何かを試すにあたって,何のパッケージも require/import しない最小構成のテンプレートを作成しておくと 作成したパッケージの example として
Issue を作成するときの再現コードとして
といった用途に便利です.
以下はテンプレートの一例です.ご自由にお使いください(というより,以下のテンプレも The SATySFibook Web公開版第1版に載っていたものを少し改変したにすぎません). code:template.saty
let-inline ctx \math m = script-guard Latin (embed-math ctx m)
let-block ctx +p it = line-break true true ctx (read-inline ctx it ++ inline-fil)
let document bt =
let ctx =
get-initial-context 440pt (command \math)
|> set-dominant-narrow-script Latin
|> set-dominant-wide-script Kana
|> set-language Kana Japanese
|> set-language HanIdeographic Japanese
|> set-language Latin English
|> set-hyphen-penalty 100
in
let bb = read-block ctx bt in
page-break A4Paper
(fun _ -> (| text-origin = (80pt, 100pt); text-height = 630pt; |))
(fun _ -> (|
header-origin = (0pt, 0pt);
header-content = block-nil;
footer-origin = (0pt, 0pt);
footer-content = block-nil;
|))
bb
let-inline \pang = {The quick brown fox jumps over the lazy dog.}
let-inline \lipsum = {
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
}
let-inline \jugem = {
寿限無,寿限無,五劫のすりきれ,
海砂利水魚の水行末・雲来末・風来末,
食う寝るところに住むところ,
やぶら小路のぶら小路,
パイポパイポ,パイポのシューリンガン,
シューリンガンのグーリンダイ,
グーリンダイのポンポコピーのポンポコナーの長久命の長助.
}
in
document'<
+p{\pang;}
+p{\lipsum;}
+p{\jugem;}
\pang, \lipsum, \jugem は最低限動かすために必須なコマンドではありませんが,組版を目的とした言語である以上「何らかのダミー文字列が出力できる」コマンドは高確率で役に立つため,テンプレートに予め入れています.