7 Commits

16 changed files with 110 additions and 115 deletions

1
.gitattributes vendored
View File

@@ -1,2 +1,3 @@
*.ttf filter=lfs diff=lfs merge=lfs -text *.ttf filter=lfs diff=lfs merge=lfs -text
*.otf filter=lfs diff=lfs merge=lfs -text *.otf filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text

View File

@@ -1,5 +1,5 @@
.PHONY: view_example .PHONY: view_documentation
view_example: documentation.pdf view_documentation: documentation.pdf
xdg-open $< xdg-open $<
.PHONY: watch_documentation .PHONY: watch_documentation
@@ -7,12 +7,12 @@ watch_documentation:
typst watch --font-path template/fonts documentation.typ & xdg-open documentation.pdf typst watch --font-path template/fonts documentation.typ & xdg-open documentation.pdf
.PHONY: watch_bp_cs .PHONY: watch_bp_cs
watch_bp_cs: watch_bp_cs: bp.pdf
typst watch --root . --font-path template/fonts theses/BP_cs/BP.typ bp.pdf & xdg-open bp.pdf xdg-open bp.pdf & typst watch --root . --font-path template/fonts theses/bp.typ bp.pdf
.PHONY: watch_dp_cs .PHONY: watch_dp_cs
watch_dp_cs: watch_dp_cs: dp.pdf
typst watch --root . --font-path template/fonts theses/DP_cs/DP.typ dp.pdf & xdg-open dp.pdf xdg-open dp.pdf & typst watch --root . --font-path template/fonts theses/dp.typ dp.pdf
.PHONY: documentation .PHONY: documentation
documentation: documentation.pdf documentation: documentation.pdf
@@ -21,7 +21,8 @@ PACKDIR := pack/tultemplate2
BUNDLEDIR := pack/bundle BUNDLEDIR := pack/bundle
TO_PACK := $(shell find template -type f) template/LICENSE TO_PACK := $(shell find template -type f) template/LICENSE
BUNDLE_TARGETS := $(TO_PACK:%=$(BUNDLEDIR)/%) $(BUNDLEDIR)/citations.bib $(BUNDLEDIR)/Makefile BUNDLE_TARGETS := $(TO_PACK:%=$(BUNDLEDIR)/%) $(BUNDLEDIR)/citations.bib $(BUNDLEDIR)/bp.typ \
$(BUNDLEDIR)/dp.typ $(BUNDLEDIR)/Makefile
PACK_TARGETS := $(TO_PACK:%=$(PACKDIR)/%) $(PACKDIR)/documentation.typ \ PACK_TARGETS := $(TO_PACK:%=$(PACKDIR)/%) $(PACKDIR)/documentation.typ \
$(PACKDIR)/documentation.pdf $(PACKDIR)/citations.bib $(PACKDIR)/documentation.pdf $(PACKDIR)/citations.bib
@@ -30,11 +31,12 @@ pack: pack/tultemplate2.zip
.PHONY: bundle .PHONY: bundle
bundle: $(BUNDLE_TARGETS) bundle: $(BUNDLE_TARGETS)
@echo "!! Bundles are made for tultemplategen and not for direct use !!"
.PHONY: clean .PHONY: clean
clean: clean:
rm -rf pack rm -rf pack
rm -f documentation.pdf rm -f documentation.pdf bp.pdf dp.pdf
pack/tultemplate2.zip: $(PACK_TARGETS) pack/tultemplate2.zip: $(PACK_TARGETS)
@mkdir -p $(@D) @mkdir -p $(@D)
@@ -45,9 +47,17 @@ $(PACKDIR)/%: %
@mkdir -p $(@D) @mkdir -p $(@D)
ln -f $< $@ ln -f $< $@
$(BUNDLEDIR)/citations.bib: $(BUNDLEDIR)/citations.bib: citations.bib
@mkdir -p $(@D) @mkdir -p $(@D)
touch $@ ln -f $< $@
$(BUNDLEDIR)/bp.typ: theses/bp.typ
@mkdir -p $(@D)
awk 'BEGIN{RS=""; ORS="\n\n"} NR>2{print}' $< | sed 's/\.\.\/template\//template\//' > $@
$(BUNDLEDIR)/dp.typ: theses/dp.typ
@mkdir -p $(@D)
awk 'BEGIN{RS=""; ORS="\n\n"} NR>2{print}' $< | sed 's/\.\.\/template\//template\//' > $@
$(BUNDLEDIR)/Makefile: templategen.mk $(BUNDLEDIR)/Makefile: templategen.mk
@mkdir -p $(@D) @mkdir -p $(@D)
@@ -61,7 +71,11 @@ $(BUNDLEDIR)/template/LICENSE: LICENSE
@mkdir -p $(@D) @mkdir -p $(@D)
ln -f $< $@ ln -f $< $@
$(PACKDIR)/template/tul_citace.csl $(BUNDLEDIR)/template/tul_citace.csl: template/tul_citace.csl $(PACKDIR)/template/tul_citace.csl: template/tul_citace.csl
@mkdir -p $(@D)
cat $< | sed 's/^\s*\(.*\)$$/\1/' | tr -d '\n' > $@
$(BUNDLEDIR)/template/tul_citace.csl: template/tul_citace.csl
@mkdir -p $(@D) @mkdir -p $(@D)
cat $< | sed 's/^\s*\(.*\)$$/\1/' | tr -d '\n' > $@ cat $< | sed 's/^\s*\(.*\)$$/\1/' | tr -d '\n' > $@
@@ -83,6 +97,12 @@ $(BUNDLEDIR)/template/%: template/%
TEMPLATE_SRCS := $(shell find template -type f) TEMPLATE_SRCS := $(shell find template -type f)
bp.pdf: theses/bp.typ
typst compile --font-path template/fonts --root . $< $@
dp.pdf: theses/dp.typ
typst compile --font-path template/fonts --root . $< $@
documentation.pdf: documentation.typ $(TEMPLATE_SRCS) documentation.pdf: documentation.typ $(TEMPLATE_SRCS)
typst compile --font-path template/fonts $< typst compile --font-path template/fonts $<

