about summary refs log tree commit diff stats
path: root/src/kilo.c
Commit message (Collapse)AuthorAgeFilesLines
...
* restore editor state from snapshotKartik K. Agaram2021-11-281-0/+18
|
* save a snapshot of editor state across restartsKartik K. Agaram2021-11-281-0/+2
| | | | | | | | | | | | | | | | We're not using this yet. I agonized over this decision for several weeks. Is Teliva's need to restart with execve an utter hack or a good thing? I'm leaning towards the latter. Constantly exercising the initial flow makes Teliva more crash-only. We can build Steve Yegge's idea of immortality (http://steve-yegge.blogspot.com/2007/01/pinocchio-problem.html) out of crash-only primitives, just by making reboots instantaneous. But focusing directly on immortality tends to compromise crash-only by exercising it more rarely. One other issue this brings up: loading these Lua tables from disk is a vector for arbitrary code execution. I need to fix these when I get to sandboxing.
* fix backspace on MacKartik K. Agaram2021-11-281-1/+1
| | | | | I'm deliberately restricting this incompatibility to the editor environment for now.
* editor hotkeys: sol/eolKartik K. Agaram2021-11-281-4/+19
| | | | | I'm growing attached to ^e, so mildly breaking with convention there. Perhaps this is a bad idea.
* dedup an enumKartik K. Agaram2021-11-261-19/+1
|
* new shortcut: return to big-picture viewKartik K. Agaram2021-11-251-3/+18
|
* make upstream kilo ASan-cleanKartik K. Agaram2021-11-251-3/+4
| | | | | | Many thanks to dirkf for https://github.com/antirez/kilo/pull/73! However, teliva is still not ASan-clean.
* standardize warning flags everywhereKartik K. Agaram2021-11-221-1/+1
| | | | | | | | | | I'd like to enable -Wextra as well, but that creates some false positives. I've at least made my changes clean w.r.t. -Wextra. Now we have 4 remaining warnings with gcc 9.3 that seem genuine. Need to fix those.
* .Kartik K. Agaram2021-11-221-13/+8
|
* cleaner error handlingKartik K. Agaram2021-11-141-4/+2
|
* remain in editor on errorKartik K. Agaram2021-11-141-0/+11
|
* .Kartik K. Agaram2021-11-141-1/+1
|
* more menu cleanupKartik K. Agaram2021-11-141-7/+12
|
* .Kartik K. Agaram2021-11-141-2/+2
|
* draw the browse dialog the same wayKartik K. Agaram2021-11-141-1/+1
|
* dialogs are not status messagesKartik K. Agaram2021-11-141-3/+8
|
* cleaner dialogsKartik K. Agaram2021-11-141-22/+59
|
* no, use Esc to cancelKartik K. Agaram2021-11-141-5/+5
| | | | | It inserts an ugly pause for ghastly historical reasons having to do with the origins of terminals. But hopefully this isn't a common case.
* use word at cursor when it's not at start of lineKartik K. Agaram2021-11-141-2/+4
|
* editor: use ctrl-g to cancel dialogsKartik K. Agaram2021-11-131-5/+5
|
* jump to word at cursor by defaultKartik K. Agaram2021-11-131-0/+28
|
* ctrl-u to clear response in go menuKartik K. Agaram2021-11-131-0/+3
|
* reset cursor position when switching definitionsKartik K. Agaram2021-11-131-0/+2
|
* .Kartik K. Agaram2021-11-131-1/+0
|
* cleaner layout for a function's code and dataKartik K. Agaram2021-11-131-3/+0
|
* generalize kilo's hard-coded multiline C syntaxKartik K. Agaram2021-11-131-21/+28
|
* .Kartik K. Agaram2021-11-131-6/+2
|
* fix for editor highlightingKartik K. Agaram2021-11-131-1/+2
| | | | Bug introduced during the transition to ncurses.
* kill highlighting flagsKartik K. Agaram2021-11-131-9/+5
| | | | Looks like they were never used in original Kilo.
* replace Kilo's raw terminal handling with ncursesKartik K. Agaram2021-11-131-355/+91
| | | | | | 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.
* stop leaking memoryKartik K. Agaram2021-11-131-2/+3
|
* shield kilo.c from teliva_editbuffer detailKartik K. Agaram2021-11-131-4/+4
|
* .Kartik K. Agaram2021-11-131-1/+1
|
* .Kartik K. Agaram2021-11-131-4/+2
|
* .Kartik K. Agaram2021-11-131-3/+3
|
* .Kartik K. Agaram2021-11-131-11/+2
|
* start using static linkage like the rest of LuaKartik K. Agaram2021-11-131-46/+42
|
* create empty file when navigating to empty definitionKartik K. Agaram2021-11-111-1/+1
|
* fix incorrect hotkey in menuKartik K. Agaram2021-11-111-2/+2
|
* ctrl-g to edit a different definitionKartik K. Agaram2021-11-111-1/+58
|
* pass lua_State into editorKartik K. Agaram2021-11-111-3/+3
|
* reorgKartik K. Agaram2021-11-111-48/+0
|
* edit a single hard-coded definition in the imageKartik K. Agaram2021-11-101-0/+50
| | | | | | | | | | | | | 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.
* switch menu bars to reverse videoKartik K. Agaram2021-11-071-5/+5
|
* escape hatch to quit with a pending errorKartik K. Agaram2021-11-061-2/+10
|
* start showing error messages in editorKartik K. Agaram2021-11-061-1/+2
| | | | | | | | | | | 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.
* .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
|