benbjohnson / benbjohnson/ego

ego confused by 'bulletproof button'

Open
#36 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
586
Forks
40
PR merge metrics
No merged PRs in 30d

Description

It's a common pattern in email templates to use 'bulletproof buttons'
https://www.litmus.com/blog/a-guide-to-bulletproof-buttons-in-email-design/

but this confuses ego, e.g. this snippet of HTML in an ego template
```html





Get my gift




```
causes ego to emit

```go
//line email_gift_fulfilled_html.ego:33
_, _ = io.WriteString(w, html.EscapeString(fmt.Sprint(lib.FormatMoney(enrollment.Plan.GiftValue, 0, 2, false, true))))
//line email_gift_fulfilled_html.ego:33
_, _ = io.WriteString(w, " gift. It's now ready and \n you can pick it up here:\n

\n \n \n \n
\n

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the failure with the bulletproof-button template shown in the issue, then inspect the generated Go around the v.roundrect and v.fill blocks. Trace how the template parser handles namespaced HTML or VML tags; done means the template compiles without undefined v errors and preserves the conditional button markup.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.