2022-11-11

Published: Dec 05, 2022Last modified: Apr 24, 2023
Word count: 664

what would the breath of the wild slate mechanics be like in 2d?

aha - current focus/task + stream context widget + automagic pomodoros

probably all the same feature

turn it on, it guides you through getting everything started

then has support hydra/keybindings in clawe-mx

cool little function

A nice swap-file! function shared in clojurians:

(defn swap-file!
  "Swaps the contents of file to be:
  (apply f current-contents-of-file args). f should be free of side effects.
  Returns the value that was swapped in."
  [file f & xs]
  (let [old-val (slurp file)
        new-val (apply f old-val xs)]
    (spit file new-val)
    new-val))

Like swap! for an atom, but for a file's contents.

godot youtube channels

Gotta start collecting these sometime!

girouette - css gen in clojure

I have more to explore here, but it seems to produce garden styles from tailwind classes?

> TODO watch the vid in the readme, see what this is for

clojure helper library-libraries - mate, wing, etc

Clojure and lisps in general make it incredibly easy to write functions - small, reusable patterns that you'll want everywhere.

The standard library provides plenty to work with, but sometimes you end up needing the same pattern over and over again.

These small, repeated helpers tend to get shoved into util namespaces in large projects - but then, what if you want them across projects?

Enter the standard-lib wishlist lib. All the helpers you wish were in the standard lib. Maybe one day they will be!

Two such libraries in this vein:

clojure set intersection

(#{"goals"} "goals") => "goals"
(#{"goals"} #{"goals"}) => nil
(#{#{"goals"}} #{"goals"}) => #{"goals"}
(seq (set/intersection #{"goals"} #{"goals"})) => ("goals")

tailwind h-screen vs h-full? answer: min-h-screen

On my 11/11/22 stream there was a css height background moment.

h-screen filled the container just fine, until the content went beyond the height - then, scrolling revealed the content below the fold had no background!

Switching to h-full fixes the scrolling, but when the content does not reach the fold, there is again a background gap.

Turns out, min-h-screen is what we want. I found it suggested on StackOverflow here: https://stackoverflow.com/a/68637532/860787

min-h-screen fills the full window height _AND_ maintains the background on content below the fold when scrolling.

Very happy to avoid dealing with the root <body> elem in this case! That would have gotten quite messy, bubbling up background colors to the root elem. (\*shudder\*)

For reference:

.min-h-screen {
  min-height: 100vh;
}
.h-screen {
  height: 100vh;
}
.h-full {
  height: 100%;
}

godot helper for looping children positions

today's stream goals

> DONE clawe 'focus widget'

Initial goal: a floating, always-on-top dashboard component

that shows the "goal" or "goals" tagged todos in today's daily

and highlights based on other tags (current, etc)

We may give up on this - really i just want to spend a bit of time diving so i can get some context on it.

>> DONE clawe focus 'view'

modeled after the topbar itself

>> DONE 'bb focus'

>> DONE clawe client def

>> DONE update toggle mod - y for this focus-widget

>> DONE handlers fetch the daily todos

>> DONE render the todos

mvp-only

:org/name

> DONE leaf runner room api overview

The overview and note taking is perhaps more important

> runner room api refactor

>> TODO support enter and exit room boxes

>> TODO reimpl some of the rooms to use enter/exit boxes