Select the types of activity you want to include in your feed.
Void Linux workstation powered by niri, Fish and NeoVim. Contains scripts, browser extensions, custom XBPS packages, and typst plugins.
git.anhgelus.world/anhgelus/dotfiles
···11# dotfiles
2233-My personnal dotfiles of my workstation powered by Void, Sway, niri, nvim and fish.
33+My dotfiles of my workstation powered by Void, ~~Sway,~~ niri, nvim and fish.
44+55+Detailled information available [on my website](https://anhgelus.world/setup) (in French).
66+77+## nvim
4855-You can install my nvim config with
99+You can install my nvim config with:
1010+> [!WARNING]
1111+> This command will override your NeoVim config.
1212+> Proceed with caution!
1313+1414+> [!INFO]
1515+> It will download the AppImage of NeoVim, put it in your home, and clone my config in your `.config/nvim`.
1616+617```bash
718curl -L https://git.anhgelus.world/anhgelus/dotfiles/raw/branch/main/setup.sh | bash
819```
9202121+## typst
2222+2323+I write simple packages for typst that are not published on their repository.
2424+You can find their documentation in the `typst` folder.
2525+2626+You can install these scripts to your local repo with:
2727+> [!WARNING]
2828+> This command may overrides scripts installed in your local repository.
2929+> Proceed with caution!
3030+3131+> [!INFO]
3232+> These will be available under `@local/<package>:<version>`.
3333+> See [`typst/README.md`](./typst/README.md) for more information.
3434+>
3535+> If you want, you can set `@anhgelus` (or anything else) instead of `@local` by modifying `packages/local/` into
3636+> `packages/anhgelus`.
3737+3838+```bash
3939+cp -r typst/* ${XDG_DATA_HOME:-$HOME/.local/share}/typst/packages/local/
4040+```
+29
typst/README.md
···11+# typst scripts
22+33+The version of these scripts will always be `1.0.0`, because using anything else looks like to be too complicated for
44+anything.
55+66+## `template.typ`
77+88+This template requires:
99+- `Inter` as the sans-serif font;
1010+- `PT Astra Serif` as the serif font;
1111+- `FiraCode Nerd Font Mono` as the monospace font.
1212+1313+These can be freely used.
1414+I may add an option to modify this.
1515+1616+Import it and load it with:
1717+```typ
1818+// import the script from the local repo
1919+// if you have modified the repo name, replace `@local` with their name
2020+#import "@local/template:1.0.0": *
2121+2222+// initialize template
2323+#show: doc.with(
2424+ authors: (
2525+ (name: "Your Name", affiliation: "Your affiliation", email: "Your email"),
2626+ ),
2727+ page_title: "Page title :D",
2828+)
2929+```
+124
typst/template.typ
···11+#let doc(authors: (), page_title: [], doc) = {
22+ // style
33+ set text(
44+ font: "Inter",
55+ size: 11pt,
66+ )
77+ set par(
88+ leading: 1em,
99+ first-line-indent: 1em,
1010+ spacing: 2em,
1111+ )
1212+ set heading(numbering: "1.")
1313+1414+ set page(
1515+ header: align(
1616+ right + horizon,
1717+ // Retrieve the document
1818+ // element's title property.
1919+ context document.title,
2020+ ),
2121+ numbering: "1",
2222+ margin: (x: 2.85cm),
2323+ )
2424+2525+ show heading: set par(leading: 0.75em)
2626+ show heading: set text(font: "PT Astra Serif")
2727+ show heading.where(level: 1): set block(below: 1em)
2828+ show heading.where(level: 1): set text(size: 1.2em)
2929+ show heading.where(level: 1, numbering: "1."): it => {
3030+ pagebreak(weak: true)
3131+ it
3232+ }
3333+ show heading.where(level: 2): set block(above: 3em, below: 1em)
3434+ show heading.where(level: 2): set text(size: 1.1em)
3535+3636+ show title: set text(size: 1.25em, font: "PT Astra Serif")
3737+ show title: set align(center)
3838+ show title: set block(above: 5em, below: 1em)
3939+ show title: set par(leading: 0.5em)
4040+4141+ show enum: set par(leading: 0.9em)
4242+ show list: set par(leading: 0.9em)
4343+4444+ show raw: set text(font: "FiraCode Nerd Font Mono")
4545+ show raw.where(block: false): set text(weight: 500, size: 1.1em)
4646+4747+ // style
4848+ set text(
4949+ font: "Inter",
5050+ size: 11pt,
5151+ )
5252+ set par(
5353+ leading: 1em,
5454+ first-line-indent: 1em,
5555+ spacing: 2em,
5656+ )
5757+ set heading(numbering: "1.")
5858+5959+ set page(
6060+ header: align(
6161+ right + horizon,
6262+ // Retrieve the document
6363+ // element's title property.
6464+ context {
6565+ emph([
6666+ #document.title - #authors.first().name
6767+ ])
6868+ }
6969+ ),
7070+ numbering: "1",
7171+ margin: (x: 2.85cm),
7272+ )
7373+7474+ show heading: set par(leading: 0.75em)
7575+ show heading: set text(font: "PT Astra Serif")
7676+ show heading.where(level: 1): set block(below: 1em)
7777+ show heading.where(level: 1): set text(size: 1.2em)
7878+ show heading.where(level: 2): set block(above: 3em, below: 1em)
7979+ show heading.where(level: 2): set text(size: 1.1em)
8080+8181+ show title: set text(size: 1.25em, font: "PT Astra Serif")
8282+ show title: set align(center)
8383+ show title: set block(above: 5em, below: 1em)
8484+ show title: set par(leading: 0.5em)
8585+ show outline: it => {
8686+ it
8787+ pagebreak()
8888+ }
8989+9090+ show enum: set par(leading: 0.9em)
9191+ show list: set par(leading: 0.9em)
9292+9393+ show raw: set text(font: "FiraCode Nerd Font Mono")
9494+ show raw.where(block: false): set text(weight: 500, size: 1.1em)
9595+ set document(title: page_title)
9696+ let ncols = calc.min(authors.len(), 3)
9797+9898+ title()
9999+100100+ block(below: 5em, context {
101101+ grid(
102102+ columns: (1fr,) * ncols,
103103+ gutter: 2em,
104104+ align: center,
105105+ ..authors.map(author => {
106106+ par(leading: 0.75em)[
107107+ #author.name \
108108+ #author.affiliation \
109109+ #link("mailto:" + author.email)
110110+ ]
111111+ })
112112+ )
113113+ })
114114+115115+116116+ outline(title: "Table des matières")
117117+118118+ show heading.where(level: 1): it => {
119119+ pagebreak(weak: true)
120120+ it
121121+ }
122122+123123+ doc
124124+}