Skip to content

Instantly share code, notes, and snippets.

@Renerick
Created December 5, 2023 14:45
Show Gist options
  • Select an option

  • Save Renerick/23ee1ff5a96632c5bb16496dc96c056d to your computer and use it in GitHub Desktop.

Select an option

Save Renerick/23ee1ff5a96632c5bb16496dc96c056d to your computer and use it in GitHub Desktop.
<script src="https://html-lang.org/html.js"></script>
<script>
html.meta.commands["pre"] = function(elt, env) {
env.stack.push(elt.innerHTML);
}
window.newline = "\n";
</script>
<main>
<dfn id="splitLines">
<!-- vars -->
<var title="input"></var>
<ol></ol>
<var title="result"></var>
<data value="0"></data>
<var title="start"></var>
<data value="0"></data>
<var title="end"></var>
<!-- main loop -->
<!-- if input[end] == newline -->
<cite id="scan">input</cite>
<cite>end</cite>
<address></address>
<cite>newline</cite>
<em></em>
<dt></dt>
<!-- then -->
<i>
<cite>input</cite>
<a href="javascript:substring()" target="_top">
<cite>start</cite>
<cite>end</cite>
</a>
<var title="part"></var>
<cite>result</cite>
<a href="javascript:push()" target="_top">
<cite>part</cite>
</a>
<cite>end</cite>
<data value="1"></data>
<dd></dd>
<var title="end"></var>
<cite>end</cite>
<var title="start"></var>
</i>
<!-- else -->
<cite>end</cite>
<data value="1"></data>
<dd></dd>
<var title="end"></var>
<!-- if end < input.length -->
<cite>end</cite>
<cite>input</cite>
<s>length</s>
<address></address>
<small></small>
<!-- then -->
<i>
<a href="#scan"></a>
</i>
<cite>result</cite>
</dfn>
<dfn id="isdigit">
<var title="char"></var>
<cite>false</cite>
<s>0</s>
<cite>char</cite>
<em></em>
<bdo></bdo>
<s>1</s>
<cite>char</cite>
<em></em>
<bdo></bdo>
<s>2</s>
<cite>char</cite>
<em></em>
<bdo></bdo>
<s>3</s>
<cite>char</cite>
<em></em>
<bdo></bdo>
<s>4</s>
<cite>char</cite>
<em></em>
<bdo></bdo>
<s>5</s>
<cite>char</cite>
<em></em>
<bdo></bdo>
<s>6</s>
<cite>char</cite>
<em></em>
<bdo></bdo>
<s>7</s>
<cite>char</cite>
<em></em>
<bdo></bdo>
<s>8</s>
<cite>char</cite>
<em></em>
<bdo></bdo>
<s>9</s>
<cite>char</cite>
<em></em>
<bdo></bdo>
</dfn>
<dfn id="findFirstDigit">
<var title="input"></var>
<data value="0"></data>
<var title="index"></var>
<a id="scanForFirstDigit" href="javascript:isdigit()">
<cite>input</cite>
<cite>index</cite>
<address></address>
</a>
<dt></dt>
<i>
<cite>input</cite>
<cite>index</cite>
<address></address>
<rt>
</i>
<bdi></bdi>
<i>
<cite>index</cite>
<data value="1"></data>
<dd></dd>
<var title="index"></var>
<a href="#scanForFirstDigit"></a>
</i>
</dfn>
<dfn id="findLastDigit">
<var title="input"></var>
<cite>input</cite>
<s>length</s>
<address></address>
<data value="-1"></data>
<dd></dd>
<var title="index"></var>
<a id="findLastDigit_scan" href="javascript:isdigit()">
<cite>input</cite>
<cite>index</cite>
<address></address>
</a>
<dt></dt>
<i>
<cite>input</cite>
<cite>index</cite>
<address></address>
<rt>
</i>
<bdi></bdi>
<i>
<cite>index</cite>
<data value="-1"></data>
<dd></dd>
<var title="index"></var>
<a href="#findLastDigit_scan"></a>
</i>
</dfn>
<a href="javascript:splitLines()">
<pre>
1abc2
pqr3stu8vwx
a1b2c3d4e5f
treb7uchet
</pre>
</a>
<var title="lines"></var>
<data value="0"></data> <var title="index"></var>
<data value="0"></data> <var title="sum"></var>
<a id="main_scan" href="javascript:findFirstDigit()">
<cite>lines</cite>
<cite>index</cite>
<address></address>
</a>
<a href="javascript:findLastDigit()">
<cite>lines</cite>
<cite>index</cite>
<address></address>
</a>
<dd></dd>
<var title="lineNumber"></var>
<a href="javascript:parseInt()">
<cite>lineNumber</cite>
</a>
<cite>sum</cite>
<dd></dd>
<var title="sum"></var>
<cite>index</cite>
<data value="1"></data>
<dd></dd>
<var title="index"></var>
<cite>index</cite>
<cite>lines</cite>
<s>length</s>
<address></address>
<small></small>
<i>
<a href="#main_scan"></a>
</i>
<cite>sum</cite>
<output></output>
</main>
@1cg
Copy link

1cg commented Dec 5, 2023

LEGENDARY

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment