From 25f2c27e4b8a4d328277e93b5c13ac6999a78b38 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Sun, 6 Nov 2022 17:41:27 -0800 Subject: [PATCH] update TODO --- TODO.md | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/TODO.md b/TODO.md index c2f935b89..1049ca957 100644 --- a/TODO.md +++ b/TODO.md @@ -1,18 +1,17 @@ Bugs: -* Glyph baseline is using the main font, but it can vary font to font - Performance: -* libuv allocates on every read, we should use a read buffer pool * for scrollback, investigate using segmented list for sufficiently large scrollback scenarios. * reflow: text reflow is really poorly implemented right now specifically for shrinking columns. Look into this. This may require changing the screen data structure. -* Screen cell structure should be rethought to use some data oriented design, - also bring it closer to GPU cells, perhaps. * Loading fonts on startups should probably happen in multiple threads +* Windowing event loop should not check `shouldClose` on every window + and should use should close callbacks instead. +* Window shutdown should be done in threads but GLFW window close cannot + be done in multiple threads making this a bit tricky. Correctness: @@ -24,7 +23,6 @@ Correctness: - need fallback glyphs if they're not supported - can effect a crash using `vttest` menu `3 10` since it tries to parse ASCII as UTF-8. -* Graphemes need to be detected and treated as a single unit Improvements: @@ -33,12 +31,18 @@ Improvements: * double-click to select a word * triple-click to select a line * shift-click and drag to continue selection +* keybind action: increase/decrease font size + +Mac: + +* Set menubar +* Preferences window Major Features: +* Reloadable configuration +* Tabs (macOS only for UI reasons) * Bell -* Mac: - - Switch to raw Cocoa and Metal instead of glfw and libuv (major!) * Sixels: https://saitoha.github.io/libsixel/ * Kitty keyboard protocol: https://sw.kovidgoyal.net/kitty/keyboard-protocol/ * Kitty graphics protocol: https://sw.kovidgoyal.net/kitty/graphics-protocol/