about summary refs log tree commit diff stats
path: root/chesstv.tlv
Commit message (Collapse)AuthorAgeFilesLines
* distinguish between window global and argKartik K. Agaram2022-03-021-33/+33
|
* starting to make Teliva apps more testableKartik K. Agaram2022-02-271-28/+28
| | | | | | | | | | Tasteful apps should only perform side-effects through 'window' arguments rather than the 'curses' module directly. It's ok however to read constants like curses.A_NORMAL or curses.stdscr(). There are some limitations, unfortunately. Ncurses wasn't designed with testability in mind. For example, there's no way to curs_set or assume_default_colors without the 'curses' module. Oh well.
* 'doc:blurb': a place to briefly describe an appKartik K. Agaram2022-02-171-0/+6
| | | | | | This is for what the app does, as opposed to 'doc:main', which is also intended to include commentary about the internal organization of the app.
* fix chesstv.tlv after we introduced sandboxingKartik K. Agaram2022-02-121-0/+23
|
* nail down trusted Teliva channels a little moreKartik K. Agaram2021-12-211-1/+0
| | | | | | | | | | | | | | | | | | | | | | In each session, Teliva has to bootstrap a trusted channel with the computer owner while running arbitrarily untrusted code. So let's get really, really precise about what the trusted channel consists of: - the bottom-most row of screen containing the menu - the keystrokes the owner types in - ncurses COLOR_PAIR slots 254 (menu) and 255 (error) One reason the menu colors are important: we don't want people to get used to apps that hide the menu colors by setting default foreground/background to invisible and then drawing their own menu one row up. The error COLOR_PAIR I don't see any reason to carve out right now, but it seems like a good idea for Teliva the framework to not get into the habit of apps doing some things for it. I'm not sure how realistic all this is (I feel quite ill-equipped to think about security), but it seems worthwhile to err on the side of paranoia. Teliva will be paranoid so people don't have to be.
* snapshot: migrate all sample apps to new formatKartik K. Agaram2021-12-111-298/+263
|
* start showing call stack on errorsKartik K. Agaram2021-12-041-0/+1
| | | | | | | | It turns out Lua has been providing us this information all along! I'd just not created the space on screen to show it. Make it persist better. Kilo now no longer tracks its own status messages, which is a regression in a rare condition.
* .Kartik K. Agaram2021-11-261-17/+34
|
* save timestamp on change; show in recent changesKartik K. Agaram2021-11-261-0/+17
|
* monotonically accumulate versions of definitionsKartik K. Agaram2021-11-241-1/+36
| | | | | | | | | | | One old drawback now has a new look. Before, we loaded definitions in order, so global definitions had to exist before other global definitions that used them. See window and grid in life.tlv. Now we load definitions in reverse order, so initialization needs to change. Worse, if we update window, we need to edit grid just to fix the order. This implies that we can't yet optimize away bindings where there are no new changes.
* indentKartik K. Agaram2021-11-231-17/+17
|
* chess: tweak colors a bitKartik K. Agaram2021-11-231-4/+4
|
* chess: extract color parametersKartik K. Agaram2021-11-231-16/+16
|
* chess: extract a new functionKartik K. Agaram2021-11-231-2/+6
|
* chess: fix inconsistency in light piece colorKartik K. Agaram2021-11-231-2/+2
|
* chess: make white pieces red for legibilityKartik K. Agaram2021-11-221-8/+10
|
* chesstv: light colored square on bottom rightKartik K. Agaram2021-11-221-2/+2
| | | | 1-based indexing is a hassle.
* chesstv.tlv: render clocksKartik K. Agaram2021-11-211-0/+8
|
* chesstv.tlv: looking much betterKartik K. Agaram2021-11-211-24/+55
| | | | | | | | | - square colors are slightly different - moves are now highlighted In the process I found lots of bugs in the rendering, and gave up on supporting adjustable orientation. Just always keep White's side at the bottom.
* chess: better colorsKartik K. Agaram2021-11-211-6/+38
|
* almost done with chess appKartik K. Agaram2021-11-211-2/+111
| | | | It's still not very legible.
* figured out streaming http!Kartik K. Agaram2021-11-211-3/+22
| | | | http://lua-users.org/wiki/FiltersSourcesAndSinks
* basic http requests starting to workKartik K. Agaram2021-11-211-1/+17
| | | | | In the process we're starting to load almost all of luasocket by default. And everything is working as expected, no unpleasant surprises.
* start on HTTP clientKartik K. Agaram2021-11-211-0/+7