flexible UI component model aka iframes++, panes for side-by-side editor, stacked/split terminals
Wednesday November 10, 2021
Uncompressed File Size (Javascript):
Service Worker 3.21 MB
Editor 1.25 MB
Terminal 254 KB
Tree 157 KB
-----------------------
Total 4.871 MB
Thursday March 16, 2023
what's left?
- layout module is mostly done
- just need to start using it
- some issues left
- think about extensibility
- plugins
- store
- move to next version & repeat
How long has it been since 0.4.5?
- new layout / index
- multiple panes next to each other
- drag panes to re-order
- drag file from tree
- index listens for events from each pane
- cleaner loader
- terminal status bar
- tree status bar
- editor status bar
- select from command palette broken for tree and editor
-
hotkey does not show project search (but action bar does)
- basic, two-editor scenario
- side-by-side
- command to enter this scenario
- command to exit this scenario
- basic two-terminal scenario
- one on top of the other
- command to enter this scenario
- command to exit this scenario
candidate for do-it-later
- more complex scenarios
- dynamic panes through drag and drop
- all arrangements are saved properly
- saved to root settings file?
- this is not as necessary as the items above
- there is already a great deal of complexity for items above
- this is potentially much more complex than the items above
- tree running from iframe
- should handle hotkeys (control-p, for example)
- patterned after terminal in as much as it makes sense
- all things work (write tests?)
- editor running from iframe
- files with same name but different parent should show different tabs
- are all triggers needed in editor/events.js?
- all things work (write tests?)
- should handle hotkeys (control-p, for example)
- error: fiugd/beta/service-worker/worker.rewrite.js/worker.rewrite.js « not right…
- this probably has to do with how files are saved to SW state, not sure
- modules/state.js could not handle name with full path
- fix a ton of issues related to codemirror handlers
- patterned after terminal in as much as it makes sense
- connect to service worker (or overall app)
- internal messages go to outside
- external messages come to inside
- insert editor iframe into app
- editor build
- dist in service manifest
- bring codemirror deps into editor folder
- as a stop-gap, this is handled by build
- will cleanup later
- tiggers have proper namespace
- reduce the need for:
- state.js
- Types.js
- Listeners.js
- a single events handling file
- break editor.js and editorTabs.js up
- components get modularized and referenced
- event attachment should congeal from there
- make editorEvents and editorTabEvents super simple
- bring listeners into editor.js and editorTabs.js
- figure out how to cope with this ^^^ later
- why do editor tabs not work?
- add status bar to editor
-
theme-related css
- move to github.com/fiugd
- remove references to crosshj/fiug
- bring bartok? not now
- uml sequence diagram support
- syntax and template
- todo: use frontmatter to define syntax/template
- plantuml + js-sequence-diagram
- mermaid
- nomnoml
- dotuml, yuml, etc (search vscode extensions for “uml”)
- todo: convert between different syntaxes
- yaml mode improvements
events & UI
listen: for events coming from outside trigger: to self & outside
- components
- render UI
- expose their handlers
- event modules declare event connections
- main component
- arranges/instantiates rendering
- connects events with instances