From 0b62ea83df79ffb761cd319419519c7749febb94 Mon Sep 17 00:00:00 2001 From: Alexander Wang Date: Thu, 18 Jul 2024 13:11:43 -0600 Subject: [PATCH] fix format --- d2format/format.go | 3 +++ d2format/format_test.go | 24 ++++++++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/d2format/format.go b/d2format/format.go index dc7430ec2..dd1a42996 100644 --- a/d2format/format.go +++ b/d2format/format.go @@ -358,6 +358,9 @@ func (p *printer) _map(m *d2ast.Map) { func (p *printer) mapKey(mk *d2ast.Key) { if mk.Ampersand { p.sb.WriteByte('&') + } else if mk.NotAmpersand { + p.sb.WriteByte('!') + p.sb.WriteByte('&') } if mk.Key != nil { p.key(mk.Key) diff --git a/d2format/format_test.go b/d2format/format_test.go index c6dd79296..369361f2c 100644 --- a/d2format/format_test.go +++ b/d2format/format_test.go @@ -829,6 +829,30 @@ mybox: { mybox: { label: prefix${test}suffix } +`, + }, + { + name: "not-filter", + in: `jacob: { + shape: circle +} +jeremy: { + shape: rectangle +} +*: { + !&shape: rectangle + label: I'm not a rectangle +}`, + exp: `jacob: { + shape: circle +} +jeremy: { + shape: rectangle +} +*: { + !&shape: rectangle + label: I'm not a rectangle +} `, }, }