This project is a template Typst to simplify report writing by offering an alternative to latex. This template is destined for the schools of the Toulouse INP group.
The template is available on the typst online editor via the following link: Not yet :(
The template can also be used locally:
- Clone / download the zip file of this repo
- Create a
new-report.typfile at the project root - Add the following code:
#import "src/tlseinp.typ"
// basic or enseeiht or ensiacet
#show: tlseinp.basic.with(
//TODO: complete with your parameters
)
= First
#lorem(60)The list of parameters is available in the documentation section.
- Download the Tinymist extension for VS Code
- Create a local package
tlseinp-reportwith version0.1.0and lib filetlseinp.typ - Go to the package folder and copy the code from this repo into it
- Create a
new-report.typfile - Add the following code:
#import "@local/tlseinp-report:0.1.0": *
// basic or enseeiht or ensiacet
#show: tlseinp-report.basic.with(
//TODO: complete with your parameters
)
= First
#lorem(60)The list of parameters is available in the documentation section.
A list of examples is available here.
| Parameter | Description | Example |
|---|---|---|
| title | report title displayed on first page | any string |
| subtitle | report subtitle displayed on first page | any string |
| page-header | Text displayed at top left of all report pages (e.g. example 1) | any string |
| author | Text displayed at the top right of all report pages and on the first page (e.g. example 1) | any string |
| group | Text displayed above the author on the first page | any string |
| year | Text displayed below author on first page | any string |
| class | Text displayed below author on first page | any string |
| formation-image | Image displayed at top right of first page (e.g. example 2) | formation.[N7, A7, ENSAT, PREP-TRANSI, FC, LA_PREPA, INP] or custom typst image |
| project-image | Image displayed at top left of first page (e.g. example 2) | formation.[N7, A7, ENSAT, PREP-TRANSI, FC, LA_PREPA, INP] or custom typst image |
| lang | Report language | fr, en, etc.. (see typst documentation) |
| Parameter | Description | Example |
|---|---|---|
| title | report title displayed on first page | any string |
| subtitle | report subtitle displayed on first page | any string |
| author | Text displayed at the top right of all report pages and on the first page (e.g. example 3) | any string |
| lang | Report language | fr, en, etc.. (see typst documentation) |
| Parameter | Description | Example |
|---|---|---|
| title | report title displayed on first page | any string |
| subtitle | report subtitle displayed on first page | any string |
| author | Text displayed at the top right of all report pages and on the first page (e.g. example 4) | any string |
| lang | Report language | fr, en, etc.. (see typst documentation) |
The termplate can display a table of
- of all images/lists:
#tlseinp-repor.figures(kind: none, headingName: "Table of all :)")- all images without list:
#tlseinp-repor.figures()- all lists without image:
#tlseinp-repor.figures(kind: list, headingName: "Table of listings")The template also automatically manages a list of deliverables:
#tlseinp-repor.deliverables(
(
"tests.pdf": "file showing our tests",
"wow.pdf": "Wow !",
)
)
// or with custom heading name
#tlseinp-repor.deliverables(headingName: "Custom Deliverables",
(
"tests.pdf": "file showing our tests",
"wow.pdf": "Wow !",
)
)The template also automatically manages appendices in another typst file:
= Appendices <appendix>
#tlseinp-repor.appendices(title: "Table of appendices", show-outline: true, include "annexe.typ")title is the title of the section displaying the appendices table
show-outline (default: true) enables this table to be displayed or not
IMPORTANT For the code to be successful, the following code must be added just after #show: tlseinp.with(...).
#context {
outline(target: selector(heading).before(locate(<appendix>)), indent: auto)
}All contributions are welcome! :)
THis project is Open Source software released under the Apache 2.0 license.