ghostty/TODO.md
Mitchell Hashimoto 42210e18da update TODO
2022-09-29 15:07:32 -07:00

1.6 KiB

Bugs:

  • Underline should use freetype underline thickness hint

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

Correctness:

  • exit in the shell should close the window
  • test wrap against wraptest: https://github.com/mattiase/wraptest
    • automate this in some way
  • Charsets: UTF-8 vs. ASCII mode
    • we only support UTF-8 input right now
    • 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:

  • scrollback: configurable
  • selection on top/bottom should scroll up/down (while extending selection)
  • double-click to select a word
  • triple-click to select a line
  • shift-click and drag to continue selection

Major Features: