sahasatvik/typst-theorems
Fork: 13 Star: 213 (更新于 2024-12-12 15:59:26)
license: MIT
Language: Typst .
An implementation of numbered theorem environments in typst
最后发布版本: v1.1.2 ( 2024-02-25 19:42:03)
typst-theorems
An implementation of numbered theorem environments in typst. Available as ctheorems in the official Typst Universe. Import with
#import "@preview/ctheorems:1.1.3": *
#show: thmrules
Alternatively, copy and import the theorems.typ file to use in your own projects.
Features
- Numbered theorem environments can be created and customized.
- Environments can share the same counter, via same
identifier
s. - Environment counters can be attached (just as subheadings are attached to headings) to other environments, headings, or keep a global count via
base
. - The depth of a counter can be manually set, via
base_level
. - Environments can be
<label>
'd and@reference
'd.
Manual and Examples
Get acquainted with typst-theorems
by checking out the minimal example below!
You can read the manual for a full walkthrough of functionality offered by this module; flick through manual_examples and its typ file to just see the examples.
The differential_calculus.typ (render) project provides a practical use case. (Hastily translated from my notes written in LaTeX)
Preamble
#import "theorems.typ": *
#show: thmrules.with(qed-symbol: $square$)
#set page(width: 16cm, height: auto, margin: 1.5cm)
#set text(font: "Libertinus Serif", lang: "en")
#set heading(numbering: "1.1.")
#let theorem = thmbox("theorem", "Theorem", fill: rgb("#eeffee"))
#let corollary = thmplain(
"corollary",
"Corollary",
base: "theorem",
titlefmt: strong
)
#let definition = thmbox("definition", "Definition", inset: (x: 1.2em, top: 1em))
#let example = thmplain("example", "Example").with(numbering: none)
#let proof = thmproof("proof", "Proof")
Document
= Prime numbers
#definition[
A natural number is called a #highlight[_prime number_] if it is greater
than 1 and cannot be written as the product of two smaller natural numbers.
]
#example[
The numbers $2$, $3$, and $17$ are prime.
@cor_largest_prime shows that this list is not exhaustive!
]
#theorem("Euclid")[
There are infinitely many primes.
]
#proof[
Suppose to the contrary that $p_1, p_2, dots, p_n$ is a finite enumeration
of all primes. Set $P = p_1 p_2 dots p_n$. Since $P + 1$ is not in our list,
it cannot be prime. Thus, some prime factor $p_j$ divides $P + 1$. Since
$p_j$ also divides $P$, it must divide the difference $(P + 1) - P = 1$, a
contradiction.
]
#corollary[
There is no largest prime number.
] <cor_largest_prime>
#corollary[
There are infinitely many composite numbers.
]
#theorem[
There are arbitrarily long stretches of composite numbers.
]
#proof[
For any $n > 2$, consider $
n! + 2, quad n! + 3, quad ..., quad n! + n #qedhere
$
]
Acknowledgements
Thanks to
-
MJHutchinson for suggesting and
implementing the
base_level
andbase: none
features, -
rmolinari for suggesting and
implementing the
separator: ...
feature, -
DVDTSB for contributing
- the idea of passing named arguments from the theorem directly to the
fmt
function. - the
number: ...
override feature. - the
title: ...
override feature inthmbox
.
- the idea of passing named arguments from the theorem directly to the
- PgBiel for fixing breaking changes in version updates.
- The awesome devs of typst.app for their support.
最近版本更新:(数据更新于 2024-09-10 19:46:02)
2024-02-25 19:42:03 v1.1.2
2024-02-24 21:06:52 v1.1.1
2023-11-07 00:26:33 v1.1.0
2023-09-23 00:19:38 v1.0.0
2023-04-27 01:14:08 v0.1.0
主题(topics):
typst
sahasatvik/typst-theorems同语言 Typst最近更新仓库
2024-08-21 01:55:24 mintyfrankie/brilliant-CV
2024-07-07 20:49:57 Enter-tainer/typst-preview
2024-05-20 00:37:24 johanvx/typst-undergradmath
2024-04-02 10:09:33 Leedehai/typst-physics
2024-03-18 05:41:13 cetz-package/cetz
2024-01-12 23:23:59 PgBiel/typst-tablex