diff --git a/doc/example.typ b/doc/example.typ index 0ff4bac..7e7af59 100644 --- a/doc/example.typ +++ b/doc/example.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "../src/circuit.typ": circuit #import "../src/util.typ" diff --git a/gallery.bash b/gallery.bash deleted file mode 100644 index f87679c..0000000 --- a/gallery.bash +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash - -PDFS=false - -while getopts "p" flag -do - case "${flag}" in - p) PDFS=true;; - esac -done - -echo "Generating gallery images" - -set -- ./gallery/*.typ -cnt="$#" -i=1 -for f -do - f2="${f/typ/png}" - echo "($i/$cnt) $f -> $f2" - typst c --root ./ "$f" "$f2" - i=$((i+1)) -done - -if [ "$PDFS" = true ] -then - echo - echo "Generating gallery PDFs" - - set -- ./gallery/*.typ - cnt="$#" - i=1 - for f - do - f2="${f/typ/pdf}" - echo "($i/$cnt) $f -> $f2" - typst c --root ./ "$f" "$f2" - i=$((i+1)) - done -fi \ No newline at end of file diff --git a/gallery/platypus.png b/gallery/platypus.png index 9338a23..a52e375 100644 Binary files a/gallery/platypus.png and b/gallery/platypus.png differ diff --git a/gallery/test.png b/gallery/test.png index e090778..b6e812c 100644 Binary files a/gallery/test.png and b/gallery/test.png differ diff --git a/gallery/test2.png b/gallery/test2.png index e090778..b6e812c 100644 Binary files a/gallery/test2.png and b/gallery/test2.png differ diff --git a/gallery/test3.png b/gallery/test3.png index bd56665..2ed46d0 100644 Binary files a/gallery/test3.png and b/gallery/test3.png differ diff --git a/gallery/test3.typ b/gallery/test3.typ index a0d7f88..89db692 100644 --- a/gallery/test3.typ +++ b/gallery/test3.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "../src/lib.typ": circuit, element, util, wire #set page(width: auto, height: auto, margin: .5cm) diff --git a/gallery/test4.png b/gallery/test4.png index 258702b..e7666f6 100644 Binary files a/gallery/test4.png and b/gallery/test4.png differ diff --git a/gallery/test4.typ b/gallery/test4.typ index 0233d6f..08f8d00 100644 --- a/gallery/test4.typ +++ b/gallery/test4.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "../src/lib.typ": * #set page(width: auto, height: auto, margin: .5cm) diff --git a/gallery/test5.png b/gallery/test5.png index 92af622..b70bb2c 100644 Binary files a/gallery/test5.png and b/gallery/test5.png differ diff --git a/gallery/test5.typ b/gallery/test5.typ index 5b8ce62..ebf6e77 100644 --- a/gallery/test5.typ +++ b/gallery/test5.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "../src/lib.typ": * #set page(width: auto, height: auto, margin: .5cm) diff --git a/gallery/test6.png b/gallery/test6.png index ad23796..be04367 100644 Binary files a/gallery/test6.png and b/gallery/test6.png differ diff --git a/gallery/test6.typ b/gallery/test6.typ index 3fb4bbe..ba76c94 100644 --- a/gallery/test6.typ +++ b/gallery/test6.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw, vector +#import "@preview/cetz:0.3.2": draw, vector #import "../src/lib.typ": * #set page(width: auto, height: auto, margin: .5cm) diff --git a/justfile b/justfile new file mode 100644 index 0000000..978fd41 --- /dev/null +++ b/justfile @@ -0,0 +1,11 @@ +# Local Variables: +# mode: makefile +# End: +gallery_dir := "./gallery" +set shell := ["bash", "-uc"] + +manual: + typst c manual.typ manual.pdf + +gallery: + for f in "{{gallery_dir}}"/*.typ; do typst c --root . "$f" "${f%typ}png"; done diff --git a/manual.pdf b/manual.pdf index 2750ae9..b0c4328 100644 Binary files a/manual.pdf and b/manual.pdf differ diff --git a/manual.typ b/manual.typ index 7d1ef53..a23517e 100644 --- a/manual.typ +++ b/manual.typ @@ -1,5 +1,5 @@ -#import "@preview/tidy:0.3.0" -#import "@preview/cetz:0.2.2": draw, canvas +#import "@preview/tidy:0.4.1" +#import "@preview/cetz:0.3.2": draw, canvas #import "src/lib.typ" #import "doc/examples.typ" #import "src/circuit.typ": circuit @@ -12,7 +12,7 @@ numbering("1.1", ..num) }) #{ - outline(indent: true, depth: 3) + outline(indent: auto, depth: 3) } #show link: set text(blue) @@ -47,7 +47,7 @@ #set page(numbering: "1/1", header: align(right)[circuiteria #sym.dash.em v#lib.version]) #set page( - header: locate(loc => { + header: context { let txt = [circuiteria #sym.dash.em v#lib.version] let cnt = counter(heading) let cnt-val = cnt.get() @@ -65,8 +65,8 @@ #rect(width: 100%, height: .5em, radius: .25em, stroke: none, fill: util.colors.values().at(i)) ] ) - }), - footer: locate(loc => { + }, + footer: context { let cnt = counter(heading) let cnt-val = cnt.get() if cnt-val.len() < 2 { return } @@ -80,12 +80,12 @@ ], counter(page).display("1/1", both: true) ) - }) + } ) #let doc-ref(target, full: false, var: false) = { let (module, func) = target.split(".") - let label-name = module + func + let label-name = module + "-" + func let display-name = func if full { display-name = target @@ -94,7 +94,7 @@ label-name += "()" display-name += "()" } - link(label(label-name))[#display-name] + link(label(label-name), raw(display-name)) } = Introduction @@ -117,6 +117,7 @@ Simply import #link("src/lib.typ") and call the `circuit` function: #let circuit-docs = tidy.parse-module( read("src/circuit.typ"), name: "circuit", + old-syntax: true, require-all-parameters: true ) #tidy.show-module(circuit-docs) @@ -126,6 +127,7 @@ Simply import #link("src/lib.typ") and call the `circuit` function: #let util-docs = tidy.parse-module( read("src/util.typ"), name: "util", + old-syntax: true, require-all-parameters: true, scope: ( util: util, @@ -140,6 +142,7 @@ Simply import #link("src/lib.typ") and call the `circuit` function: #let wire-docs = tidy.parse-module( read("src/wire.typ"), name: "wire", + old-syntax: true, require-all-parameters: true, scope: ( wire: wire, @@ -161,6 +164,7 @@ Simply import #link("src/lib.typ") and call the `circuit` function: read("src/elements/multiplexer.typ") + "\n" + read("src/elements/group.typ"), name: "element", + old-syntax: true, scope: ( element: element, circuit: circuit, @@ -183,6 +187,7 @@ Simply import #link("src/lib.typ") and call the `circuit` function: read("src/elements/logic/or.typ") + "\n" + read("src/elements/logic/xor.typ"), name: "gates", + old-syntax: true, scope: ( element: element, circuit: circuit, diff --git a/src/circuit.typ b/src/circuit.typ index 4ae8331..7a701c7 100644 --- a/src/circuit.typ +++ b/src/circuit.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": canvas +#import "@preview/cetz:0.3.2": canvas #import "@preview/tidy:0.3.0" /// Draws a block circuit diagram diff --git a/src/elements/alu.typ b/src/elements/alu.typ index 0489cda..9a8cb82 100644 --- a/src/elements/alu.typ +++ b/src/elements/alu.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "element.typ" #import "ports.typ": add-port diff --git a/src/elements/block.typ b/src/elements/block.typ index 90f81d4..84623fe 100644 --- a/src/elements/block.typ +++ b/src/elements/block.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "element.typ" #let draw-shape(id, tl, tr, br, bl, fill, stroke) = { diff --git a/src/elements/element.typ b/src/elements/element.typ index 7690410..635fc0b 100644 --- a/src/elements/element.typ +++ b/src/elements/element.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw, coordinate +#import "@preview/cetz:0.3.2": draw, coordinate #import "ports.typ": add-ports, add-port #import "../util.typ" diff --git a/src/elements/extender.typ b/src/elements/extender.typ index ee60ae0..a1b99e0 100644 --- a/src/elements/extender.typ +++ b/src/elements/extender.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "element.typ" #import "ports.typ": add-port diff --git a/src/elements/group.typ b/src/elements/group.typ index 5a12f3f..1f3e41c 100644 --- a/src/elements/group.typ +++ b/src/elements/group.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw, coordinate +#import "@preview/cetz:0.3.2": draw, coordinate #import "../util.typ" /// Draws a group of elements diff --git a/src/elements/logic/and.typ b/src/elements/logic/and.typ index 2dbee0c..f32eb21 100644 --- a/src/elements/logic/and.typ +++ b/src/elements/logic/and.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "gate.typ" #let draw-shape(id, tl, tr, br, bl, fill, stroke) = { diff --git a/src/elements/logic/buf.typ b/src/elements/logic/buf.typ index ab77264..3db75a9 100644 --- a/src/elements/logic/buf.typ +++ b/src/elements/logic/buf.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "gate.typ" #let draw-shape(id, tl, tr, br, bl, fill, stroke) = { diff --git a/src/elements/logic/gate.typ b/src/elements/logic/gate.typ index ebf6115..7350a70 100644 --- a/src/elements/logic/gate.typ +++ b/src/elements/logic/gate.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw, coordinate +#import "@preview/cetz:0.3.2": draw, coordinate #import "../ports.typ": add-ports, add-port #import "../element.typ" diff --git a/src/elements/logic/or.typ b/src/elements/logic/or.typ index 67bb946..dca0f9b 100644 --- a/src/elements/logic/or.typ +++ b/src/elements/logic/or.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "gate.typ" #let draw-shape(id, tl, tr, br, bl, fill, stroke) = { diff --git a/src/elements/logic/xor.typ b/src/elements/logic/xor.typ index 42718f6..3f226a8 100644 --- a/src/elements/logic/xor.typ +++ b/src/elements/logic/xor.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "gate.typ" #let space = 10% diff --git a/src/elements/multiplexer.typ b/src/elements/multiplexer.typ index 8df5cee..d7c29eb 100644 --- a/src/elements/multiplexer.typ +++ b/src/elements/multiplexer.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "../util.typ" #import "element.typ" #import "ports.typ": add-port diff --git a/src/elements/ports.typ b/src/elements/ports.typ index 92d667a..951fa4a 100644 --- a/src/elements/ports.typ +++ b/src/elements/ports.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw +#import "@preview/cetz:0.3.2": draw #import "../util.typ": rotate-anchor #let add-port( diff --git a/src/lib.typ b/src/lib.typ index a5177a3..7f27208 100644 --- a/src/lib.typ +++ b/src/lib.typ @@ -1,4 +1,4 @@ -#let version = version(0, 1, 0) +#let version = version(0, 2, 0) #import "circuit.typ": circuit #import "element.typ" diff --git a/src/wire.typ b/src/wire.typ index 07a3ac1..8300a2c 100644 --- a/src/wire.typ +++ b/src/wire.typ @@ -1,4 +1,4 @@ -#import "@preview/cetz:0.2.2": draw, coordinate +#import "@preview/cetz:0.3.2": draw, coordinate #import "util.typ": opposite-anchor /// List of valid wire styles diff --git a/typst.toml b/typst.toml index c1e80c5..39cff5b 100644 --- a/typst.toml +++ b/typst.toml @@ -1,7 +1,7 @@ [package] name = "circuiteria" -version = "0.1.0" -compiler = "0.11.0" +version = "0.2.0" +compiler = "0.13.0" repository = "https://git.kb28.ch/HEL/circuiteria" entrypoint = "src/lib.typ" authors = [ @@ -11,4 +11,4 @@ categories = [ "visualization" ] license = "Apache-2.0" description = "Drawing block circuits with Typst made easy, using CeTZ" keywords = [ "circuit", "block", "draw" ] -exclude = [ "gallery", "gallery.bash", "doc" ] \ No newline at end of file +exclude = [ "gallery", "justfile", "doc" ] \ No newline at end of file