View File

@@ -356,7 +356,7 @@ Zvýrazněné hodnoty jsou základní -- pokud vynecháte parametr, pak bude pou
- Je vyžadován jazyk, který je vybrán pro celou šablonu -- tohle je pojistka, aby uživatel šablony - Je vyžadován jazyk, který je vybrán pro celou šablonu -- tohle je pojistka, aby uživatel šablony
nevynechal vybraný jazyk nevynechal vybraný jazyk
#line() #line()
- `branch` (studijní obor) - `specialization` (specializace)
- Stejně jako #link(<arg_programme>, [`programme`]) - Stejně jako #link(<arg_programme>, [`programme`])
#line() #line()
- `abstract` (abstrakt) - `abstract` (abstrakt)

View File

@@ -20,7 +20,7 @@
faculty_id, faculty_color, language, assignment_document, citation_file, faculty_id, faculty_color, language, assignment_document, citation_file,
// document info // document info
title, author, author_pronouns, supervisor, consultant, study_programme, study_branch, title, author, author_pronouns, supervisor, consultant, study_programme, study_specialization,
year_of_study, abstract_content, acknowledgement_content, keywords, year_of_study, abstract_content, acknowledgement_content, keywords,
content content
@@ -31,8 +31,8 @@
assert_not_none(study_programme, "study programme"); assert_not_none(study_programme, "study programme");
assert_dict_has((language,), study_programme, "study programme"); assert_dict_has((language,), study_programme, "study programme");
assert_not_none(study_branch, "study branch"); assert_not_none(study_specialization, "study specialization");
assert_dict_has((language,), study_branch, "study branch"); assert_dict_has((language,), study_specialization, "study specialization");
assert_not_none(abstract_content, "abstract"); assert_not_none(abstract_content, "abstract");
assert_dict_has(force_langs, abstract_content, "abstract"); assert_dict_has(force_langs, abstract_content, "abstract");
@@ -49,7 +49,7 @@
mainpage( mainpage(
faculty_id, language, "bp", title, author, supervisor, consultant, study_programme, faculty_id, language, "bp", title, author, supervisor, consultant, study_programme,
study_branch, year_of_study, study_specialization, year_of_study,
); );
assignment(language, assignment_document); assignment(language, assignment_document);
default_styling(false, faculty_color, { default_styling(false, faculty_color, {

View File

@@ -13,7 +13,7 @@
language, faculty_id, document_type, citation_file, assignment_document, language, faculty_id, document_type, citation_file, assignment_document,
// document info // document info
title, author, author_pronouns, supervisor, consultant, study_programme, study_branch, title, author, author_pronouns, supervisor, consultant, study_programme, study_specialization,
year_of_study, abstract, acknowledgement, keywords, year_of_study, abstract, acknowledgement, keywords,
// content // content
@@ -28,7 +28,7 @@
assert_in_dict(document_type, document_types, "document type"); assert_in_dict(document_type, document_types, "document type");
map_none(title, (v) => assert_dict_has((language,), v, "title")); map_none(title, (v) => assert_dict_has((language,), v, "title"));
map_none(study_programme, (v) => assert_dict_has((language,), v, "study programme")); map_none(study_programme, (v) => assert_dict_has((language,), v, "study programme"));
map_none(study_branch, (v) => assert_dict_has((language,), v, "study branch")); map_none(study_specialization, (v) => assert_dict_has((language,), v, "study specialization"));
map_none(acknowledgement, (v) => assert_dict_has((language,), v, "acknowledgement content")); map_none(acknowledgement, (v) => assert_dict_has((language,), v, "acknowledgement content"));
document_types.at(document_type)( document_types.at(document_type)(
@@ -43,7 +43,7 @@
supervisor, supervisor,
consultant, consultant,
study_programme, study_programme,
study_branch, study_specialization,
year_of_study, year_of_study,
abstract, abstract,
acknowledgement, acknowledgement,

View File

@@ -135,7 +135,7 @@
faculty_id, faculty_id,
language, language,
document_type, document_type,
title, author, supervisor, consultant, study_programme, study_branch, year_of_study, title, author, supervisor, consultant, study_programme, study_specialization, year_of_study,
) = { ) = {
let info_name_value_padding = 5em; let info_name_value_padding = 5em;
let info_name_min_width = 10em; let info_name_min_width = 10em;
@@ -161,7 +161,7 @@
("supervisor", person_info(supervisor, "supervisor"), false), ("supervisor", person_info(supervisor, "supervisor"), false),
("consultant", person_info(consultant, "consultant"), false), ("consultant", person_info(consultant, "consultant"), false),
("study_programme", study_programme, false), ("study_programme", study_programme, false),
("study_branch", study_branch, false), ("study_specialization", study_specialization, false),
("year_of_study", map_none(year_of_study, (v) => str(v) + "."), false), ("year_of_study", map_none(year_of_study, (v) => str(v) + "."), false),
) )
context { context {
@@ -197,7 +197,7 @@
faculty_id, faculty_id,
language, language,
document_type, document_type,
title, author, supervisor, consultant, study_programme, study_branch, year_of_study, title, author, supervisor, consultant, study_programme, study_specialization, year_of_study,
) = { ) = {
import "../utils.typ": has_all_none, map_none import "../utils.typ": has_all_none, map_none
let nonetype = type(none); let nonetype = type(none);
@@ -212,7 +212,7 @@
info( info(
faculty_id, language, document_type, map_none(title, (v) => v.at(language)), faculty_id, language, document_type, map_none(title, (v) => v.at(language)),
author, supervisor, consultant, map_none(study_programme, (v) => v.at(language)), author, supervisor, consultant, map_none(study_programme, (v) => v.at(language)),
map_none(study_branch, (v) => v.at(language)), year_of_study, map_none(study_specialization, (v) => v.at(language)), year_of_study,
); );
v(5em); v(5em);
}, bottom); }, bottom);

View File

@@ -20,7 +20,7 @@
faculty_id, faculty_color, language, assignment_document, citation_file, faculty_id, faculty_color, language, assignment_document, citation_file,
// document info // document info
title, author, author_pronouns, supervisor, consultant, study_programme, study_branch, title, author, author_pronouns, supervisor, consultant, study_programme, study_specialization,
year_of_study, abstract_content, acknowledgement_content, keywords, year_of_study, abstract_content, acknowledgement_content, keywords,
content content
@@ -31,7 +31,7 @@
assert_not_none(study_programme, "study programme"); assert_not_none(study_programme, "study programme");
assert_dict_has((language,), study_programme, "study programme"); assert_dict_has((language,), study_programme, "study programme");
map_none(study_branch, (v) => assert_dict_has((language,), v, "study branch")); map_none(study_specialization, (v) => assert_dict_has((language,), v, "study specialization"));
assert_not_none(abstract_content, "abstract"); assert_not_none(abstract_content, "abstract");
assert_dict_has(force_langs, abstract_content, "abstract"); assert_dict_has(force_langs, abstract_content, "abstract");
@@ -48,7 +48,7 @@
mainpage( mainpage(
faculty_id, language, "dp", title, author, supervisor, consultant, study_programme, faculty_id, language, "dp", title, author, supervisor, consultant, study_programme,
study_branch, year_of_study, study_specialization, year_of_study,
); );
assignment(language, assignment_document); assignment(language, assignment_document);
default_styling(false, faculty_color, { default_styling(false, faculty_color, {

View File

@@ -19,7 +19,7 @@
faculty_id, faculty_color, language, assignment_document, citation_file, faculty_id, faculty_color, language, assignment_document, citation_file,
// document info // document info
title, author, _, supervisor, consultant, study_programme, study_branch, year_of_study, title, author, _, supervisor, consultant, study_programme, study_specialization, year_of_study,
abstract_content, _, keywords, abstract_content, _, keywords,
content content
@@ -29,7 +29,7 @@
mainpage( mainpage(
faculty_id, language, none, title, author, supervisor, consultant, study_programme, faculty_id, language, none, title, author, supervisor, consultant, study_programme,
study_branch, year_of_study, study_specialization, year_of_study,
); );
default_styling(true, faculty_color, { default_styling(true, faculty_color, {
toc(language); toc(language);

View File

@@ -5,7 +5,7 @@
"supervisor": "Vedoucí práce", "supervisor": "Vedoucí práce",
"consultant": "Konzultant práce", "consultant": "Konzultant práce",
"study_programme": "Studijní program", "study_programme": "Studijní program",
"study_branch": "Studijní obor", "study_specialization": "Specializace",
"year_of_study": "Ročník", "year_of_study": "Ročník",
"bp": "Bakalářská práce", "bp": "Bakalářská práce",
@@ -73,7 +73,7 @@
"supervisor": "Supervisor", "supervisor": "Supervisor",
"consultant": "Consultant", "consultant": "Consultant",
"study_programme": "Study programme", "study_programme": "Study programme",
"study_branch": "Study branch", "study_specialization": "Specialization",
"year_of_study": "Year of study", "year_of_study": "Year of study",
"bp": "Bachelor thesis", "bp": "Bachelor thesis",

View File

@@ -32,7 +32,7 @@
// - supervisor (str): The name of the document's supervisor. // - supervisor (str): The name of the document's supervisor.
// - consultant (str): The name of the document's consultant. // - consultant (str): The name of the document's consultant.
// - programme (dictionary): Study programme. // - programme (dictionary): Study programme.
// - branch (disctionary): Study branch // - specialization (disctionary): Study specialization
// - abstract (dictionary): The abstract. // - abstract (dictionary): The abstract.
// - keywords (dictionary): The abstract keywords. // - keywords (dictionary): The abstract keywords.
// - assignment (str): Filepath of the assignment document/page. // - assignment (str): Filepath of the assignment document/page.
@@ -47,7 +47,7 @@
// document info // document info
title: none, keywords: none, abstract: none, acknowledgement: none, author: none, title: none, keywords: none, abstract: none, acknowledgement: none, author: none,
author_pronouns: none, supervisor: none, consultant: none, programme: none, author_pronouns: none, supervisor: none, consultant: none, programme: none,
branch: none, year_of_study: none, specialization: none, year_of_study: none,
// links // links
assignment: none, citations: "citations.bib", assignment: none, citations: "citations.bib",
@@ -81,7 +81,9 @@
assert_type_signature( assert_type_signature(
programme, "dictionary[string : string] | none", "study programme argument" programme, "dictionary[string : string] | none", "study programme argument"
); );
assert_type_signature(branch, "dictionary[string : string] | none", "study branch argument"); assert_type_signature(
specialization, "dictionary[string : string] | none", "study specialization argument"
);
assert_type_signature(year_of_study, "integer | none", "year of study"); assert_type_signature(year_of_study, "integer | none", "year of study");
assert_type_signature(assignment, "string | none", "assignment document argument"); assert_type_signature(assignment, "string | none", "assignment document argument");
assert_type_signature(citations, "string", "citations file argument"); assert_type_signature(citations, "string", "citations file argument");
@@ -102,7 +104,7 @@
templates.at(style)( templates.at(style)(
lang, faculty, document, citations, assignment, lang, faculty, document, citations, assignment,
title, author, author_pronouns, supervisor, consultant, title, author, author_pronouns, supervisor, consultant,
programme, branch, year_of_study, abstract, acknowledgement, keywords, content programme, specialization, year_of_study, abstract, acknowledgement, keywords, content
); );
import "prototyping.typ": assert_release_ready import "prototyping.typ": assert_release_ready

View File

@@ -1,15 +0,0 @@
@misc{ typst,
author = "Wikidata",
title = "Q117858460 --- Wikidata{,} ",
year = "2025",
url = "https://www.wikidata.org/w/index.php?title=Q117858460&oldid=2404700455",
note = "[Online; cit. 24-Zář-2025]"
}
@misc{ bibtex,
author = "{Wikipedia contributors}",
title = "BibTeX --- {Wikipedia}{,} The Free Encyclopedia",
year = "2025",
url = "https://en.wikipedia.org/w/index.php?title=BibTeX&oldid=1309039867",
note = "[Online; cit 24-Zář-2025]"
}

Binary file not shown.

View File

@@ -1,15 +0,0 @@
@misc{ typst,
author = "Wikidata",
title = "Q117858460 --- Wikidata{,} ",
year = "2025",
url = "https://www.wikidata.org/w/index.php?title=Q117858460&oldid=2404700455",
note = "[Online; cit. 24-Zář-2025]"
}
@misc{ bibtex,
author = "{Wikipedia contributors}",
title = "BibTeX --- {Wikipedia}{,} The Free Encyclopedia",
year = "2025",
url = "https://en.wikipedia.org/w/index.php?title=BibTeX&oldid=1309039867",
note = "[Online; cit 24-Zář-2025]"
}

Binary file not shown.

View File

@@ -1,27 +1,36 @@
#import "../../template/template.typ": * #import "../template/template.typ": *
#show: tultemplate2.with( #show: tultemplate2.with(
style: "classic", style: "classic",
faculty: "fm", faculty: "fm",
lang: "cs", lang: "cs",
document: "bp", document: "bp",
title: (cs: "Ukázka dokumentu typu Bakalářská práce pro FM TUL v češtině", en: "Example document for a Bachelor's thesis for FM TUL in Czech"), title: (
cs: "Ukázka dokumentu typu Bakalářská práce pro FM TUL v češtině",
en: "Example document for a Bachelor's thesis for FM TUL in Czech",
),
author: "Matěj Žucha", author: "Matěj Žucha",
author_pronouns: "masculine", author_pronouns: "masculine",
supervisor: "Ondřej Mekina", supervisor: "Ondřej Mekina",
consultant: "Michal Procházka (nepovinný údaj)", consultant: "Michal Procházka (nepovinný údaj)",
programme: (cs: "Můj krásný studijní program"), programme: (cs: "Můj krásný studijní program"),
branch: (cs: "Můj krásný studijní obor"), specialization: (cs: "Moje krásná studijní specializace"),
abstract: ( abstract: (
cs: cs: [
"Tento dokument slouží jako praktická ukázka všech důležitcýh funkcí šablony _tultemplate2_, s názornými příklady použítí a jejich podrobným popisem.", Tento dokument slouží jako praktická ukázka všech důležitcýh funkcí šablony _tultemplate2_,
en: s názornými příklady použítí a jejich podrobným popisem.
"This document serves as a practical demonstration of all the important features of the _tultemplate2_ template, with useful examples and their respective descriptions.", ],
en: [
This document serves as a practical demonstration of all the important features of the
_tultemplate2_ template, with useful examples and their respective descriptions.
],
),
keywords: (
cs: ("Ukázka", "Klíčových", "Slov", "Česky"),
en: ("Example", "Keywords", "In", "English"),
), ),
keywords: (cs: ("Ukázka", "Klíčových", "Slov", "Česky"), en: ("Example", "Keywords", "In", "English")),
acknowledgement: (cs: "Lorem ipsum dolor sit amet."), acknowledgement: (cs: "Lorem ipsum dolor sit amet."),
assignment: "theses/BP_cs/zadani.pdf", citations: "citations.bib",
citations: "theses/BP_cs/citace.bib",
) )
= Co najdete v této šabloně = Co najdete v této šabloně
@@ -76,6 +85,7 @@ raději
přehlednější přehlednější
formátování formátování
a sám si obsah dělí na řádky, protože ve výsledném PDF souboru se stejně spojí do jednoho celistvého odstavce. a sám si obsah dělí na řádky, protože ve výsledném PDF souboru se stejně spojí do jednoho celistvého odstavce.
Musí akorát ručně dbát na to, aby odstavce nebyly příliš krátké, ani příliš dlouhé.
S souvislosti s odstavci bych ještě zmínil, že Typst se za vás stará také o zarovnávání písma a slov do bloků S souvislosti s odstavci bych ještě zmínil, že Typst se za vás stará také o zarovnávání písma a slov do bloků
a dělení slov mezi řádky. Chováním odpovídá pravidlům českého pravopisu a typografie, takže se o to nemusíte vůbec starat. a dělení slov mezi řádky. Chováním odpovídá pravidlům českého pravopisu a typografie, takže se o to nemusíte vůbec starat.
@@ -90,31 +100,23 @@ rovná se a mezera na začátku řádku, čili ve zdrojovém souboru Typstu je p
= Můj nadpis první úrovně = Můj nadpis první úrovně
``` ```
Pro nadpis druhé úrovně pak použijeme dvě rovná se, pro nadpis třetí úrovně tři rovná se... Úrovní podnadpisů je dost na to, že vám pravděpodobně nedojdou. Pro nadpis druhé úrovně pak použijeme dvě rovná se, pro nadpis třetí úrovně tři rovná se.
Šablona *tultemplate2* Vám ovšem bohužel nedovolí nadpis čtvrté a další úrovně, protože by takový
nadpis porušoval směrnice TUL o formátování dokumentů. Ale nemusíte se bát. Pokud takový nadpis
uděláte -- šablona vyhodí chybu, aby vás na to upozornila.
```typst ```typst
= Nadpis = Nadpis
== Podnadpis == Podnadpis
=== Podpodnadpis === Podpodnadpis
==== už tomu asi rozumíte ...
A pak obsah A pak obsah
``` ```
== Číslování kapitol == Číslování kapitol
Asi jste si všimli, že každý nadpis začíná číslem dané kapitoly. Toto číslování provádí Typst automaticky, promítne se následně i v sekci Obsah na začátku souboru, nemusíte se tak opět o nic starat. Asi jste si všimli, že každý nadpis začíná číslem dané kapitoly. Toto číslování provádí Typst automaticky, promítne se následně i v sekci Obsah na začátku souboru, nemusíte se tak opět o nic starat.
```typst
= Nadpis
== Podnadpis
=== Podpodnadpis
==== už tomu asi rozumíte ...
A pak obsah.
```
= Používání funkcí = Používání funkcí
Používání většiny funkcionalit Typstu je prováděno pomocí tzv. volání funkce. Je to velmi podobné předchozím ukázkám, Používání většiny funkcionalit Typstu je prováděno pomocí tzv. volání funkce. Je to velmi podobné předchozím ukázkám,
@@ -166,8 +168,7 @@ https://en.wikipedia.org/wiki/List_of_URI_schemes.
== Obrázky == Obrázky
Obrázky je možné vkládat samotné, nebo i s popiskem. Obrázky je možné vkládat samotné, nebo i s popiskem.
Obrázek se vloží pomocí funkce `image`.
Obrázek se vloží pomocí funkce `image`:
Přidání popisku a zároveň zalistování obrázku v indexu (aby se na třeba dalo odkazovat) lze Přidání popisku a zároveň zalistování obrázku v indexu (aby se na třeba dalo odkazovat) lze
udělat pomocí funkce `figure`. udělat pomocí funkce `figure`.
@@ -185,7 +186,7 @@ udělat pomocí funkce `figure`.
Tady je praktická ukázka jednoduchého vložení obrázku s popiskem: Tady je praktická ukázka jednoduchého vložení obrázku s popiskem:
#figure(image("../../template/assets/tul_logo.svg", width: 25%), caption: [ #figure(image("../template/assets/tul_logo.svg", width: 25%), caption: [
Logo *TUL* Logo *TUL*
]) ])
@@ -303,7 +304,7 @@ Při dalších použití bude vypadat takto: #abbr("ZK").
== Přílohy == Přílohy
Na konec souboru (nebo klidně doprostřed či na začátek, hlavní je, že pouze jednou) je také možné dát strukturu generující přílohy. Momentálně jsou podporované dva typy příloh, odkaz a obsah. Na konec souboru (nebo klidně doprostřed či na začátek, hlavní je, že pouze jednou) je také možné dát strukturu generující přílohy. Momentálně jsou podporované čtyři typy příloh: odkaz, obsah, PDF soubor vložený na konec dokumentu a odkaz na externí soubor (například přiložený do systému s bakalářskou prací).
Jako demonstrace by měla postačit praktická ukázka, která ve zdrojovém kódu následuje hned za tímto odstavcem, a která generuje přílohy tohoto dokumentu. Jako demonstrace by měla postačit praktická ukázka, která ve zdrojovém kódu následuje hned za tímto odstavcem, a která generuje přílohy tohoto dokumentu.
#attachments( #attachments(

View File

@@ -1,26 +1,35 @@
#import "../../template/template.typ": * #import "../template/template.typ": *
#show: tultemplate2.with( #show: tultemplate2.with(
style: "classic", style: "classic",
faculty: "fm", faculty: "fm",
lang: "cs", lang: "cs",
document: "dp", document: "dp",
title: (cs: "Ukázka dokumentu typu Diplomová práce pro FM TUL v češtině", en: "Example document for a Master's thesis for FM TUL in Czech"), title: (
cs: "Ukázka dokumentu typu Diplomová práce pro FM TUL v češtině",
en: "Example document for a Master's thesis for FM TUL in Czech",
),
author: "Matěj Žucha", author: "Matěj Žucha",
author_pronouns: "masculine", author_pronouns: "masculine",
supervisor: "Ondřej Mekina", supervisor: "Ondřej Mekina",
consultant: "Michal Procházka (nepovinný údaj)", consultant: "Michal Procházka (nepovinný údaj)",
programme: (cs: "Můj krásný studijní program"), programme: (cs: "Můj krásný studijní program"),
abstract: ( abstract: (
cs: cs: [
"Tento dokument slouží jako praktická ukázka všech důležitcýh funkcí šablony _tultemplate2_, s názornými příklady použítí a jejich podrobným popisem.", Tento dokument slouží jako praktická ukázka všech důležitcýh funkcí šablony _tultemplate2_,
en: s názornými příklady použítí a jejich podrobným popisem.
"This document serves as a practical demonstration of all the important features of the _tultemplate2_ template, with useful examples and their respective descriptions.", ],
en: [
This document serves as a practical demonstration of all the important features of the
_tultemplate2_ template, with useful examples and their respective descriptions.
]
),
keywords: (
cs: ("Ukázka", "Klíčových", "Slov", "Česky"),
en: ("Example", "Keywords", "In", "English"),
), ),
keywords: (cs: ("Ukázka", "Klíčových", "Slov", "Česky"), en: ("Example", "Keywords", "In", "English")),
acknowledgement: (cs: "Lorem ipsum dolor sit amet."), acknowledgement: (cs: "Lorem ipsum dolor sit amet."),
assignment: "theses/DP_cs/zadani.pdf", citations: "citations.bib",
citations: "theses/DP_cs/citace.bib",
) )
= Co najdete v této šabloně = Co najdete v této šabloně
@@ -75,6 +84,7 @@ raději
přehlednější přehlednější
formátování formátování
a sám si obsah dělí na řádky, protože ve výsledném PDF souboru se stejně spojí do jednoho celistvého odstavce. a sám si obsah dělí na řádky, protože ve výsledném PDF souboru se stejně spojí do jednoho celistvého odstavce.
Musí akorát ručně dbát na to, aby odstavce nebyly příliš krátké, ani příliš dlouhé.
S souvislosti s odstavci bych ještě zmínil, že Typst se za vás stará také o zarovnávání písma a slov do bloků S souvislosti s odstavci bych ještě zmínil, že Typst se za vás stará také o zarovnávání písma a slov do bloků
a dělení slov mezi řádky. Chováním odpovídá pravidlům českého pravopisu a typografie, takže se o to nemusíte vůbec starat. a dělení slov mezi řádky. Chováním odpovídá pravidlům českého pravopisu a typografie, takže se o to nemusíte vůbec starat.
@@ -89,31 +99,23 @@ rovná se a mezera na začátku řádku, čili ve zdrojovém souboru Typstu je p
= Můj nadpis první úrovně = Můj nadpis první úrovně
``` ```
Pro nadpis druhé úrovně pak použijeme dvě rovná se, pro nadpis třetí úrovně tři rovná se... Úrovní podnadpisů je dost na to, že vám pravděpodobně nedojdou. Pro nadpis druhé úrovně pak použijeme dvě rovná se, pro nadpis třetí úrovně tři rovná se.
Šablona *tultemplate2* Vám ovšem bohužel nedovolí nadpis čtvrté a další úrovně, protože by takový
nadpis porušoval směrnice TUL o formátování dokumentů. Ale nemusíte se bát. Pokud takový nadpis
uděláte -- šablona vyhodí chybu, aby vás na to upozornila.
```typst ```typst
= Nadpis = Nadpis
== Podnadpis == Podnadpis
=== Podpodnadpis === Podpodnadpis
==== už tomu asi rozumíte ...
A pak obsah A pak obsah
``` ```
== Číslování kapitol == Číslování kapitol
Asi jste si všimli, že každý nadpis začíná číslem dané kapitoly. Toto číslování provádí Typst automaticky, promítne se následně i v sekci Obsah na začátku souboru, nemusíte se tak opět o nic starat. Asi jste si všimli, že každý nadpis začíná číslem dané kapitoly. Toto číslování provádí Typst automaticky, promítne se následně i v sekci Obsah na začátku souboru, nemusíte se tak opět o nic starat.
```typst
= Nadpis
== Podnadpis
=== Podpodnadpis
==== už tomu asi rozumíte ...
A pak obsah.
```
= Používání funkcí = Používání funkcí
Používání většiny funkcionalit Typstu je prováděno pomocí tzv. volání funkce. Je to velmi podobné předchozím ukázkám, Používání většiny funkcionalit Typstu je prováděno pomocí tzv. volání funkce. Je to velmi podobné předchozím ukázkám,
@@ -165,8 +167,7 @@ https://en.wikipedia.org/wiki/List_of_URI_schemes.
== Obrázky == Obrázky
Obrázky je možné vkládat samotné, nebo i s popiskem. Obrázky je možné vkládat samotné, nebo i s popiskem.
Obrázek se vloží pomocí funkce `image`.
Obrázek se vloží pomocí funkce `image`:
Přidání popisku a zároveň zalistování obrázku v indexu (aby se na třeba dalo odkazovat) lze Přidání popisku a zároveň zalistování obrázku v indexu (aby se na třeba dalo odkazovat) lze
udělat pomocí funkce `figure`. udělat pomocí funkce `figure`.
@@ -184,7 +185,7 @@ udělat pomocí funkce `figure`.
Tady je praktická ukázka jednoduchého vložení obrázku s popiskem: Tady je praktická ukázka jednoduchého vložení obrázku s popiskem:
#figure(image("../../template/assets/tul_logo.svg", width: 25%), caption: [ #figure(image("../template/assets/tul_logo.svg", width: 25%), caption: [
Logo *TUL* Logo *TUL*
]) ])
@@ -302,7 +303,7 @@ Při dalších použití bude vypadat takto: #abbr("ZK").
== Přílohy == Přílohy
Na konec souboru (nebo klidně doprostřed či na začátek, hlavní je, že pouze jednou) je také možné dát strukturu generující přílohy. Momentálně jsou podporované dva typy příloh, odkaz a obsah. Na konec souboru (nebo klidně doprostřed či na začátek, hlavní je, že pouze jednou) je také možné dát strukturu generující přílohy. Momentálně jsou podporované čtyři typy příloh: odkaz, obsah, PDF soubor vložený na konec dokumentu a odkaz na externí soubor (například přiložený do systému s diplomovou prací).
Jako demonstrace by měla postačit praktická ukázka, která ve zdrojovém kódu následuje hned za tímto odstavcem, a která generuje přílohy tohoto dokumentu. Jako demonstrace by měla postačit praktická ukázka, která ve zdrojovém kódu následuje hned za tímto odstavcem, a která generuje přílohy tohoto dokumentu.
#attachments( #attachments(