ghostty/TODO.md
Mitchell Hashimoto 039b640f6b Merge branch 'reflow'
This actually doesn't implement reflow but I wanted to merge this
because it has an important refactor and clarity around screen
operations.

It is now clearly defined in the API what portion of the screen you're
accessing (active, viewport, etc.) and the terminal only operates on the
active area (fixing TODO item in diff).

This is all groundwork I found was necessary to even start thinking
about reflow.
2022-08-07 10:47:27 -07:00

1.1 KiB

Bugs:

  • Underline should use freetype underline thickness hint

Performance:

  • libuv allocates on every read, we should use a read buffer pool
  • update cells should only update the changed cells
  • for scrollback, investigate using segmented list for sufficiently large scrollback scenarios.
  • scrollback: dynamic growth rather than prealloc

Correctness:

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
  • arrow keys do nothing, should send proper codes
  • home/end should scroll to top/bottom of scrollback

Major Features:

  • Strikethrough
  • Emoji
  • Ligatures
  • Bell
  • Mac:
    • Enable retina framebuffer
    • When retina, fonts need to be rendered 2x, they're blurry right now
    • Switch to raw Cocoa and Metal instead of glfw and libuv (major!)