diff --git a/#1.6.scm# b/#1.6.scm# new file mode 100644 index 0000000..0184403 --- /dev/null +++ b/#1.6.scm# @@ -0,0 +1,5 @@ +(define (new-if predicate then-clause else-clause) + (cond (predicate then-clause) + (else else-clause))) + +(new-if (= 1 1) 0 5) \ No newline at end of file diff --git a/html/common.tsx b/html/common.tsx index 34e4501..0e15f47 100644 --- a/html/common.tsx +++ b/html/common.tsx @@ -267,3 +267,7 @@ export const css = { min_content: "min-content", max_content: "max-content", } as const; + +export const Filler = ({ height }: { height: string }) => ( +
+); diff --git a/html/crumble.tsx b/html/crumble.tsx index 82a70be..8cea1e8 100644 --- a/html/crumble.tsx +++ b/html/crumble.tsx @@ -79,10 +79,8 @@ export const Fall = ({ const msg = ` i haven't seen this on other blogs, but some of the posts on mine seem to be kinda unstable? if that makes sense? -like, sometimes i see them shake, and i swear i saw some letters fall, not to mention the terrible line-wrapping - +like, sometimes i see them shake, and i swear i saw some letters fall, not to mention the terrible line-wrapping. i know i'm a (convicted?) css criminal, so i'm thinking that this might just be the w3 gods punishing me. - so. yeah. if you see anything like that on any of my posts, let me know `.trim(); diff --git a/html/meltings.tsx b/html/meltings.tsx new file mode 100644 index 0000000..aa1aff7 --- /dev/null +++ b/html/meltings.tsx @@ -0,0 +1,2 @@ +// like crumbling but more complex and maybe cooler (ha) looking +// nah. too derivative diff --git a/html/write.tsx b/html/write.tsx index 9930bd3..463c069 100644 --- a/html/write.tsx +++ b/html/write.tsx @@ -1,42 +1,57 @@ -import { toChildArray, ComponentChildren } from "preact"; -import { Main, render_and_copy } from "./common.tsx"; +// new idea: beeg tree -// idea is to have buttons you can click to type out words, should be fun -// (and maybe possible) -// new idea: type out eggbug or you LOSE -const Key = ({ letter }: { letter: string }) => ( -
- {letter} -
- {letter} -
+import { render } from "preact-render-to-string"; +import { Filler, render_and_copy } from "./common.tsx"; + +// there's more size savings to be had but jsx is bad for that +const Key = ({ + code, + content, + remaining_depth, +}: { + code: string; + content: string; + remaining_depth: number; +}) => ( +
+ {code} +
); -const sentence = "cwm fjord bank glyphs vext quiz"; +// toki pono or whatever that is +// oh my gosh this is such a stupid alphabet +const alphabet = "acgt"; +// i went to immense pains to make it so that you have 6 characters for catcat +// nvm this isn't working -const KeyRow = ({ keys }: { keys: string }) => ( -
- {...keys.split("").map(letter => )} -
-); - -const Keyboard = ({ children }: { children: ComponentChildren }) => ( -
{...toChildArray(children)}
-); - -const Out = () =>
; +const Screen = ({ + content = "", + remaining_depth, +}: { + content?: string; + remaining_depth: number; +}) => + remaining_depth == 0 ? ( +
{content}
+ ) : ( +
+ {content == "" + ? "come on do it write some dna" + : content + ".".repeat(remaining_depth)} + {alphabet.split("").map(c => ( + + ))} +
+ ); render_and_copy( -
- - - - - - -
+ <> + + + );