Views
Arcus UI is composed of view objects.
Each focused view resolves input through its active keybinding context.
View keybinding contexts
Views bind keys by class/state targets. Examples:
(buffer-view :normal)(buffer-view :insert)(interactive-view :output-focus)(file-browser-view :filter)
Use define-key to bind commands to these targets:
(define-key '(buffer-view :normal) :g 'activate-go-menu)
(define-key '(interactive-view :output-focus) :j 'interactive-view-output-next)
Built-in views
Arcus includes a set of built-in views you will see often:
buffer-view: primary text editing surfacedashboard-view: startup/home workspace launcherpopup-viewandcompletion-view: focused popup lists and completion UIsoverlay-view: modal overlays layered above regular contentsearchable-view: filterable list-style picker baseinteractive-view: REPL/shell-style input + output panelsfile-browser-view: project/file navigation with a filter stateside-by-side-diff-view: two-pane diff comparison UIinspector-view,profiler-view,debugger-view: Lisp tooling panesnotifications-view: notification center and history
Sticky keymaps
Sticky keymaps are temporary overlays activated while holding a key.
Structural editing uses this pattern: hold s to route keys through structural bindings, then release s to return to the base key context.
Cheatsheet integration
The cheatsheet (Shift-/) reflects the currently effective binding context:
- sticky keymap if active
- otherwise focused view class/state target chain
Hold Alt while cheatsheet is open to show command names instead of descriptions.