-
Notifications
You must be signed in to change notification settings - Fork 7
/
akasaka-user-config.saty
157 lines (128 loc) · 5.52 KB
/
akasaka-user-config.saty
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
% ./akasaka.saty と同じテーマを使っているが、
% テーマの一部パラメータをユーザが書き換える例。
@require: figbox/figbox
@require: enumitem/enumitem
@require: base/color-ext
@require: class-slydifi/theme/akasaka
open FigBox
open SlydifiOverlay
let-inline ctx \cjk it =
let ctx = ctx |> set-dominant-narrow-script Kana in
read-inline ctx it
let fancy-config = (|
SlydifiThemeAkasaka.default-config with % 下に書いたフィールド以外はデフォルト値を使う
font-frame-title = (fun ctx -> ctx |> SlydifiThemeAkasaka.default-config#font-frame-title |> set-font-size 36pt);
color-bg = Color.of-css `lightcyan`;
color-emph = Color.of-css `darkred`;
length-frame-title-height = 40pt;
|)
in
document '<
+set-config(fancy-config);
+make-title(|
title = {|\SLyDIFi; で|らくらくスライド作成|};
author = {|monaqa|GitHub: \link(`https://github.com/monaqa`);|};
date = {| 2021年6月6日 |};
|);
+section{|セクションスライドの|具体例|}<
+frame{フレーム作成 in \SLyDIFi;}<
+listing{
* フレーム:スライド資料の1ページ1ページに値するもの
* \SLyDIFi; では3種類のフレームを区別する
** 見出し:スライド全体の題目,発表者名などを載せるフレーム
** セクション見出し:セクションのタイトルを載せる
** 本文:通常のフレーム
}
>
+frame{テキストの記述}<
+p{以下のようなコマンドを用いてテキストを記述できる.}
+listing{
* `+p{}`: 段落
* `+listing{}`: 番号のない箇条書き
* `+enumerate{}`: 番号付きの箇条書き
}
+p{さらに,インラインテキストの中では以下のマークアップが使える.}
+listing{
* `\emph{}`: \emph{強調}
* `\text-color(){}`: \text-color(Color.of-css `#42883B`){文字色変更}
}
>
+frame{図表の貼り付け(`FigBox` モジュール)}<
+listing{
* 例: ``+fig-center(FigBox.include-image 80pt `path/to/image.jpg`);``
** `FigBox.include-image`:画像 (PDF/JPEG) を指定幅で読み込む
** `+fig-center`:読み込んだ図を中央揃えで配置
}
+fig-on-right(dummy-box 100pt 200pt)<
+listing{
* その他にも様々な読み込み用の関数や配置コマンドが用意されている
** `dummy-box`:指定されたサイズのダミーボックス
** `hmargin`:水平方向に指定された量の余白を付ける
** `vconcat`:鉛直方向に図を結合
** `\fig-inline`:テキスト中\fig-inline?:(0.5)(dummy-box 60pt 30pt |> hmargin 5pt);に画像を出力
** `+fig-on-right`:画像を右に,本文を左に配置
}
>
>
>
+section{|\SLyDIFi; でオーバーレイ|}<
+frame?:(3){オーバーレイの基礎}<
+p{
オーバーレイは、同じスライドに対して「レイヤーを上から重ねる」かのように
順々にアイテムを表示できる機能。
}
+ghost(only 1)<
+listing{
* 表示を一方的に追加していくだけでなく、特定の番号でのみアイテムを削除したり、
書式を変更したりすることも可能。
* 「何枚目のときに表示するか否か」を表す `int -> bool` 型の関数を用いて指定する。
}
>
+ghost(from 2)<
+listing{
* `+p?:(only 3){}` とすれば、3枚目に限り段落が出現する。
* `\emph?:(only 2){}` とすれば、2枚目に限り\emph?:(only 2){強調}できる。
* `+ghost(from 2)<>` とすれば、2枚目以降で出現するブロックが作れる。
}
>
+p?:(from 3){
いくつかのコマンドはオプション引数に条件を指定して、
条件を満たすときのみ表示を有効にすることができる。
}
>
+frame?:(4){オーバーレイの例 (\show-layer;/4)}<
+p{
箇条書きの要素のオーバーレイ表示。
}
+itemize(EnumitemAlias.paren-arabic)<
+item{この項目は常に表示される。}<>
+oitem(until 2){
`+oitem` コマンドを用いると「今オーバーレイの何枚目か」に応じて表示を出し分けられる。
この段落は 1, 2 枚目のとき\emph?:(only 2){のみ}表示される。
}<>
+oitem(between 2 3){これは 2, 3 枚目のときのみ表示される段落。}<>
+oitem(non (only 3)){これは 3枚目以外で表示される段落。}<>
+oitem(on-slides [1; 4]){これは 1, 4 枚目のときのみ表示される段落。}<>
>
>
+frame?:(4){オーバーレイの例2 (\show-layer;/4)}<
+p{
図のオーバーレイ表示も可能。
}
+fig-center(
vconcat ?:0.5 [
hconcat ?:0.5 [
dummy-box 150pt 60pt;
gap 20pt;
dummy-box 150pt 80pt |> fig-phantom (from 2);
gap 20pt;
dummy-box 150pt 100pt |> fig-phantom (from 3);
];
gap 15pt;
textbox { 図が少しずつ大きくなっていく様子。 } |> fig-ghost (until 3);
textbox { 図が大きくなりきった様子。 } |> fig-ghost (only 4);
] |> hvmargin 15pt |> frame 1pt (Color.gray 0.7)
);
>
>
>