Skip to content

Latest commit

 

History

History
132 lines (130 loc) · 3.5 KB

todo.md

File metadata and controls

132 lines (130 loc) · 3.5 KB

To-do List

Items in this list are not sorted by any specific order.

  • Core
    • OS specific
      • Pipes
        • Windows
        • Linux
        • MacOS
      • Subprocesses
        • Windows
        • Linux
        • MacOS
      • Filesystem watchers
        • Windows
        • Linux
        • MacOS
      • Better error handling for filesystem API
  • User interface
    • Foundation
      • Async tasks
      • Add measure phase to reduce the complexity of layout computation from O(n²)
      • Image assets & images for different DPI
      • Brush extend modes
      • Pango-harfbuzz text handling
        • Basic implementation
        • Performance optimization
        • DPI scaling & minimap rendering
        • Memory leaks
      • Cairo renderer (cross-platform portion)
      • Skia renderer (cross-platform portion)
      • Element references
      • OS specific
        • Windows
          • Direct2D renderer
          • Cairo renderer
            • Base implementation
            • Fix compatibility issues
            • Improve performance
          • Skia renderer
          • Fix open file dialog with the new API
          • WinAPI window styles are not orthogonal
        • Linux
          • Cairo renderer
            • Base implementation
            • Bitmap loading
            • Assert on exit
          • Skia renderer
          • Better DPI scaling support
          • Clipboard support
          • Either revive or cut the X11 code
        • MacOS
          • Window
          • Cairo renderer
          • Skia renderer
          • Miscellaneous OS-specific functions
    • Elements
      • Popups
      • Size limiter
      • Sublime-style input prompt
        • Reference container
        • Virtualized listbox
        • Fuzzy searcing
      • Tabs
        • Base implementation
        • Multiple selection
  • Editor
    • Text editing
    • Multiple cursors
    • Whitespace rendering
    • More interaction modes
      • Block selection
      • Direct mouse movement (mouse moves the caret directly)
    • Word wrapping support
      • Soft linebreaks
      • Wrap at word boundary
      • Optimizations
        • Incremental wrapping computation
        • Async wrapping computation?
    • Horizontal scrolling
    • Theme providers
    • Tooltip providers
    • Gizmo providers
    • Folding providers
    • Parsing of decoration renderers
    • Search & replace
      • Plain text
      • Regular expression
    • Code view
    • Go to anything
    • Relative mode(s) for line number display
  • Tree-sitter plugin
    • Support for different encodings
    • Languages
    • Syntax highlighting
      • Basic integration
      • Customizable themes
      • Tooltip for debugging
    • Folding provider
  • LSP plugin
    • Basic protocol structures
    • UTF-16 word position
    • Languages
    • Backends
      • Stdio backend
        • Convert to platform-agnostic API
      • Socket backend
    • Handling of LSP commands and messages
      • Syntax highlighting
        • Basic integration
        • Customizable themes
        • Tooltip for debugging
      • Hover
        • Basic integration
        • Better popups
          • Markdown content display
      • Diagnostics
        • Basic integration
        • Customizable decorations
        • Tooltips
      • Go to symbol
      • Folding provider
      • Formatting
      • ...
  • Python plugin
    • Basic integration
    • API declaration
  • Workspaces
    • Tree view
    • Search in workspace
  • More unit tests