Skip to content

TODO #2

@ChrisPenner

Description

@ChrisPenner
  • ALL THE DOCS (Ongoing)
  • Switch Input Events to use adapter system
  • Switch Output Display to use adapter system
  • Add capacity for user plugins
  • Allow Plugins to maintain their own independent state
  • Add tests for TextLens
  • Switch to using Prisms for search-related TextLens' to signify whether a result was found.
  • Use monad transformers to allow modules to push side effects up to top level (like 'write file' or 'exit')
  • Modularize directive system so that editor core is "just another plugin"
  • Add 'Save'
  • Support Dependencies between plugins
  • Generalize cursor interface as an Extension
  • Expose API for setting text Attributes
  • Hide 'editor' and 'buffer' structures within Store and only expose direct-access lenses.
  • Allow extensions to maintain buffer-local state?
  • Somehow initialize extensions so they're not empty
  • Extension for multiple cursors
  • Improve interface for one-off scripts
  • Investigate Yi.Rope as possible text data-structure for performance.
  • Add logging modes
  • Extensible Event/Hook system
  • Asynchronous Action Execution
  • Windowing concepts (maybe using recursion-schemes)
  • Add buffer reference system
  • Allow embedding Actions in BufActions, but not the other way around.
  • Add Scrolling/Window support
  • Allow event listeners to be 'callbacks'
  • Per Buffer event/hook system
  • Expose API for expressing rendering preferences (I.E. Buffer size, location, or visibility)
  • Add ability for Buffer 'Views'
  • In-editor help interface
  • Extension for cmdline (like vim/emacs)
  • Extension to 'Shell out'
  • Extension to generalize notion of 'motions' and 'operators' over lenses.
  • Add 'Open'
  • Extension for syntax highlighting support (read Vim/emacs syntax files?)
  • Quick-fix style list
  • Add timer API for timer related tasks
  • Allow plugins to 'cancel' events

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions