silently shipped support for arrow keys selecting nearest card. This is one of those cases where the mathematically perfect solution exists, but the dumb as a doorknob one is a lot more practical to implement with my math knowledge.
It mostly works, but there are some cases where the select does the right thing (selects the lowest distance card to the left/right/etc. of itself), but seems stupid to a human. Adding angle/degrees into my formula, in addition to distance, might get me there for most/enough scenarios.
Also I've got a card DELETE and CMD-Z undo delete feature working, but I need to live with it a little to see if my implementation of delete key feels natural.
Basically, I've got the 2nd (or 3) keyboard shortcut releases very close
Released the hardest part of keyboard shortcuts: adding child and parent cards. Now I’m working on using arrow keys to select the nearest card?
But how to determine nearest? Well essentially it’s reducing all the cards down to a single x,y and then finding (and comparing) the distance between two points.
To do this we first need to dust off the old Pythagorean theorum that I’ve long since forgotten.
Turned into js, the formula for distance between two points is
Math.sqrt((xDelta*2) + (yDelta*2))
Now that I’m mostly back at full health I got some p good progress on keyboard shortcuts:
- Better handled the positioning of where parent and child cards so that they don’t overlap
- made adding more cards through the keyboard feel more fluid
There’s still a fair bit of janky behaviors to iron out. At this point the core is there, I just need to try everything, fix what feels gross, and do a lot of cleanup refactoring.
There’s lots of discrete keyboard features in this release, like copy/paste, which might make sense to spread out to multiple releases so I can do incremental marketing and get feedback earlier on smaller parts.
I’ve been slowly working on a docs site for Kinopio but even the most streamlined system is a pain to update and set nested docs and api tables vs notion, so I might just use that instead.
🎹 Pressing 'enter' now adds new cards, and 'shift-enter' adds child cards. Express your ideas and brainstorm as fast as you can type.
Now you can Explore and Favorite spaces and people. Add your own spaces for the community to explore by checking the "Show in Explore" button.