about summary refs log tree commit diff stats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* .Kartik K. Agaram2021-11-071-1/+1
|
* game of lifeKartik K. Agaram2021-11-062-1/+3
| | | | | This required me to figure out some unicode-related nuances, but no new primitives.
* .Kartik K. Agaram2021-11-061-3/+1
|
* window:nodelay() for non-blocking inputKartik K. Agaram2021-11-061-0/+16
|
* escape hatch to quit with a pending errorKartik K. Agaram2021-11-062-5/+14
|
* reorg editor transitionsKartik K. Agaram2021-11-062-12/+13
|
* start showing error messages in editorKartik K. Agaram2021-11-063-7/+21
| | | | | | | | | | | Before we'd end up in cryptic situations where error messages would get hidden when the program got out of ncurses mode. Now it's a little nicer with error messages showing up at the bottom of the editor. But there's still a problem: there's no way to abort without fixing an error.
* simple interface for adding to app menuKartik K. Agaram2021-11-062-4/+17
| | | | | | We're not going to enforce that the menu items actually do what they advertise. It's just a way to draw on the bottom line of screen, something apps aren't otherwise allowed to do.
* refactor menu drawingKartik K. Agaram2021-11-061-9/+20
|
* .Kartik K. Agaram2021-11-061-6/+0
|
* auto-saveKartik K. Agaram2021-11-061-10/+2
| | | | We'll add version control soon.
* replace initial help message with a menuKartik K. Agaram2021-11-061-8/+5
|
* no, more consistent to toggle run/edit with ctrl-eKartik K. Agaram2021-11-061-3/+4
|
* exit editor with ctrl-x for consistencyKartik K. Agaram2021-11-061-3/+4
|
* .Kartik K. Agaram2021-11-061-2/+2
|
* .Kartik K. Agaram2021-11-061-21/+21
|
* clean up when leaving editorKartik K. Agaram2021-11-061-0/+1
| | | | | kilo.c is still calling exit() in several places that we'll need to gradually clean up.
* readme and docsKartik K. Agaram2021-11-052-103/+1
|
* clean up first paint of editorKartik K. Agaram2021-11-051-0/+1
|
* utterly ghastly way to rerun script after editKartik K. Agaram2021-11-053-5/+14
|
* stitch editor inKartik K. Agaram2021-11-054-62/+28
|
* drop test array data structureKartik K. Agaram2021-11-051-82/+0
|
* .Kartik K. Agaram2021-11-051-8/+0
|
* select an editor to bundle: kiloKartik K. Agaram2021-11-051-0/+1308
| | | | | | From https://github.com/antirez/kilo Source code description: https://viewsourcecode.org/snaptoken/kilo BSD 2-clause license seems identical to the MIT in the current codebase.
* slightly improve hanoi renderingKartik K. Agaram2021-11-051-1/+1
|
* menu entry: cleanly exitKartik K. Agaram2021-11-051-3/+21
|
* colors: init_pair/color_pairKartik K. Agaram2021-11-053-4/+39
|
* .Kartik K. Agaram2021-11-051-17/+17
|
* slightly clearer rendering in the example appKartik K. Agaram2021-11-051-3/+11
|
* make some space for the global menuKartik K. Agaram2021-11-053-1/+20
| | | | We'll eventually need some interface to add entries to it.
* move getch out of window scopeKartik K. Agaram2021-11-052-15/+12
| | | | The window only matters for output, which seems like a stupid interface.
* rename 'screen' to 'window'Kartik K. Agaram2021-11-051-19/+19
| | | | | We're going to set aside a portion of the screen soon that apps can't touch.
* resist the temptation to add to the Lua APIKartik K. Agaram2021-11-052-22/+12
| | | | | Instead we'll include code in the Lua app itself, to minimize the differences between what runs on regular Lua and what runs on Teliva.
* hanoi.lua now workingKartik K. Agaram2021-11-051-2/+2
| | | | | There's something strange in the combination of Lua 5.1 and lcurses: window.getch() returns a char but curses.getch() returns an int.
* hanoi.lua _almost_ workingKartik K. Agaram2021-11-052-10/+30
|
* vimrcKartik K. Agaram2021-11-051-0/+3
|
* window:getch()Kartik K. Agaram2021-11-052-5/+17
| | | | | But how do we get curses.getch() to work? I don't see it implemented in lcurses.
* hanoi.lua now renderingKartik K. Agaram2021-11-051-4/+5
|
* curses print constantsKartik K. Agaram2021-11-051-0/+72
| | | | | | | Very satisfying to debug the difference between lcurses putting the module table in an upvalue. Since I implicitly call initstr() rather than define it as a primitive, I don't need to bother with that. I am awesome. Lua is awesome for giving me that sense.
* groupingKartik K. Agaram2021-11-051-0/+4
|
* mvaddch/mvaddstrKartik K. Agaram2021-11-051-0/+33
| | | | | I think we now have all the output functions/methods we need. Just some constants remaining.
* attron/attroffKartik K. Agaram2021-11-051-0/+18
|
* window:getmaxyx()Kartik K. Agaram2021-11-052-2/+23
|
* .Kartik K. Agaram2021-11-051-0/+1
|
* window:clear()Kartik K. Agaram2021-11-051-0/+7
|
* ok, what do we need next for hanoi.lua?Kartik K. Agaram2021-11-051-0/+76
|
* reindentKartik K. Agaram2021-11-051-7/+7
| | | | | I'm trying to follow the style of lua sources even when they're not my preference. lcurses code is a bit different.
* ohh, that word 'index' was keyKartik K. Agaram2021-11-051-0/+4
|
* oh, that's just a cosmetic thingKartik K. Agaram2021-11-051-0/+13
| | | | | | | | So why isn't this working? a = curses:stdscr() a:addstr(abc) The error is "attempt to index global 'a' (a userdata value)"
* copy metatable name from lcursesKartik K. Agaram2021-11-051-3/+3
| | | | | Makes no difference to the results of: print(curses:stdscr())