initial commit

This commit is contained in:
2025-12-13 20:37:33 +03:00
commit d264aa2111
6 changed files with 137 additions and 0 deletions

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
**.pdf

36
README.md Normal file
View File

@@ -0,0 +1,36 @@
# Шаблон для лабораторных работ
Данный репозиторий представляет собой шаблон для отчёта о лабораторных работах на [Typst](https://github.com/typst/typst).
Сделан, т.к. форматы Microsoft, вроде Word, ужасны и неудобны, а LaTex довольно сложный для освоения и вёрстки. Typst достаточно простой и эффективный для данной задачи.
# Структура
## `main.typ`
Есть главный файл `main.typ` - он нужен лишь для включения других файлов. В нём прописаны лишь основные параметры отчёта вроде отступа, шрифта, размера и т.д.
## `config/`
В `config` лежат параметры отчёта. В файле `config/variables.typ` данные о лабораторной работе, включая имя студента, имя преподавателя, тему лабораторной, номер и т.д. Проще зайти самому и поменять.
## `pages/`
В `pages` находятся страницы отчёта.
Трогать `title_page.typ` не стоит - в нём титульник работы, где всё построено на переменных. Менять только если с вашими данными титульник содержит ошибки, вроде несовпдадения падежей.
В `content.typ` лежит основное содержание отчёта. Он предназначен для изменения.
## `img`
Данная директория опциональна, в ней будут лежать изображения для отчёта.
# Формирование отчёта
Отчёт формируется просто компиляцией документа:
```bash
typst compile main.typ
```
Typst умеет компилироваться в PDF, HTML, PNG, SVG (лучше следите в источниках самого Typst).

12
config/variables.typ Normal file
View File

@@ -0,0 +1,12 @@
#let student_name = "Иванов И.И."
#let group = "ФФФ1234"
#let teacher_name = "Александров А.А."
#let teacher_grade = "старший преподаватель"
#let department = "«Теории электрических цепей»"
#let faculty = "того самого"
#let lab_num = 42069
#let discipline = "сложной"
#let theme = "Исследование чего-то там"

21
main.typ Normal file
View File

@@ -0,0 +1,21 @@
#set par(
first-line-indent: 1.5mm,
justify: true,
)
#set page("a4", numbering: "1", number-align: center)
#set text(font: "Times New Roman", 14pt)
#show heading: set align(center)
#show figure.where(kind: image): set figure(supplement: [Рис.])
#include "pages/title_page.typ"
#pagebreak()
#outline(
title: [Содержание]
)
#pagebreak()
#include "pages/content.typ"

23
pages/content.typ Normal file
View File

@@ -0,0 +1,23 @@
= Цель работы
[Цель работы]
= Предварительный расчёт
[Предварительный расчёт]
= Экспериментальный расчёт
[Экспериментальный расчёт]
= Обработка результатов машинного эксперимента
[Обработка результатов]
= Вывод
[Вывод]
= Ответы на вопросы для самопроверки
[Ответы на вопросы]

44
pages/title_page.typ Normal file
View File

@@ -0,0 +1,44 @@
#import "../config/variables.typ": *
#block[
#set align(center)
#block[
Министерство цифрового развития, связи и массовых коммуникаций \
Российской Федерации \
Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования
«Московский технический университет связи и информатики» \
(МТУСИ)
]
#v(25mm)
#block[
Кафедра #department
]
#v(30mm)
#block[
Лабораторная работа № #lab_num \
по дисциплине #discipline \
на тему \
#strong[#theme]
]
#v(45mm)
#block[
#set align(left)
Выполнил: студент группы #group факультета #faculty #h(1fr) #student_name \
Проверил: #teacher_grade #h(1fr) #teacher_name
]
#v(1fr)
#block[
Москва 2025г.
]
]