Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | . | Kartik K. Agaram | 2021-11-13 | 1 | -4/+1 | |
| | ||||||
* | . | Kartik K. Agaram | 2021-11-13 | 1 | -1/+1 | |
| | ||||||
* | clean up after the editor | Kartik K. Agaram | 2021-11-13 | 1 | -0/+1 | |
| | | | | | Even though we don't need to leave ncurses mode, there's still a process boundary to clean up before. | |||||
* | . | Kartik K. Agaram | 2021-11-13 | 1 | -1/+2 | |
| | ||||||
* | . | Kartik K. Agaram | 2021-11-13 | 1 | -1/+1 | |
| | ||||||
* | replace Kilo's raw terminal handling with ncurses | Kartik K. Agaram | 2021-11-13 | 1 | -1/+0 | |
| | | | | | | This was on my todo list. What made it urgent was finding that calling getch() even once while in ncurses caused Kilo to stop detecting arrow keys. No need to debug that sort of nonsense. | |||||
* | avoid side-effects on the Lua stack | Kartik K. Agaram | 2021-11-13 | 1 | -0/+5 | |
| | ||||||
* | stop leaking memory | Kartik K. Agaram | 2021-11-13 | 1 | -2/+3 | |
| | ||||||
* | memory corruption bug | Kartik K. Agaram | 2021-11-13 | 1 | -1/+3 | |
| | | | | | | | | | I was saving an address on the stack to a global, and it was getting clobbered later. This is the sort of thing I completely eliminated in https://github.com/akkartik/mu :/ Now I'm taking a leaf out of the Mu playbook and leaking a little bit of memory every time I switch definitions. | |||||
* | . | Kartik K. Agaram | 2021-11-13 | 1 | -6/+0 | |
| | ||||||
* | very rudimentary definition browser | Kartik K. Agaram | 2021-11-13 | 1 | -3/+25 | |
| | | | | Never shows definitions that were never called. Including non-functions. | |||||
* | . | Kartik K. Agaram | 2021-11-13 | 1 | -3/+3 | |
| | ||||||
* | . | Kartik K. Agaram | 2021-11-13 | 1 | -9/+0 | |
| | ||||||
* | . | Kartik K. Agaram | 2021-11-13 | 1 | -5/+9 | |
| | ||||||
* | shield kilo.c from teliva_editbuffer detail | Kartik K. Agaram | 2021-11-13 | 1 | -0/+6 | |
| | ||||||
* | . | Kartik K. Agaram | 2021-11-13 | 1 | -2/+5 | |
| | ||||||
* | . | Kartik K. Agaram | 2021-11-13 | 1 | -6/+6 | |
| | ||||||
* | . | Kartik K. Agaram | 2021-11-13 | 1 | -11/+18 | |
| | ||||||
* | clean up experiment from previous commit | Kartik K. Agaram | 2021-11-13 | 1 | -10/+0 | |
| | ||||||
* | instrumenting function calls with their depth | Kartik K. Agaram | 2021-11-13 | 1 | -0/+10 | |
| | ||||||
* | create empty file when navigating to empty definition | Kartik K. Agaram | 2021-11-11 | 1 | -3/+3 | |
| | ||||||
* | ctrl-g to edit a different definition | Kartik K. Agaram | 2021-11-11 | 1 | -2/+10 | |
| | ||||||
* | gracefully handle missing definition | Kartik K. Agaram | 2021-11-11 | 1 | -0/+1 | |
| | ||||||
* | . | Kartik K. Agaram | 2021-11-11 | 1 | -5/+5 | |
| | ||||||
* | global for current definition being edited | Kartik K. Agaram | 2021-11-11 | 1 | -3/+5 | |
| | ||||||
* | pass lua_State into editor | Kartik K. Agaram | 2021-11-11 | 1 | -3/+3 | |
| | ||||||
* | delete a helper that hides stack side effects | Kartik K. Agaram | 2021-11-11 | 1 | -8/+2 | |
| | ||||||
* | extract a few helper functions | Kartik K. Agaram | 2021-11-11 | 1 | -21/+26 | |
| | ||||||
* | . | Kartik K. Agaram | 2021-11-11 | 1 | -14/+14 | |
| | ||||||
* | . | Kartik K. Agaram | 2021-11-11 | 1 | -1/+1 | |
| | ||||||
* | reorg | Kartik K. Agaram | 2021-11-11 | 1 | -0/+44 | |
| | ||||||
* | edit a single hard-coded definition in the image | Kartik K. Agaram | 2021-11-10 | 1 | -6/+19 | |
| | | | | | | | | | | | | | src/teliva counter.tlv C-e # switch to editor C-e # save and quit C-x # exit counter.tlv now has the same logical contents, though the whitespace has changed, and the order of keys is different. The implementation is utterly ghastly. For one, I'm unnecessarily interfacing with kilo through the file system. | |||||
* | . | Kartik K. Agaram | 2021-11-10 | 1 | -23/+23 | |
| | ||||||
* | new .tlv image format | Kartik K. Agaram | 2021-11-10 | 1 | -0/+72 | |
| | | | | | | | | | | | | | | Plan is for this to be the default representation for Teliva programs. Text-friendly but not meant to be edited directly as text. Will eventually include both code and data definitions, both current snapshot and past revision history. Right now .tlv files seem to run. Error checking is non-existent, because I don't understand Lua's idioms around 'status' yet. Opening the editor expectedly segfaults. This commit is the most mind-bending bit of code I've written in a long time. | |||||
* | life: move starting pattern around on the screen | Kartik K. Agaram | 2021-11-10 | 1 | -0/+1 | |
| | | | | | | This assumes we're doing it early soon after opening a new pattern, when it hasn't yet reached the margins. Quick and dirty, but seems good enough. | |||||
* | better support light backgrounds | Kartik K. Agaram | 2021-11-07 | 1 | -0/+1 | |
| | | | | Thanks nicolas decoster for reporting this issue. | |||||
* | game of life | Kartik K. Agaram | 2021-11-06 | 1 | -0/+2 | |
| | | | | | This required me to figure out some unicode-related nuances, but no new primitives. | |||||
* | escape hatch to quit with a pending error | Kartik K. Agaram | 2021-11-06 | 1 | -3/+4 | |
| | ||||||
* | reorg editor transitions | Kartik K. Agaram | 2021-11-06 | 1 | -3/+10 | |
| | ||||||
* | start showing error messages in editor | Kartik K. Agaram | 2021-11-06 | 1 | -4/+17 | |
| | | | | | | | | | | | 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 menu | Kartik K. Agaram | 2021-11-06 | 1 | -2/+3 | |
| | | | | | | 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. | |||||
* | utterly ghastly way to rerun script after edit | Kartik K. Agaram | 2021-11-05 | 1 | -1/+3 | |
| | ||||||
* | stitch editor in | Kartik K. Agaram | 2021-11-05 | 1 | -3/+3 | |
| | ||||||
* | drop test array data structure | Kartik K. Agaram | 2021-11-05 | 1 | -82/+0 | |
| | ||||||
* | . | Kartik K. Agaram | 2021-11-05 | 1 | -8/+0 | |
| | ||||||
* | colors: init_pair/color_pair | Kartik K. Agaram | 2021-11-05 | 1 | -0/+1 | |
| | ||||||
* | make some space for the global menu | Kartik K. Agaram | 2021-11-05 | 1 | -1/+4 | |
| | | | | We'll eventually need some interface to add entries to it. | |||||
* | metatables seem to be a separate namespace from globals | Kartik K. Agaram | 2021-11-05 | 1 | -3/+3 | |
| | ||||||
* | starting on curses library | Kartik K. Agaram | 2021-11-05 | 1 | -1/+0 | |
| | | | | | | | | | | | | | | | First piece of working new vocabulary: print(curses:cols()) Just pulling in code from lcurses for the most part. But I'm trying to understand its internals as I gradually add them in, after my more blunt first approach of packaging up lcurses/ext failed. Overall plan for Teliva's API: - start out with a 'curses' library that does what people who are used to ncurses/lcurses expect. - over time create a more opinionated library called 'screen' or 'window' or something. | |||||
* | https://www.lua.org/pil/28.3.html | Kartik K. Agaram | 2021-11-05 | 1 | -2/+13 | |
| | | | | | | | | a = array.new(1000) for i=1,1000 do a:set(i, 1/i) end print(a:get(10)) -- 0.1 |