Monday, 18 November 2024

letz Congeo treadding

We are presenting a tree of things on the screen.

As many have done. Usually they stick to a two level tree, so you get a table! But sometimes you are representing a computation that seems to have more space in it than space typically has.

The phenomenon is printing out, and flooding the room with its printout.

The kommit part of this tree of things...


Kommit is a collection of states (of treeh, aka "the tree" in git) across time. The less significant shall squash together. Basically a similarity grouper, only thinking about grouping times for now.

Con.svelte represents each of the things in the tree, recursively. Each white C in the above figure is about where one starts.

It is represented by this set of things in a row:


Containers of stuff on the screen.

Giverto inflates fully into the space, to feel how much of it there is.

Takerto, the inner, is supposed to cling to the contents.

Then we can find wasted space in a nested-table display of the tree.

But it is, invisibly unless you hover over the above dom node, like this:


Not sure why html does this. Fix is:

<takerto
style="display:block;"

So that we can find this:

let see_what = () => {
let it = o_(C).map(n => {
return map(
(el) => {
return {el,x:el.offsetWidth,y:el.offsetHeight}
},
[n.y.el_giverto,n.y.el_takerto]
)
})
console.log("En kommit", it)
}

Here:


Showing the first two don't need as much space as the last one, but not as clearly as:


Here's a feng shui decider function:


import { hak,ex,dex,map,dec,haks,joint } from "$lib/Y/Pic"
import {o_,o_up} from '$lib/St.svelte'
function uninlineablelabelable(C) {
let el_size = (el) => el.offsetWidth * el.offsetHeight

$fail = 0
$it = o_(C).map(n => {
if (!(n.y.el_takerto && n.y.el_giverto)) return fail = 1
let use = el_size(n.y.el_takerto) / el_size(n.y.el_giverto)
return {el:n.y.el_giverto, use}
})
fail and return null
# it is Con/(Cont,Kom?,Conz)
# < all the possibilities
# eg Kom probably wants to overlay on Conz/Con*/Kom/...
let Conz = it.pop()
$doit = Conz.use > 0.6 && !it.some(c => c.use > 0.5) && "UNIN"
ex(Conz.el.style,
doit ? {display:'block', 'margin-left':'1em'}
: {display:'table-cell','margin-left':'none'}
)
it.push(Conz)
$it_uses = it.map(c=>dec(c.use,2))
console.log("Ennn kommit", it_uses)
return doit ? 1 : 0
}
export {uninlineablelabelable}

Which does inadvisable non-Sveltey style adjustments that omits the margin-left:


When we aren't just seeing:


Because indeed those properties stop existing... 

I believe the C** is being selectively replanted all the time...

It is generated by Co.ts, displayed and called back into in a Con.svelte** system, hosted by TestBetimes.

Anyway, I eventually found the ResizeObserver browser API, and applied to all things:


This is a pretty average result.
The kommit and times don't get next to each other...
With cytoscaping they would, since one is downstream of the other.

I write myself up:

mo Aug 5

  hmming about GiveTake.

 we

   might be no problem that transition animations dont work anymore

    because of all the sleeving of snippets that goes on

   since we want to scale the GiveTake gently

    and starting it from 0 etc would give the same effect

  so

   make that n.y.el_giverto etc persist...

mo Aug 26

 we

  use browser API ResizeObserver for GiveTake

 th

   is good, but GiveTake function is disappointing

   perhaps it wants using laterer?

    to detect the box model tearing apart, wasting space

    when we basically want to \n\t indent, rather than \t along the row

 fr

  cytoscaping everything seems like the only way

  got flowers again

mo Sep 2

  we need to use cytoscape to io layouts together with a few drags

   codemirror chunks position absolutely...

 tu

  we need codemirror to do io expressing

   rewrite iooia to make A as X was?

   or just a &Sarg kinda thing

   a way to load all dependencies as .svelte.ts

    so your text can travel to a running instance...

  also,

   storage needs sorting out...

   the history graph needs climbables, resyncs

    dragging from one branch to another?

 we

  pull out

 mo

  somehow brack again, with cytoscape?

  or just the Con** scape? since it has lateral .y.*

mo Sep 16

  nada

 th

  ...


Hope you LEARNT SOMETHING!?





No comments:

Post a Comment