todo.txt 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. TODO: ^E should set the ideal cursor column to a special value which always
  2. moves the cursor to the end of whatever line it is on.
  3. (Done!)
  4. TODO: Scrolling support! Implement the tui-lib ScrollBar.
  5. (Done!)
  6. TODO: When resizing the editor, make sure the cursor position is kept within
  7. the visible scroll area (and is not moved). Try to maintain its offset
  8. relative to the vertical edge it is closer to. (For example, if growing
  9. while the cursor is closer to the bottom edge, new space should appear
  10. exclusively above the area which was already visible. This isn't always
  11. possible though, e.g. if it would reveal space above the first line.)
  12. I.e. investigate all this stuff.
  13. TODO: Mouse support!
  14. TODO: Don't scroll the cursor into view when resizing if the last interaction
  15. was directly moving only the scroll position (e.g. mouse wheel).
  16. TODO: Option to disable word wrap. Make sure to update scrollIntoView to
  17. account for horizontal scrolling!
  18. TODO: Scroll past end.
  19. TODO: Home/End key support.
  20. TODO: Page Up/Down key support.
  21. TODO: Don't show the scrollbar if it's not possible to scroll up or down.
  22. TODO: Don't display the final line if it's empty (since that means it's just
  23. the standardized line break at the end of every file).
  24. (Done!)
  25. TODO: Use ansi.measureColumns to determine how to wrap lines. Keep in mind
  26. weird characters like \t - does that need to be displayed altogether
  27. differently, preprocessed into a string of known width so it isn't
  28. client dependent? (I haven't tested - need to see what measureColumns
  29. does with \t.)
  30. TODO: Some way to show previous status messages. They're already tracked;
  31. we just need a display.
  32. TODO: A line number margin?
  33. TODO: Delete key support.
  34. (Done!)
  35. TODO: Alt-delete support. This'll take code changes in tui-lib. Should also
  36. implement proper alt-backspace detection into tui-lib, instead of looking
  37. for the particular key codes ourselves.