mirror of
https://github.com/gitpitch/gitpitch.git
synced 2024-04-18 07:30:55 +08:00
127 lines
4.1 KiB
Markdown
127 lines
4.1 KiB
Markdown
# Markdown Includes
|
|
|
|
A [markdown injection widget](/modular-markdown/injection.md) provide a simple way to inject a **reusable markdown snippet** on any slide. Markdown includes provide a simple way to inject **reusable slides** into any slide deck.
|
|
|
|
?> Markdown includes are one more way GitPitch supports modular design for slide decks.
|
|
|
|
### Include Paths
|
|
|
|
All paths on the `---?incude=` slide delimiter specified within [PITCHME.md](/conventions/pitchme-md.md) markdown must be relative to the root directory of your local working directory or Git repository.
|
|
|
|
### Include Syntax
|
|
|
|
Special `--?include=` delimiter syntax can be used to import modular slide content directly into your slide deck:
|
|
|
|
```markdown
|
|
---?include=path/to/PITCHME.md
|
|
```
|
|
|
|
The slide contents within the `path/to/PITCHME.md` file is automaticaly inlined into your markdown file at the point where you declared the delimiter. There are no limits on the number of `---?include=` slide delimiters you can use to create a slide deck.
|
|
|
|
### Sample Deck
|
|
|
|
Consider the following sample project files and directories. Imagine these files have been developed for an introductory course on *functional* programming:
|
|
|
|
```
|
|
.
|
|
├── PITCHME.md
|
|
├── PITCHME.yaml
|
|
├── assets
|
|
│ ├── css
|
|
│ │ └── PITCHME.css
|
|
│ ├── fonts
|
|
│ │ └── Kaffee.woff2
|
|
│ └── img
|
|
│ ├── design.jpg
|
|
│ └── logo.png
|
|
└── topics
|
|
├── ast
|
|
│ └── PITCHME.md
|
|
├── functions
|
|
│ └── PITCHME.md
|
|
├── immutability
|
|
│ └── PITCHME.md
|
|
└── recursion
|
|
└── PITCHME.md
|
|
```
|
|
|
|
> The slides for each topic covered by this course are developed within dedicated `PITCHME.md`.
|
|
|
|
The top-level `PITCHME.md` markdown file can then use the `---?include=` slide delimiter to aggregate the slide content from each of the topic specific files to deliver the complete slide deck:
|
|
|
|
```markdown
|
|
[drag=100, drop=center]
|
|
# Functional Programming
|
|
|
|
---?include=topics/ast/PITCHME.md
|
|
|
|
---?include=topics/fuctions/PITCHME.md
|
|
|
|
---?include=topics/immutability/PITCHME.md
|
|
|
|
---?include=topics/recursion/PITCHME.md
|
|
|
|
---
|
|
|
|
[drag=100, drop=center, fit=2.1]
|
|
# That's all folks!
|
|
|
|
```
|
|
|
|
This sample PITCHME.md file would result in a slide deck that contains the following slides:
|
|
|
|
- Every slide defined in this sample [PITCHME.md](/conventions/pitchme-md.md) file plus
|
|
- Every slide defined in the `topics/ast/PITCHME.md` file plus
|
|
- Every slide defined in the `topics/functions/PITCHME.md` file plus
|
|
- Every slide defined in the `topics/immutability/PITCHME.md` file plus
|
|
- Every slide defined in the `topics/recursion/PITCHME.md` file
|
|
|
|
Taking a modular approach to topic specific content by maintaining dedicated markdown files per topic is considered a best practice. Simplifying development, team collaboration, and maintenance over time.
|
|
|
|
### Alt Structure
|
|
|
|
This section presents an alternative file and directory structure for our example *functional* programming course content. Notice how the content under the `topics` directory has been restructured as a series of markdown files per topic all maintained within a single directory:
|
|
|
|
```
|
|
.
|
|
├── PITCHME.md
|
|
├── PITCHME.yaml
|
|
├── assets
|
|
│ ├── css
|
|
│ │ └── PITCHME.css
|
|
│ ├── fonts
|
|
│ │ └── Kaffee.woff2
|
|
│ └── img
|
|
│ ├── design.jpg
|
|
│ └── logo.png
|
|
└── topics
|
|
├── ast.md
|
|
├── functions.md
|
|
├── immutability.md
|
|
└── recursion.md
|
|
```
|
|
|
|
Again the top-level `PITCHME.md` markdown file can then use the `---?include=` slide delimiter to aggregate the slide content from each of the topic specific files:
|
|
|
|
```markdown
|
|
[drag=100, drop=center]
|
|
# Functional Programming
|
|
|
|
---?include=topics/ast.md
|
|
|
|
---?include=topics/fuctions.md
|
|
|
|
---?include=topics/immutability.md
|
|
|
|
---?include=topics/recursion.md
|
|
|
|
---
|
|
|
|
[drag=100, drop=center, fit=2.1]
|
|
# That's all folks!
|
|
|
|
```
|
|
|
|
Before deciding which approach is best for you we recommend reading the [Modular Slide Decks Guide](/modular-markdown/modular-decks.md).
|
|
|