@ncukondo/slide-generation 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +56 -0
- package/LICENSE +21 -0
- package/README.md +248 -0
- package/README_ja.md +248 -0
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.js +2994 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/index.d.ts +999 -0
- package/dist/index.js +1469 -0
- package/dist/index.js.map +1 -0
- package/icons/custom/.gitkeep +3 -0
- package/icons/registry.yaml +77 -0
- package/package.json +84 -0
- package/templates/basic/bullet-list.yaml +39 -0
- package/templates/basic/numbered-list.yaml +39 -0
- package/templates/basic/section.yaml +26 -0
- package/templates/basic/title.yaml +46 -0
- package/templates/data/comparison-table.yaml +107 -0
- package/templates/data/table.yaml +94 -0
- package/templates/diagrams/cycle-diagram.yaml +71 -0
- package/templates/diagrams/flow-chart.yaml +141 -0
- package/templates/diagrams/hierarchy.yaml +117 -0
- package/templates/diagrams/matrix.yaml +163 -0
- package/templates/diagrams/timeline.yaml +167 -0
- package/templates/layouts/gallery.yaml +94 -0
- package/templates/layouts/image-text.yaml +105 -0
- package/templates/layouts/three-column.yaml +101 -0
- package/templates/layouts/two-column.yaml +85 -0
- package/templates/special/bibliography.yaml +132 -0
- package/templates/special/code-block.yaml +79 -0
- package/templates/special/custom.yaml +45 -0
- package/templates/special/quote.yaml +76 -0
- package/themes/default.css +122 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
name: code-block
|
|
2
|
+
description: "コードブロックスライド"
|
|
3
|
+
category: special
|
|
4
|
+
|
|
5
|
+
schema:
|
|
6
|
+
type: object
|
|
7
|
+
required:
|
|
8
|
+
- code
|
|
9
|
+
properties:
|
|
10
|
+
title:
|
|
11
|
+
type: string
|
|
12
|
+
description: "スライドタイトル"
|
|
13
|
+
code:
|
|
14
|
+
type: string
|
|
15
|
+
description: "コード内容"
|
|
16
|
+
language:
|
|
17
|
+
type: string
|
|
18
|
+
description: "プログラミング言語(シンタックスハイライト用)"
|
|
19
|
+
filename:
|
|
20
|
+
type: string
|
|
21
|
+
description: "ファイル名(表示用)"
|
|
22
|
+
showLineNumbers:
|
|
23
|
+
type: boolean
|
|
24
|
+
default: false
|
|
25
|
+
description: "行番号を表示するかどうか"
|
|
26
|
+
|
|
27
|
+
example:
|
|
28
|
+
title: "Hello World in Python"
|
|
29
|
+
code: |
|
|
30
|
+
def hello():
|
|
31
|
+
print("Hello, World!")
|
|
32
|
+
|
|
33
|
+
if __name__ == "__main__":
|
|
34
|
+
hello()
|
|
35
|
+
language: python
|
|
36
|
+
filename: hello.py
|
|
37
|
+
showLineNumbers: true
|
|
38
|
+
|
|
39
|
+
output: |
|
|
40
|
+
<!-- _class: code-slide{% if content.showLineNumbers %} line-numbers{% endif %} -->
|
|
41
|
+
{%- if content.title %}
|
|
42
|
+
|
|
43
|
+
# {{ content.title }}
|
|
44
|
+
{%- endif %}
|
|
45
|
+
|
|
46
|
+
{%- if content.filename %}
|
|
47
|
+
<div class="code-filename">{{ content.filename }}</div>
|
|
48
|
+
{%- endif %}
|
|
49
|
+
|
|
50
|
+
```{{ content.language | default('') }}
|
|
51
|
+
{{ content.code }}
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
css: |
|
|
55
|
+
.code-slide pre {
|
|
56
|
+
font-size: 0.9em;
|
|
57
|
+
padding: 1em;
|
|
58
|
+
border-radius: 8px;
|
|
59
|
+
background: #282c34;
|
|
60
|
+
overflow-x: auto;
|
|
61
|
+
}
|
|
62
|
+
.code-slide code {
|
|
63
|
+
font-family: 'Fira Code', 'Consolas', monospace;
|
|
64
|
+
}
|
|
65
|
+
.code-slide .code-filename {
|
|
66
|
+
font-family: monospace;
|
|
67
|
+
font-size: 0.85em;
|
|
68
|
+
color: #888;
|
|
69
|
+
background: #1e2127;
|
|
70
|
+
padding: 0.5em 1em;
|
|
71
|
+
border-radius: 8px 8px 0 0;
|
|
72
|
+
margin-bottom: -0.5em;
|
|
73
|
+
}
|
|
74
|
+
.code-slide.line-numbers pre {
|
|
75
|
+
counter-reset: line;
|
|
76
|
+
}
|
|
77
|
+
.code-slide.line-numbers code {
|
|
78
|
+
display: block;
|
|
79
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
name: custom
|
|
2
|
+
description: "カスタムMarkdownスライド"
|
|
3
|
+
category: special
|
|
4
|
+
|
|
5
|
+
schema:
|
|
6
|
+
type: object
|
|
7
|
+
required:
|
|
8
|
+
- markdown
|
|
9
|
+
properties:
|
|
10
|
+
title:
|
|
11
|
+
type: string
|
|
12
|
+
description: "スライドタイトル(省略可)"
|
|
13
|
+
markdown:
|
|
14
|
+
type: string
|
|
15
|
+
description: "直接記述するMarkdown"
|
|
16
|
+
class:
|
|
17
|
+
type: string
|
|
18
|
+
description: "スライドに適用するCSSクラス"
|
|
19
|
+
|
|
20
|
+
example:
|
|
21
|
+
title: "カスタムスライド"
|
|
22
|
+
class: "custom-style"
|
|
23
|
+
markdown: |
|
|
24
|
+
## サブタイトル
|
|
25
|
+
|
|
26
|
+
自由形式のコンテンツ:
|
|
27
|
+
|
|
28
|
+
- 箇条書き
|
|
29
|
+
- **太字** と *斜体*
|
|
30
|
+
- [リンク](https://example.com)
|
|
31
|
+
|
|
32
|
+
> 引用も可能
|
|
33
|
+
|
|
34
|
+
output: |
|
|
35
|
+
{%- if content.class %}
|
|
36
|
+
<!-- _class: {{ content.class }} -->
|
|
37
|
+
{%- endif %}
|
|
38
|
+
{%- if content.title %}
|
|
39
|
+
|
|
40
|
+
# {{ content.title }}
|
|
41
|
+
{%- endif %}
|
|
42
|
+
|
|
43
|
+
{{ content.markdown }}
|
|
44
|
+
|
|
45
|
+
css: ""
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
name: quote
|
|
2
|
+
description: "引用スライド"
|
|
3
|
+
category: special
|
|
4
|
+
|
|
5
|
+
schema:
|
|
6
|
+
type: object
|
|
7
|
+
required:
|
|
8
|
+
- text
|
|
9
|
+
properties:
|
|
10
|
+
title:
|
|
11
|
+
type: string
|
|
12
|
+
description: "スライドタイトル(省略可)"
|
|
13
|
+
text:
|
|
14
|
+
type: string
|
|
15
|
+
description: "引用文"
|
|
16
|
+
author:
|
|
17
|
+
type: string
|
|
18
|
+
description: "著者名"
|
|
19
|
+
source:
|
|
20
|
+
type: string
|
|
21
|
+
description: "引用元(書籍、講演など)"
|
|
22
|
+
|
|
23
|
+
example:
|
|
24
|
+
title: "名言"
|
|
25
|
+
text: "未来を予測する最善の方法は、それを発明することだ。"
|
|
26
|
+
author: "アラン・ケイ"
|
|
27
|
+
source: "Xerox PARC"
|
|
28
|
+
|
|
29
|
+
output: |
|
|
30
|
+
<!-- _class: quote-slide -->
|
|
31
|
+
{%- if content.title %}
|
|
32
|
+
|
|
33
|
+
# {{ content.title }}
|
|
34
|
+
{%- endif %}
|
|
35
|
+
|
|
36
|
+
<blockquote class="quote-container">
|
|
37
|
+
<p class="quote-text">{{ content.text }}</p>
|
|
38
|
+
{%- if content.author or content.source %}
|
|
39
|
+
<footer class="quote-attribution">
|
|
40
|
+
{%- if content.author %}
|
|
41
|
+
<cite class="quote-author">— {{ content.author }}</cite>
|
|
42
|
+
{%- endif %}
|
|
43
|
+
{%- if content.source %}
|
|
44
|
+
<span class="quote-source">{{ content.source }}</span>
|
|
45
|
+
{%- endif %}
|
|
46
|
+
</footer>
|
|
47
|
+
{%- endif %}
|
|
48
|
+
</blockquote>
|
|
49
|
+
|
|
50
|
+
css: |
|
|
51
|
+
.quote-slide .quote-container {
|
|
52
|
+
font-size: 1.5em;
|
|
53
|
+
text-align: center;
|
|
54
|
+
padding: 2em;
|
|
55
|
+
margin: 1em auto;
|
|
56
|
+
max-width: 80%;
|
|
57
|
+
border-left: 4px solid #333;
|
|
58
|
+
background: #f9f9f9;
|
|
59
|
+
}
|
|
60
|
+
.quote-slide .quote-text {
|
|
61
|
+
font-style: italic;
|
|
62
|
+
margin-bottom: 1em;
|
|
63
|
+
}
|
|
64
|
+
.quote-slide .quote-attribution {
|
|
65
|
+
font-size: 0.8em;
|
|
66
|
+
color: #666;
|
|
67
|
+
text-align: right;
|
|
68
|
+
}
|
|
69
|
+
.quote-slide .quote-author {
|
|
70
|
+
font-style: normal;
|
|
71
|
+
}
|
|
72
|
+
.quote-slide .quote-source {
|
|
73
|
+
display: block;
|
|
74
|
+
font-size: 0.9em;
|
|
75
|
+
color: #888;
|
|
76
|
+
}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default theme for slide-generation
|
|
3
|
+
* This is a base theme that can be customized
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/* Slide container */
|
|
7
|
+
section {
|
|
8
|
+
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
|
|
9
|
+
padding: 2em;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/* Title slide styling */
|
|
13
|
+
section.title {
|
|
14
|
+
text-align: center;
|
|
15
|
+
display: flex;
|
|
16
|
+
flex-direction: column;
|
|
17
|
+
justify-content: center;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
section.title h1 {
|
|
21
|
+
font-size: 2.5em;
|
|
22
|
+
margin-bottom: 0.5em;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
section.title h2 {
|
|
26
|
+
font-size: 1.5em;
|
|
27
|
+
color: #666;
|
|
28
|
+
font-weight: normal;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/* Section divider styling */
|
|
32
|
+
section.section {
|
|
33
|
+
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
|
34
|
+
color: white;
|
|
35
|
+
text-align: center;
|
|
36
|
+
display: flex;
|
|
37
|
+
flex-direction: column;
|
|
38
|
+
justify-content: center;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
section.section h1 {
|
|
42
|
+
font-size: 3em;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/* General headings */
|
|
46
|
+
h1 {
|
|
47
|
+
color: #333;
|
|
48
|
+
border-bottom: 2px solid #667eea;
|
|
49
|
+
padding-bottom: 0.3em;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
h2 {
|
|
53
|
+
color: #555;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/* Lists */
|
|
57
|
+
ul, ol {
|
|
58
|
+
line-height: 1.8;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/* Tables */
|
|
62
|
+
table {
|
|
63
|
+
border-collapse: collapse;
|
|
64
|
+
width: 100%;
|
|
65
|
+
margin: 1em 0;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
th, td {
|
|
69
|
+
border: 1px solid #ddd;
|
|
70
|
+
padding: 0.75em;
|
|
71
|
+
text-align: left;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
th {
|
|
75
|
+
background-color: #f5f5f5;
|
|
76
|
+
font-weight: bold;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/* Code blocks */
|
|
80
|
+
pre {
|
|
81
|
+
background-color: #f8f8f8;
|
|
82
|
+
border: 1px solid #ddd;
|
|
83
|
+
border-radius: 4px;
|
|
84
|
+
padding: 1em;
|
|
85
|
+
overflow-x: auto;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
code {
|
|
89
|
+
font-family: 'Fira Code', 'Consolas', 'Monaco', monospace;
|
|
90
|
+
font-size: 0.9em;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/* Blockquotes */
|
|
94
|
+
blockquote {
|
|
95
|
+
border-left: 4px solid #667eea;
|
|
96
|
+
margin: 1em 0;
|
|
97
|
+
padding: 0.5em 1em;
|
|
98
|
+
background-color: #f9f9f9;
|
|
99
|
+
font-style: italic;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
/* Layout containers */
|
|
103
|
+
.two-column-container {
|
|
104
|
+
display: grid;
|
|
105
|
+
grid-template-columns: 1fr 1fr;
|
|
106
|
+
gap: 2em;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.three-column-container {
|
|
110
|
+
display: grid;
|
|
111
|
+
grid-template-columns: repeat(3, 1fr);
|
|
112
|
+
gap: 1.5em;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/* Diagram containers */
|
|
116
|
+
.flow-container,
|
|
117
|
+
.cycle-container,
|
|
118
|
+
.hierarchy-container,
|
|
119
|
+
.timeline-container,
|
|
120
|
+
.matrix-container {
|
|
121
|
+
margin: 1em 0;
|
|
122
|
+
}
|