From 723f0863d62a2ee9fcf6da65aef3b0b4d679eedd Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Thu, 5 Nov 2020 20:24:28 -0500 Subject: Emit HTML escapes in the explainer --- src/e.bqn | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'src/e.bqn') diff --git a/src/e.bqn b/src/e.bqn index 62eed453..3126e6ae 100644 --- a/src/e.bqn +++ b/src/e.bqn @@ -34,6 +34,8 @@ hlcl ∾↩ ⟨ GetHlcl←hlch{(+`≠¨𝕗)⍋(∾𝕗)⊸⊐} hlTag ← {""}¨ hlcl +escchars ← """&<>" ⋄ escapes ← ("&"∾∾⟜";")¨"quot"‿"amp"‿"lt"‿"gt" + Explain ← { b‿const‿blk‿i‿tok ← 𝕨 ba‿bc‿bo‿bp ← '0'-˜⟨ # For each instruction, number of: @@ -68,9 +70,13 @@ Explain ← { t ← c∾o ilf ← /𝕩=@+10 𝕩 ↩ ((ilf∊s)⊏" ⋄")⌾(ilf⊸⊏)𝕩 - src ← ((↕≠𝕩)∾(≠¨t)/e∾s-1) ⍋⊸⊏ 𝕩∾∾t - tt← <˘⍉> ⟨o, e(𝕩⊏˜⊢+↕∘¬)¨s, c⟩ - ti← s⊐k/mi + u←/¬em←escchars≠⊸>ei←escchars⊐𝕩 ⋄ t∾˜↩escapes⊏˜em/ei + ord← ⍋u∾(≠¨t)/(/em)∾e∾s-1 + src← ord⊏(u⊏𝕩)∾∾t + el ← ei⊏(≠¨escapes)∾1 + xe ← (ord⊏(+´el)>↕∘≠)⊸/src + tt ← <˘⍉> ⟨o, xe⊔˜el/1-˜s(⊣×>)○(+`(≠𝕩)↑/⁼)1+e, c⟩ + ti ← s⊐k/mi ⟨src, ti⊏tt, ti⊏(s+e)÷2⟩ } 𝕩 -- cgit v1.2.3