IdeApp class
The full-screen TUI IDE: a file-tree sidebar, a tab bar of open files, a syntax-highlighted editor with a git-change gutter, and a status bar.
run takes over the terminal (via Terminal) until the user quits with
Ctrl-Q, then restores it. The layout, focus, key routing and render loop
all live here; the panes are pure renderers and the models hold the state.
Key bindings:
Ctrl-Qquit (guards unsaved changes),Ctrl-Ssave,Ctrl-Wclose tab (both guard unsaved changes with a confirm-again prompt).Ctrl-Ffind text,Ctrl-Lgo to line — each opens a modal prompt.Ctrl-Ttoggle/focus the integrated terminal panel; type a command and Enter to run it (working directory persists viacd);Escreturns to the editor.Ctrl-Atoggle/focus the AI agent panel; it operates with the open file or the selected directory as context and can read/edit files, search and run commands.Escreturns to the editor.Ctrl-Btoggle focus between tree and editor;Tab/Escalso switch.Ctrl-N/Ctrl-Pnext/previous tab.- Tree: arrows/PageUp/Down/Home/End navigate, Enter/→ open or expand, ←
collapse/parent,
.toggle hidden files,nnew file,Nnew folder. - Editor: arrows/Home/End/PageUp/Down move; typing edits; Tab inserts two spaces.
Constructors
- IdeApp({required Workspace workspace, required TerminalDriver terminal, HighlighterRegistry? registry, AgentBackend? agentBackend, AiProvider? aiProvider, String? aiModel, CommandShield? shield, CommandSyntax? commandSyntax, TokenTheme theme = TokenTheme.dark})
Properties
- debugScreen → ScreenBuffer?
-
The current screen buffer (for tests/inspection);
nullbefore first render.no setter - hashCode → int
-
The hash code for this object.
no setterinherited
- rootPath → String
-
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- theme → TokenTheme
-
final
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
run(
) → Future< void> - Runs the IDE until the user quits, restoring the terminal afterwards.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited