about summary refs log tree commit diff stats
path: root/vimrc.vim
Commit message (Collapse)AuthorAgeFilesLines
* 5079Kartik Agaram2019-04-111-13/+2
|
* 5001 - drop the :(scenario) DSLKartik Agaram2019-03-121-23/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I've been saying for a while[1][2][3] that adding extra abstractions makes things harder for newcomers, and adding new notations doubly so. And then I notice this DSL in my own backyard. Makes me feel like a hypocrite. [1] https://news.ycombinator.com/item?id=13565743#13570092 [2] https://lobste.rs/s/to8wpr/configuration_files_are_canary_warning [3] https://lobste.rs/s/mdmcdi/little_languages_by_jon_bentley_1986#c_3miuf2 The implementation of the DSL was also highly hacky: a) It was happening in the tangle/ tool, but was utterly unrelated to tangling layers. b) There were several persnickety constraints on the different kinds of lines and the specific order they were expected in. I kept finding bugs where the translator would silently do the wrong thing. Or the error messages sucked, and readers may be stuck looking at the generated code to figure out what happened. Fixing error messages would require a lot more code, which is one of my arguments against DSLs in the first place: they may be easy to implement, but they're hard to design to go with the grain of the underlying platform. They require lots of iteration. Is that effort worth prioritizing in this project? On the other hand, the DSL did make at least some readers' life easier, the ones who weren't immediately put off by having to learn a strange syntax. There were fewer quotes to parse, fewer backslash escapes. Anyway, since there are also people who dislike having to put up with strange syntaxes, we'll call that consideration a wash and tear this DSL out. --- This commit was sheer drudgery. Hopefully it won't need to be redone with a new DSL because I grow sick of backslashes.
* 4985Kartik Agaram2019-02-231-0/+5
|
* 4875Kartik Agaram2018-12-251-1/+3
| | | | Another tweak for a light background.
* 4806Kartik Agaram2018-11-301-2/+2
| | | | | | Drop a wildcard in my edit shortcuts that's getting confused between apps/crenshaw2-1.subx and apps/crenshaw2-1b.subx. We're pretty much always using the full filename (excluding .subx extension) anyway.
* 4772Kartik Agaram2018-11-241-1/+2
|
* 4757Kartik Agaram2018-11-201-0/+3
| | | | | | Let's start highlighting all global variables in Red. Assembly programming has a tendency to over-use them. They're a necessary evil, but we should minimize the number of functions that access them.
* 4751Kartik Agaram2018-11-181-0/+6
|
* 4726Kartik Agaram2018-10-271-0/+3
|
* 4725 - back to porting the Crenshaw compilerKartik Agaram2018-10-261-0/+9
|
* 4673Kartik Agaram2018-10-071-2/+2
| | | | | To search for instructions in .subx files, just run `:G 8b.*copy` inside Vim without any quotes.
* 4672Kartik Agaram2018-10-071-0/+8
|
* 4570Kartik Agaram2018-09-211-4/+16
|
* 4568Kartik Agaram2018-09-211-1/+5
| | | | Get the 'edit' script working again with the 'EE' command in Vim.
* 4474Kartik Agaram2018-08-041-8/+1
|
* 4323Kartik Agaram2018-07-071-0/+13
|
* 4299Kartik Agaram2018-06-301-2/+1
|
* 4262 - literal 'null'Kartik Agaram2018-06-171-1/+2
|
* 4261 - start using literals for 'true' and 'false'Kartik Agaram2018-06-171-0/+1
| | | | | | | | | They uncovered one bug: in edit/003-shortcuts.mu <scroll-down> was returning 0 for an address in one place where I thought it was returning 0 for a boolean. Now we've eliminated this bad interaction between tangling and punning literals.
* 3976Kartik K. Agaram2017-08-201-1/+0
|
* 3707Kartik K. Agaram2016-12-121-1/+3
| | | | | | | | | | | | | | | | | | Be more disciplined about tagging 2 different concepts in the codebase: a) Use the phrase "later layers" to highlight places where a layer doesn't have the simplest possible self-contained implementation. b) Use the word "hook" to point out functions that exist purely to provide waypoints for extension by future layers. Since both these only make sense in the pre-tangled representation of the codebase, using '//:' and '#:' comments to get them stripped out of tangled output. (Though '#:' comments still make it to tangled output at the moment. Let's see if we use it enough to be worth supporting. Scenarios are pretty unreadable in tangled output anyway.)
* 3566Kartik K. Agaram2016-10-231-3/+4
| | | | | | | | | | | | vim: Stop loading C++-specific syntax highlighting in non-C++ files. I also figured out why the autocommand wasn't running on the first file: my local setup for directory-specific vimrc files runs inside an autocommand, and it runs autocommands recursively inside an autocommand, and it runs only autocommands inside a 'LocalVimrc' autocommand group to ensure infinite regress (autocommands running multiple times in practice). And I'd forgotten this 'feature' of my vimrc setup by the time I set this up for Mu.
* 3561Kartik K. Agaram2016-10-221-2/+2
|
* 3431Kartik K. Agaram2016-09-301-0/+12
| | | | | Improvements to syntax highlighting, particularly for Mu code in C++ files.
* 1555 - mu.vim: distinguish control-flow from constantsKartik K. Agaram2015-06-121-2/+1
| | | | We also do this in regular C++ now.
* 1297Kartik K. Agaram2015-05-071-5/+8
|
* 1276 - make C++ version the defaultKartik K. Agaram2015-05-051-6/+34
| | | | I've tried to update the Readme, but there are at least a couple of issues.
* 1150Kartik K. Agaram2015-04-231-1/+0
|
* 1093 - little more vim support for the old arc versionKartik K. Agaram2015-04-171-0/+8
|
* 744 - test cursor movement in trace browserKartik K. Agaram2015-02-111-0/+1
Don't prevent run-code from clobbering existing functions, but warn because it makes traces easier to read if the different sections of a test can be distinguished.