about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* 2187Kartik K. Agaram2015-09-122-1/+5
|
* 2186 - kill the current routine on first errorKartik K. Agaram2015-09-122-4/+35
| | | | | Exception: allow run-interactive to continue even if it encounters errors in parsing its ingredient as mu code.
* 2185Kartik K. Agaram2015-09-121-0/+1
|
* 2184 - bugfix in trace_countKartik K. Agaram2015-09-122-3/+12
| | | | | | | | | | | | | | | | It was reading lines like this in scenarios: -warn: f: error error as: -warn: f which was causing them to be silently ignored. Also found an insane preprocessor expansion from not parenthesizing preprocessor arguments. SIZE(end+delim) worked even when end was an integer, but it happily didn't ever get the wrong answer.
* 2183 - environment + external editor using tmuxKartik K. Agaram2015-09-1220-19/+8346
| | | | Thanks Jack and Caleb Couch for the idea.
* 2182Kartik K. Agaram2015-09-122-3/+1
|
* 2181 - detect shift-tabKartik K. Agaram2015-09-112-5/+10
| | | | Does nothing useful yet, though.
* 2180 - render the trace even if there's warningsKartik K. Agaram2015-09-102-1/+53
|
* 2179 - undo bugfixKartik K. Agaram2015-09-102-1/+22
|
* 2178 - don't die on divide by 0Kartik K. Agaram2015-09-101-6/+25
|
* 2177Kartik K. Agaram2015-09-0738-9349/+12357
|
* 2176Kartik K. Agaram2015-09-062-3/+35
|
* 2175Kartik K. Agaram2015-09-0655-2999/+3437
|
* 2174Kartik K. Agaram2015-09-061-1/+2
|
* 2173 - 'main' for 'mu edit' running layers 1 and 2Kartik K. Agaram2015-09-061-1/+42
| | | | | | Layer 2 provides an almost fully functioning interactive editor: $ ./mu edit/00[12]* -- abcdef
* 2172 - 'main' for 'mu edit' running just layer 1Kartik K. Agaram2015-09-062-1/+14
| | | | | | | | | Takes the text to render inside the editor on the commandline: $ ./mu edit/001-editor.mu -- abcdef Layer 1 has no interactivity. Just shows the text you pass in on the commandline, wrapping as you would expect. Press any key to exit.
* 2171 - 'main' can take ingredients from the shellKartik K. Agaram2015-09-062-6/+39
| | | | | | | | | | Ingredients of 'main' are always strings (type address:array:character), and are delineated from .mu files to load by a "--", e.g.: $ ./mu x.mu y.mu -- a b c Here 'main' must be defined in one of x.mu and y.mu, and will receive the ingredients "a", "b", and "c".
* 2170Kartik K. Agaram2015-09-061-15/+22
|
* 2169Kartik K. Agaram2015-09-061-1/+0
|
* 2168Kartik K. Agaram2015-09-061-1/+0
|
* 2167Kartik K. Agaram2015-09-052-4/+18
|
* 2166Kartik K. Agaram2015-09-053-168/+221
|
* 2165Kartik K. Agaram2015-09-051-1/+1
|
* 2164Kartik K. Agaram2015-09-051-2/+1
|
* 2163Kartik K. Agaram2015-09-053-17/+19
| | | | | | | | `render-string` (and `render-code-string`; ugh) should start a new line after, not before, like everybody else. I've been meaning to fix this for a long time, but now I have to, to move the warnings fields out of early layers.
* 2162Kartik K. Agaram2015-09-051-16/+2
|
* 2161Kartik K. Agaram2015-09-051-8/+8
| | | | | Starting on making the basic programming environment oblivious to warnings. That should come later.
* 2160Kartik K. Agaram2015-09-054-0/+0
|
* 2159Kartik K. Agaram2015-09-052-139/+139
|
* 2158Kartik K. Agaram2015-09-051-1/+7
|
* 2157 - edit/ now contains real layersKartik K. Agaram2015-09-054-48/+74
| | | | | | | | | To run just until say layer 6, say this: $ ./mu test edit/00[0-6]* The layers are not perfect yet; there might be a few things (like the warning fields) that need to move to a later layer.
* 2156 - split edit.mu into multiple filesKartik K. Agaram2015-09-0514-8914/+8905
| | | | | | | | | Now you can bring up the programming environment by saying: $ mu edit The files under edit aren't yet *layers*, though, they have a few dependencies that we need to clean up.
* 2155 - `mu` can now load all files in a directoryKartik K. Agaram2015-09-052-1/+26
|
* 2154 - check types only after loading all layersKartik K. Agaram2015-09-054-3/+3
| | | | | Follow-up to 2147, which switched transform_all to only run once, after loading all layers.
* 2153Kartik K. Agaram2015-09-051-1/+1
|
* 2152 - never warn about redefining main in testsKartik K. Agaram2015-09-051-0/+1
|
* 2151Kartik K. Agaram2015-09-051-8/+8
|
* 2150 - recipe! to explicitly redefineKartik K. Agaram2015-09-051-16/+46
| | | | | This will let me create separate 'main' recipes at each layer so people can interact with less featureful versions.
* 2149Kartik K. Agaram2015-09-053-5/+5
|
* 2148Kartik K. Agaram2015-09-051-1/+1
|
* 2147 - starting to split edit.mu into layersKartik K. Agaram2015-09-051-1/+2
| | | | | | | | | | | | | | | | edit.mu is now over 9k lines long. Only 2.6k of them are code. Plan: chunk it into multiple files inside say an 'edit' directory. Then you can run it with: $ mu edit/* I also want to be able to test just a few layers: $ mu edit/00[1-5]* When I try to chunk it into files, the first issue I run into is that before/after can't refer back to previous layers. Solution: transform_all at one shot after loading all files.
* 2146Kartik K. Agaram2015-09-051-114/+1
|
* 2145Kartik K. Agaram2015-09-051-42/+42
|
* 2144Kartik K. Agaram2015-09-051-25/+0
|
* 2143 - allow printing in color to fake screenKartik K. Agaram2015-09-041-1/+8
|
* 2142Kartik K. Agaram2015-09-041-4/+0
|
* 2141 - attempt to deal with slow networksKartik K. Agaram2015-09-042-16/+31
| | | | | | | | | | | | | On slow networks sometimes escape sequences were being partially consumed, causing junk to be added to the editor when you pressed arrow keys and so on. Now we have a way to wait. Empirically seems to work if I page-up and then scroll back up using up-arrow. Before I'd consistently get junk even on my local machine. Now I no longer do. If we still see problems I'll increase the wait time and see if the increase helps. Then we'll know more about this approach.
* 2140 - refresh screen after falling behindKartik K. Agaram2015-09-042-11/+62
| | | | | This bit of code is complex enough now that I'm bothered I can't write tests for has-more-events?
* 2139Kartik K. Agaram2015-09-041-0/+1
|
* 2138 - warn on jump to an ambiguous labelKartik K. Agaram2015-09-042-44/+224
| | | | | | | | | | | | | | | | | | | | This seemingly simple goal uncovered a little nest of bugs: it turns out I've been awash in ambiguous labels until now. My baseline recipes in edit.mu were clean, but they introduced duplicate <waypoints> -- and *those* waypoints contained +jump-targets. Result: duplicate jump targets, so that I wasn't jumping where I thought I was jumping. Somehow I happened to be picking one of the alternatives that magically kept these issues quiescent. My first plan to fix this was to mangle names of all labels inside before/after fragments, keep the jump targets private to their fragment. But the labels also include more waypoints! Mangle those, and I can't tangle to them anymore. Solution: harden the convention that jump targets begin with '+' and waypoints are surrounded by '<>'. Mangle jump targets occurring inside before/after fragments to keep them private to their lexical fragment, but *don't* mangle waypoints, which must remain globally accessible.