about summary refs log tree commit diff stats
path: root/edit.mu
Commit message (Collapse)AuthorAgeFilesLines
* 1764 - editor now updates all sandboxesKartik K. Agaram2015-07-111-15/+46
| | | | Finally, albeit too late for my demo.
* 1761 - multiple sandboxes seems to be workingKartik K. Agaram2015-07-111-1/+0
| | | | No idea why this was wrong, but whatever..
* 1760 - failing test for multiple sandboxesKartik K. Agaram2015-07-111-53/+76
| | | | | | | | | We're starting to hit the limits of my 8GB RAM, to the point where I'm starting to economize on the size of the screen. Time to start thinking about reclaiming memory. Anyways, test now fails in the right place. I'm failing to propertly render intermediate lines between sandboxes.
* 1759Kartik K. Agaram2015-07-111-2/+2
|
* 1758 - now clear sandbox editor on F10Kartik K. Agaram2015-07-111-13/+47
| | | | We're ready to start displaying multiple sandboxes.
* 1757Kartik K. Agaram2015-07-111-7/+12
|
* 1756Kartik K. Agaram2015-07-111-7/+19
|
* 1755Kartik K. Agaram2015-07-101-13/+13
|
* 1754Kartik K. Agaram2015-07-101-15/+16
|
* 1753 - all tests passing againKartik K. Agaram2015-07-101-41/+47
| | | | Cleanup below editors is now all done.
* 1752 - cursor positioning fixedKartik K. Agaram2015-07-101-6/+8
|
* 1751 - sluggishness fixedKartik K. Agaram2015-07-101-36/+21
| | | | | | | Ah, I was indeed double-rendering, but somehow it was still hard to see the problem past that preliminary diagnosis. Still two failing tests to fix.
* 1748Kartik K. Agaram2015-07-101-3/+3
|
* 1747Kartik K. Agaram2015-07-101-4/+3
|
* 1745 - hoist warning/response strings out of editor-dataKartik K. Agaram2015-07-101-276/+308
| | | | | | | | | | Still ugly as hell. Some tests failing, but they're most likely wrong. We need to test cursor positioning at the level of the environment and take it away from the responsibilities of individual editors. Also bring back the line at the bottom of each editor. The non-test run ('main' in edit.mu) is completely borked. Sluggish as hell, and I can't seem to switch focus to the sandbox editor.
* 1744 - support just two editors rather than a listKartik K. Agaram2015-07-091-244/+147
| | | | | Current model: you click on something to put it on the editor at the top of the column. Worth a shot.
* 1743Kartik K. Agaram2015-07-091-177/+185
|
* 1742Kartik K. Agaram2015-07-091-23/+19
|
* 1741 - start cleaning up editor-dataKartik K. Agaram2015-07-091-19/+14
|
* 1740 - correct redraw after reducing editor sizeKartik K. Agaram2015-07-091-20/+17
| | | | | I probably need another test like editor-clears-last-line-on-backspace, but we aren't testing the boundary, and we're pushing on anyway.
* 1739Kartik K. Agaram2015-07-091-1/+0
| | | | Leaves a line blank after printing result/warnings, for some reason.
* 1738Kartik K. Agaram2015-07-091-9/+1
|
* 1737 - allow editors to 'grow'Kartik K. Agaram2015-07-091-16/+24
|
* 1735Kartik K. Agaram2015-07-081-0/+1
| | | | | | Hmm, this is undesirable, that recipes don't need to explicitly reply. Need to fix. Also need to have run-interactive create scenarios at some point.
* 1734Kartik K. Agaram2015-07-081-42/+20
| | | | Pushing back some of the weight of repetitive boilerplate.
* 1733 - load all recipes before running sandboxesKartik K. Agaram2015-07-081-37/+152
| | | | | This is starting to look good! I need to add some tests for render-string, but we'll see.
* 1731 - ah, now fully responsiveKartik K. Agaram2015-07-081-1/+5
| | | | The trick is to check for more events and not bother rendering if so.
* 1730Kartik K. Agaram2015-07-081-5/+5
| | | | Switch to F10 because F9 is in use under my setup.
* 1729Kartik K. Agaram2015-07-081-25/+0
|
* 1728Kartik K. Agaram2015-07-081-1/+7
|
* 1722 - drop support for querying locationsKartik K. Agaram2015-07-081-19/+17
| | | | | | | | | | | | Also added another failing test showing what behavior we want in the programming environment. But there's no way to make use of querying locations, since we're not planning any interaction with individual sandboxes at the moment. Instead of interacting with one sandbox at a time, which is the current approach, we want to create dashboards out of multiple sandboxes at once. Start with them non-interactive, that'll demonstrate 80% of the new benefits. We'll add interactivity down the road.
* 1721 - hide warnings inside interactive routinesKartik K. Agaram2015-07-081-0/+54
| | | | | | | | | | We will need many other forms of isolation for these. For starters we're going to have to replace most asserts with warnings that can be traced so that the environment doesn't crash because of illegal code typed into it. New test is still failing. Just getting it to fail right was hard enough.
* 1720 - start adding repl supportKartik K. Agaram2015-07-071-1/+102
|
* 1719 - start using configurable event-handlerKartik K. Agaram2015-07-071-5/+7
|
* 1715 - slightly more responsiveKartik K. Agaram2015-07-061-16/+10
| | | | | | | | | Don't render all the editors on every single keystroke, render just the one that was modified. This will also be useful for our next step: heterogeneous editor widgets responsible for their areas of screen and doing their own rendering and responding to events.
* 1714Kartik K. Agaram2015-07-051-17/+24
|
* 1711 - start adding methods to editor-data objectsKartik K. Agaram2015-07-051-0/+4
| | | | The menu bar needs separate recipes to render and respond to events.
* 1710 - add notion of a menu barKartik K. Agaram2015-07-051-1/+36
| | | | | Of course, editors might begin below other editors; this is a stopgap solution. Yagni, yagni, yagni.
* 1709Kartik K. Agaram2015-07-041-2/+6
| | | | | More sketching out of a bare-bones scenario. What should happen when we press F9? Print a result somewhere?
* 1708Kartik K. Agaram2015-07-041-14/+19
| | | | | | Simpler gradient computation. But in the end it looks better when the gradient is so subtle as to be irrelevant. Might as well eliminate the gradient altogether.
* 1707 - experimenting with gradient backgroundKartik K. Agaram2015-07-041-1/+35
| | | | But integer division is a fail, as expected.
* 1705 - change background colorKartik K. Agaram2015-07-041-1/+1
|
* 1704 - update layout for a menu bar at the topKartik K. Agaram2015-07-041-9/+10
|
* 1697 - edit: starting to run codeKartik K. Agaram2015-07-031-0/+44
|
* 1696 - more cursor-wrap purgingKartik K. Agaram2015-07-021-31/+23
|
* 1695 - better way to handle wrapKartik K. Agaram2015-07-021-235/+29
| | | | | | | Key idea: wrap whenever you type at the right margin, don't wait for line to grow past it. That way you always leave room to acquire the end of the line, and you never have to worry about wrapping just the cursor but not the line. Simplifies a lot of logic.
* 1694Kartik K. Agaram2015-07-011-3/+160
| | | | | | | | | | | | | | | | | | I started fixing scenario editor-inserts-character-at-wrapped-cursor, but as I work further I notice there's an irreconcilable ambiguity in the approach of letting the cursor wrap in a non-wrapped line: if a cursor is at column 0 and the previous line occupies the entire width, should the next character you insert go before (assuming a wrapped cursor) or after the newline (assuming you're at the start of the next line)? No way to distinguish the two cases. One approach would be to delete the newline and have the cursor replace it with whatever you type. Then you have to hit a newline again to separate. But the simpler way is to simply wrap the moment the line grows to width-1, always leaving room for the cursor. Yeah, let's switch to that approach.
* 1693Kartik K. Agaram2015-07-011-3/+4
| | | | Move experimenting with wrapped lines to the right column.
* 1692 - stop mindlessly starting cursor at column 0Kartik K. Agaram2015-07-011-6/+71
|
* 1691 - planned layout for right columnKartik K. Agaram2015-07-011-5/+27
| | | | | | | | | | | We'll start out with just boxes on the right. Unlike the left with its dotted boundaries, the boundaries on the right will be solid lines, to indicate that they are isolated from each other even as they take from all the recipes on the left. As students grow more advanced we'll provide some way to 'pop up' the pre- and post-condition fields inside each sandbox. Those will also have dotted boundaries with the rest of their sandbox.