Talking wih @jamiefaye about adding InAct as an extension to the hydra editor. I would like to use this as an example project to help define and extension 'API' for adding things to hydra editor. Also tagging @ritchse to weigh in on this.
Some basic thoughts:
extension is only activated when user selects it from a menu
registry of extensions in a separate hydra repo, can be called from editor
main editor is very lightweight, but extensions can add complex functions and UI elements
Basic specs
UI elements:
extensions receive a dom element from the toolbar, and can add an icon to the toolbar
recieve a dom element "panel" to attach additional ui elements when activated
Events:
Extensions can listen to events from the editor, such as 'eval'
Extensions have access to editor view state
Extensions have access to calling certain functions from hydra editor, such as setting editor text and calling "eval"
Questions:
a lot of this is similar in goals to CodeMirror6 extension API....since hydra will transition to CM6, to what extent should we just use the CM6 extension API vs. inventing a new one?
how to dynamically load from the browser? similar to 'loadScript' function but more complex
Talking wih @jamiefaye about adding InAct as an extension to the hydra editor. I would like to use this as an example project to help define and extension 'API' for adding things to hydra editor. Also tagging @ritchse to weigh in on this.
Some basic thoughts:
Basic specs
UI elements:
Events:
Questions: