From 03afddc3c004f89c4859bf77620500856eb125f2 Mon Sep 17 00:00:00 2001 From: Hannah Herde Date: Sun, 8 Feb 2026 11:25:39 +0100 Subject: [PATCH 1/6] Update README.md: Add Just information Thanks for helping me learn about Just! I added some text to the parent readme explaining what Just is and that it needs to be installed to set up to use the commands in the readme. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 2912e16..f4563c4 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,7 @@ Source code for creating the LDMX logo with [Typst](https://typst.app/docs/). - Using the [Aileron](https://www.fontsquirrel.com/fonts/aileron?filter%5Bfamily_size%5D=12) font ## Set Up +Automations run with `just` command here use the [Just system](https://just.systems). Please consider installing Just first. #### Install `typst` There are a bunch of ways to do this, so I'm just going to refer you to From e26074adad479abc6dfc589f69815b9bac2ed93e Mon Sep 17 00:00:00 2001 From: Hannah Herde Date: Sun, 8 Feb 2026 11:34:36 +0100 Subject: [PATCH 2/6] Update README.md Add that we need wget too --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f4563c4..3727227 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ Source code for creating the LDMX logo with [Typst](https://typst.app/docs/). - Using the [Aileron](https://www.fontsquirrel.com/fonts/aileron?filter%5Bfamily_size%5D=12) font ## Set Up -Automations run with `just` command here use the [Just system](https://just.systems). Please consider installing Just first. +Automations run with `just` command here use the [Just system](https://just.systems). Please consider installing Just first. You will also need `wget` (see eg [this gist](https://gist.github.com/scisco/4c63a2659a6ea33eb987)). #### Install `typst` There are a bunch of ways to do this, so I'm just going to refer you to From 99595c027821723ed84fd125ae57303c54b85cdc Mon Sep 17 00:00:00 2001 From: Hannah Herde Date: Sun, 8 Feb 2026 12:55:12 +0100 Subject: [PATCH 3/6] Updated for LunDMX logo --- logo.typ | 31 +++++++++++++++++++++++-------- lundmx-bw.typ | 2 ++ test.typ | 2 +- 3 files changed, 26 insertions(+), 9 deletions(-) create mode 100644 lundmx-bw.typ diff --git a/logo.typ b/logo.typ index f061614..7dd7677 100644 --- a/logo.typ +++ b/logo.typ @@ -37,6 +37,7 @@ dm-text-color: auto, prefix: none, suffix: none, + un: none, // For adding the "un" in LunDMX page-args: auto ) = context { @@ -70,6 +71,7 @@ // point that electron should stop relative to target // ends in the upper left corner of the D as if the D is the calorimeters // depends on the font and size + //let beam-endpoint = (0.7cm, +0.35cm) let beam-endpoint = (0.7cm, +0.35cm) // minimum prefix width so there is a horizontal line incident @@ -98,18 +100,30 @@ layer: 1 ), node( - (0,0), - if prefix == none [] else if type(prefix) == str { - align(top + right, text(size: 15pt, weight: "light", prefix)) + (1.07,0.4), + if type( un ) == content or un == none { + // Assume user knows what they are doing + un } else { - prefix + text(size: 12pt, weight: "light", un ) }, - height: text-box-height, - width: if prefix == none { min-prefix-width } else { auto }, - name: + shape: rect, + name: , + layer: 1 ), node( - (rel: target-shift, to: ), + (0,0), + if prefix == none [] else if type(prefix) == str { + align(top + right, text(size: 15pt, weight: "light", prefix)) + } else { + prefix + }, + height: text-box-height, + width: if prefix == none { min-prefix-width } else { auto }, + name: + ), + node( + (rel: target-shift, to: ), name: ), node( @@ -133,6 +147,7 @@ shape: rect, ), node( + (4,0), if type(suffix) == content or suffix == none { // assume user knows what they are doing diff --git a/lundmx-bw.typ b/lundmx-bw.typ new file mode 100644 index 0000000..cd0c31c --- /dev/null +++ b/lundmx-bw.typ @@ -0,0 +1,2 @@ +#import "/logo.typ": logo +#logo(un: "un") diff --git a/test.typ b/test.typ index 2b4aaa1..cc56f71 100644 --- a/test.typ +++ b/test.typ @@ -1,5 +1,5 @@ #for (i, variation) in ( - "bw", "bw-square", "mini-bw", "blue-on-white", "light-blue", "ldmx-sw", + "lundmx-bw", "bw", "bw-square", "mini-bw", "blue-on-white", "light-blue", "ldmx-sw", "white-on-transparent", "umn", "ucsb", "stanford", "eg-all" ).enumerate() { if i > 0 { pagebreak() } From 2188aabbd0a2b6323a50f1a4e8737cd0fc6df62d Mon Sep 17 00:00:00 2001 From: Hannah Herde Date: Sun, 8 Feb 2026 12:58:11 +0100 Subject: [PATCH 4/6] Rename lundmx-bw.typ to variations/lundmx-bw.typ --- lundmx-bw.typ => variations/lundmx-bw.typ | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename lundmx-bw.typ => variations/lundmx-bw.typ (100%) diff --git a/lundmx-bw.typ b/variations/lundmx-bw.typ similarity index 100% rename from lundmx-bw.typ rename to variations/lundmx-bw.typ From 1dc38e85fb6c8f4f9841194441cfabc2ac21a12d Mon Sep 17 00:00:00 2001 From: tomeichlersmith Date: Mon, 23 Feb 2026 11:39:11 -0600 Subject: [PATCH 5/6] cleanup README updates --- README.md | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/README.md b/README.md index 5389e18..cdcf182 100644 --- a/README.md +++ b/README.md @@ -6,10 +6,9 @@ Source code for creating the LDMX logo with [Typst](https://typst.app/docs/). - Using the [Aileron](https://www.fontsquirrel.com/fonts/aileron?filter%5Bfamily_size%5D=12) font ## Set Up -Automations run with `just` command here use the [Just system](https://just.systems). Please consider installing Just first. You will also need `wget` (see eg [this gist](https://gist.github.com/scisco/4c63a2659a6ea33eb987)). #### Install `just` -`just` is used to share common recipes similar to how we use it for ldmx-sw development. +`just` is used to share common recipes similar to how we use it [for ldmx-sw development](https://ldmx-software.github.io/developing/getting-started.html#install-just). #### Install `typst` There are a bunch of ways to do this, so I'm just going to refer you to @@ -47,11 +46,3 @@ The output is written into a file of the same name but with a different extensio Specifically, I am using the Typst package [fletcher](https://typst.app/universe/package/fletcher/) to create this logo as a "diagram". flecter uses [CeTZ](https://typst.app/universe/package/cetz/) under-the-hood so that might be helpful for more fine-tuning as well. - -## To Do -- [x] mimic original logo -- [x] control over colors of the different pieces (text, particles, background) -- [x] add prefix and suffix text -- [x] square page and center logo (e.g. for profile pictures) -- [x] different color DM from L and X (`dm-text-color` argument) -- [x] end electron on D (like in original?) From c3af60fbdc1fd47eb56cb28e518f1543c3b8b7e4 Mon Sep 17 00:00:00 2001 From: tomeichlersmith Date: Mon, 23 Feb 2026 11:41:46 -0600 Subject: [PATCH 6/6] fixup source formatting --- logo.typ | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/logo.typ b/logo.typ index 7dd7677..958657d 100644 --- a/logo.typ +++ b/logo.typ @@ -16,6 +16,7 @@ /// dm-text-color: type color, default to text-color, color of the letters D and M in LDMX in logo /// prefix: extra text to include in front of LDMX /// suffix: extra text to be included after LDMX +/// un: for adding "un" in LunDMX above horizontal bar of the L /// page-args: how to construct the page around the logo, default is no page /// none or auto makes the page the same size and shape as the logo /// "square" makes the page a square with the side length determined by the width of the logo @@ -37,7 +38,7 @@ dm-text-color: auto, prefix: none, suffix: none, - un: none, // For adding the "un" in LunDMX + un: none, page-args: auto ) = context { @@ -71,7 +72,6 @@ // point that electron should stop relative to target // ends in the upper left corner of the D as if the D is the calorimeters // depends on the font and size - //let beam-endpoint = (0.7cm, +0.35cm) let beam-endpoint = (0.7cm, +0.35cm) // minimum prefix width so there is a horizontal line incident @@ -114,16 +114,16 @@ node( (0,0), if prefix == none [] else if type(prefix) == str { - align(top + right, text(size: 15pt, weight: "light", prefix)) - } else { - prefix - }, - height: text-box-height, - width: if prefix == none { min-prefix-width } else { auto }, - name: - ), - node( - (rel: target-shift, to: ), + align(top + right, text(size: 15pt, weight: "light", prefix)) + } else { + prefix + }, + height: text-box-height, + width: if prefix == none { min-prefix-width } else { auto }, + name: + ), + node( + (rel: target-shift, to: ), name: ), node( @@ -147,7 +147,6 @@ shape: rect, ), node( - (4,0), if type(suffix) == content or suffix == none { // assume user knows what they are doing