From 67db19a05335c7fbea3ad6737303c8848fd39e74 Mon Sep 17 00:00:00 2001 From: "Kartik K. Agaram" Date: Tue, 15 Dec 2015 14:32:47 -0800 Subject: 2545 update html --- html/edit/001-editor.mu.html | 2 +- html/edit/002-typing.mu.html | 8 ++-- html/edit/003-shortcuts.mu.html | 14 +++--- html/edit/004-programming-environment.mu.html | 10 ++--- html/edit/005-sandbox.mu.html | 6 ++- html/edit/006-sandbox-edit.mu.html | 2 +- html/edit/007-sandbox-delete.mu.html | 2 +- html/edit/010-warnings.mu.html | 62 +++++++++++++++++++++++++++ 8 files changed, 87 insertions(+), 19 deletions(-) (limited to 'html/edit') diff --git a/html/edit/001-editor.mu.html b/html/edit/001-editor.mu.html index 59982193..11d1cb9d 100644 --- a/html/edit/001-editor.mu.html +++ b/html/edit/001-editor.mu.html @@ -287,7 +287,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } reply screen/same-as-ingredient:0 ] -recipe clear-rest-of-screen screen:address:screen, row:number, left:number, right:number [ +recipe clear-rest-of-screen screen:address:screen, row:number, left:number, right:number -> screen:address:screen [ local-scope load-ingredients row <- add row, 1 diff --git a/html/edit/002-typing.mu.html b/html/edit/002-typing.mu.html index efed71b6..2585450c 100644 --- a/html/edit/002-typing.mu.html +++ b/html/edit/002-typing.mu.html @@ -46,7 +46,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } close-console ] -recipe editor-event-loop screen:address:screen, console:address:console, editor:address:editor-data [ +recipe editor-event-loop screen:address:screen, console:address:console, editor:address:editor-data -> screen:address:screen, console:address:console, editor:address:editor-data [ local-scope load-ingredients { @@ -80,7 +80,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } ] # process click, return if it was on current editor -recipe move-cursor-in-editor screen:address:screen, editor:address:editor-data, t:touch-event -> in-focus?:boolean [ +recipe move-cursor-in-editor screen:address:screen, editor:address:editor-data, t:touch-event -> in-focus?:boolean, editor:address:editor-data [ local-scope load-ingredients reply-unless editor, 0/false @@ -294,7 +294,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } ] # helper for tests -recipe editor-render screen:address:screen, editor:address:editor-data -> screen:address:screen [ +recipe editor-render screen:address:screen, editor:address:editor-data -> screen:address:screen, editor:address:editor-data [ local-scope load-ingredients left:number <- get *editor, left:offset @@ -1047,7 +1047,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } ## helpers -recipe draw-horizontal screen:address:screen, row:number, x:number, right:number [ +recipe draw-horizontal screen:address:screen, row:number, x:number, right:number -> screen:address:screen [ local-scope load-ingredients style:character, style-found?:boolean <- next-ingredient diff --git a/html/edit/003-shortcuts.mu.html b/html/edit/003-shortcuts.mu.html index 5518a680..0f7a60da 100644 --- a/html/edit/003-shortcuts.mu.html +++ b/html/edit/003-shortcuts.mu.html @@ -118,6 +118,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } local-scope load-ingredients before-cursor:address:address:duplex-list:character <- get-address *editor, before-cursor:offset + data:address:duplex-list:character <- get *editor, data:offset # if at start of text (before-cursor at ยง sentinel), return prev:address:duplex-list:character <- prev *before-cursor go-render?, backspaced-cell <- copy 0/no-more-render, 0/nothing-deleted @@ -126,7 +127,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } original-row:number <- get *editor, cursor-row:offset editor, scroll?:boolean <- move-cursor-coordinates-left editor backspaced-cell:address:duplex-list:character <- copy *before-cursor - remove *before-cursor # will also neatly trim next/prev pointers in backspaced-cell/*before-cursor + data <- remove *before-cursor, data # will also neatly trim next/prev pointers in backspaced-cell/*before-cursor *before-cursor <- copy prev go-render? <- copy 1/true reply-if scroll? @@ -367,11 +368,12 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } local-scope load-ingredients before-cursor:address:address:duplex-list:character <- get-address *editor, before-cursor:offset + data:address:duplex-list:character <- get *editor, data:offset deleted-cell:address:duplex-list:character <- next *before-cursor go-render? <- copy 0/false reply-unless deleted-cell currc:character <- get *deleted-cell, value:offset - remove deleted-cell + data <- remove deleted-cell, data deleted-newline?:boolean <- equal currc, 10/newline go-render? <- copy 1/true reply-if deleted-newline? @@ -1278,7 +1280,7 @@ def] } ] -recipe move-to-start-of-line editor:address:editor-data [ +recipe move-to-start-of-line editor:address:editor-data -> editor:address:editor-data [ local-scope load-ingredients # update cursor column @@ -1449,7 +1451,7 @@ def] } ] -recipe move-to-end-of-line editor:address:editor-data [ +recipe move-to-end-of-line editor:address:editor-data -> editor:address:editor-data [ local-scope load-ingredients before-cursor:address:address:duplex-list:character <- get-address *editor, before-cursor:offset @@ -1579,7 +1581,7 @@ def] } ] -recipe delete-to-start-of-line editor:address:editor-data -> result:address:duplex-list:character [ +recipe delete-to-start-of-line editor:address:editor-data -> result:address:duplex-list:character, editor:address:editor-data [ local-scope load-ingredients # compute range to delete @@ -1713,7 +1715,7 @@ def] } ] -recipe delete-to-end-of-line editor:address:editor-data -> result:address:duplex-list:character [ +recipe delete-to-end-of-line editor:address:editor-data -> result:address:duplex-list:character, editor:address:editor-data [ local-scope load-ingredients # compute range to delete diff --git a/html/edit/004-programming-environment.mu.html b/html/edit/004-programming-environment.mu.html index a2001520..7b632086 100644 --- a/html/edit/004-programming-environment.mu.html +++ b/html/edit/004-programming-environment.mu.html @@ -56,7 +56,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } sandbox-in-focus?:boolean # false => cursor in recipes; true => cursor in current-sandbox ] -recipe new-programming-environment screen:address:screen, initial-recipe-contents:address:array:character, initial-sandbox-contents:address:array:character -> result:address:programming-environment-data [ +recipe new-programming-environment screen:address:screen, initial-recipe-contents:address:array:character, initial-sandbox-contents:address:array:character -> result:address:programming-environment-data, screen:address:screen [ local-scope load-ingredients width:number <- screen-width screen @@ -82,7 +82,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } *current-sandbox <- new-editor initial-sandbox-contents, screen, new-left, width/right ] -recipe event-loop screen:address:screen, console:address:console, env:address:programming-environment-data [ +recipe event-loop screen:address:screen, console:address:console, env:address:programming-environment-data -> screen:address:screen, console:address:console, env:address:programming-environment-data [ local-scope load-ingredients recipes:address:editor-data <- get *env, recipes:offset @@ -141,7 +141,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } } { break-if more-events? - env <- resize screen, env + env, screen <- resize screen, env screen <- render-all screen, env render-all-on-no-more-events? <- copy 0/false # full render done } @@ -214,7 +214,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } } ] -recipe resize screen:address:screen, env:address:programming-environment-data -> env:address:programming-environment-data [ +recipe resize screen:address:screen, env:address:programming-environment-data -> env:address:programming-environment-data, screen:address:screen [ local-scope load-ingredients clear-screen screen # update screen dimensions @@ -633,7 +633,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } ## helpers -recipe draw-vertical screen:address:screen, col:number, y:number, bottom:number [ +recipe draw-vertical screen:address:screen, col:number, y:number, bottom:number -> screen:address:screen [ local-scope load-ingredients style:character, style-found?:boolean <- next-ingredient diff --git a/html/edit/005-sandbox.mu.html b/html/edit/005-sandbox.mu.html index 9c219526..0b3e3926 100644 --- a/html/edit/005-sandbox.mu.html +++ b/html/edit/005-sandbox.mu.html @@ -20,6 +20,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } .Comment { color: #9090ff; } .Constant { color: #00a0a0; } .SalientComment { color: #00ffff; } +.CommentedCode { color: #6c6c6c; } .Delimiter { color: #a04060; } .muScenario { color: #00af00; } --> @@ -149,6 +150,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } { do-run?:boolean <- equal *k, 65532/F4 break-unless do-run? +#? $log [F4 pressed] status:address:array:character <- new [running... ] screen <- update-status screen, status, 245/grey error?:boolean, env, screen <- run-sandboxes env, screen @@ -261,6 +263,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } recipe! render-sandbox-side screen:address:screen, env:address:programming-environment-data -> screen:address:screen [ local-scope load-ingredients +#? $log [render sandbox side] trace 11, [app], [render sandbox side] current-sandbox:address:editor-data <- get *env, current-sandbox:offset left:number <- get *current-sandbox, left:offset @@ -274,9 +277,10 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } clear-rest-of-screen screen, row, left, left, right ] -recipe render-sandboxes screen:address:screen, sandbox:address:sandbox-data, left:number, right:number, row:number -> row:number, screen:address:screen [ +recipe render-sandboxes screen:address:screen, sandbox:address:sandbox-data, left:number, right:number, row:number -> row:number, screen:address:screen, sandbox:address:sandbox-data [ local-scope load-ingredients +#? $log [render sandbox] reply-unless sandbox screen-height:number <- screen-height screen at-bottom?:boolean <- greater-or-equal row, screen-height diff --git a/html/edit/006-sandbox-edit.mu.html b/html/edit/006-sandbox-edit.mu.html index 2381ec45..d902c4b7 100644 --- a/html/edit/006-sandbox-edit.mu.html +++ b/html/edit/006-sandbox-edit.mu.html @@ -131,7 +131,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } result <- not first ] -recipe extract-sandbox env:address:programming-environment-data, click-row:number -> result:address:sandbox-data [ +recipe extract-sandbox env:address:programming-environment-data, click-row:number -> result:address:sandbox-data, env:address:programming-environment-data [ local-scope load-ingredients # assert click-row >= sandbox.starting-row-on-screen diff --git a/html/edit/007-sandbox-delete.mu.html b/html/edit/007-sandbox-delete.mu.html index f563b266..6d289afa 100644 --- a/html/edit/007-sandbox-delete.mu.html +++ b/html/edit/007-sandbox-delete.mu.html @@ -111,7 +111,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } } ] -recipe delete-sandbox t:touch-event, env:address:programming-environment-data -> was-delete?:boolean [ +recipe delete-sandbox t:touch-event, env:address:programming-environment-data -> was-delete?:boolean, env:address:programming-environment-data [ local-scope load-ingredients click-column:number <- get t, column:offset diff --git a/html/edit/010-warnings.mu.html b/html/edit/010-warnings.mu.html index 6d746bf5..c675b386 100644 --- a/html/edit/010-warnings.mu.html +++ b/html/edit/010-warnings.mu.html @@ -44,6 +44,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } recipe! update-recipes env:address:programming-environment-data, screen:address:screen -> errors-found?:boolean, env:address:programming-environment-data, screen:address:screen [ local-scope load-ingredients +#? $log [update recipes] recipes:address:editor-data <- get *env, recipes:offset in:address:array:character <- editor-contents recipes save [recipes.mu], in @@ -85,6 +86,7 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } recipe! update-sandbox sandbox:address:sandbox-data -> sandbox:address:sandbox-data [ local-scope load-ingredients +#? $log [update sandbox] data:address:array:character <- get *sandbox, data:offset response:address:address:array:character <- get-address *sandbox, response:offset warnings:address:address:array:character <- get-address *sandbox, warnings:offset @@ -235,6 +237,66 @@ body { font-family: monospace; color: #eeeeee; background-color: #080808; } ] ] +scenario run-avoids-spurious-warnings-on-reloading-shape-shifting-recipes [ + trace-until 100/app # trace too long + assume-screen 100/width, 15/height + # overload a well-known shape-shifting recipe + 1:address:array:character <- new [recipe length l:address:list:_elem -> n:number [ +]] + # call code that uses other variants of it, but not it itself + 2:address:array:character <- new [x:address:list:number <- copy 0 +to-text x] + 3:address:programming-environment-data <- new-programming-environment screen:address:screen, 1:address:array:character, 2:address:array:character + # run it once + assume-console [ + press F4 + ] + event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data + # no errors anywhere on screen (can't check anything else, since to-text will return an address) + screen-should-contain-in-color 1/red, [ + . . + . . + . . + . . + . <- . + . . + . . + . . + . . + . . + . . + . . + . . + . . + . . + ] + # rerun everything + assume-console [ + press F4 + ] + run [ + event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data + ] + # still no errors + screen-should-contain-in-color 1/red, [ + . . + . . + . . + . . + . <- . + . . + . . + . . + . . + . . + . . + . . + . . + . . + . . + ] +] + scenario run-shows-missing-type-warnings [ trace-until 100/app # trace too long assume-screen 100/width, 15/height -- cgit 1.4.1-2-gfad0