Skip to content

Latest commit

 

History

History
9 lines (8 loc) · 732 Bytes

NOTES.md

File metadata and controls

9 lines (8 loc) · 732 Bytes

Assumptions in the code / Design decisions:

  • All ASCII for now, no real UTF8
  • The cursor is only ever on a valid buffer location. This can be the hidden CR of the line, or the 0 at the end.
  • Even if the loaded buffer doesn't 0 terminate, it is terminated and then removed at save time if necessary.
  • Internally every thing is a '\n'; '\r\n' is converted and converted back if necessary. Mixed files aren't supported, you'll just get a '\n' file
  • The window converts the entire buffer to a list of visible character lines. This is used to handle wrapping, and let the user jump around in a wrapped buffer file.
  • Cursor is on the virtual line in the wrapped buffer, and can be off screen; but ScrollTo will find it