Skip to content

Terminal ​

a shell as a widget. The ui-gallery page Terminal, painted with no terminal and no window at each of the documented profiles:

bash
ui-gallery --render --page terminal --profile full|enhanced|baseline
 sparkles:ui a shell as a widget                                                    tokyo-night 
   Welcome           ▕ Terminal · a shell as a widget                                           
   Primitives        ▕                                                                          
   Layout            ▕                                                                          
   Tracks            ▕         + new                ✕ close               hold: fail            
   Text              ▕                                                                          
   Themes            ▕ ┌───────────────────────────────────────────────────────────────────┐    
   Slots             ▕ │ no terminal yet                                                   │    
   Decoration        ▕ │ Press n (or + new) to spawn your shell on a pty. The emulator is  │    
   Effects           ▕ │ sparkles:terminal-view — libghostty under a component — and this  │    
   Grid              ▕ │ pane is its first embedding: sized by layout, painted through the │    
   Components        ▕ │ host's draw phase, keyed like any other widget.                   │    
   Tree              ▕ │                                                                   │    
   Property tree     ▕ │ The keyboard is complete, including Ctrl chords; the wheel and    │    
   Table             ▕ │ Shift+PgUp/PgDn walk the scrollback. Mouse inside the pane        │    
   Scrolling         ▕ │ (selection, links) waits on the mouse-event conversion.           │    
   State             ▕ └───────────────────────────────────────────────────────────────────┘    
   Split             ▕                                                                          
   Dock              ▕                                                                          
 ▸ Terminal          ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
 pages n new shell x close shell h prev tab l next tab e keep exited            ? keys   q quit 
 sparkles:ui a shell as a widget                                                    tokyo-night 
   Welcome           ▕ Terminal · a shell as a widget                                           
   Primitives        ▕                                                                          
   Layout            ▕                                                                          
   Tracks            ▕         + new                ✕ close               hold: fail            
   Text              ▕                                                                          
   Themes            ▕ ┌───────────────────────────────────────────────────────────────────┐    
   Slots             ▕ │ no terminal yet                                                   │    
   Decoration        ▕ │ Press n (or + new) to spawn your shell on a pty. The emulator is  │    
   Effects           ▕ │ sparkles:terminal-view — libghostty under a component — and this  │    
   Grid              ▕ │ pane is its first embedding: sized by layout, painted through the │    
   Components        ▕ │ host's draw phase, keyed like any other widget.                   │    
   Tree              ▕ │                                                                   │    
   Property tree     ▕ │ The keyboard is complete, including Ctrl chords; the wheel and    │    
   Table             ▕ │ Shift+PgUp/PgDn walk the scrollback. Mouse inside the pane        │    
   Scrolling         ▕ │ (selection, links) waits on the mouse-event conversion.           │    
   State             ▕ └───────────────────────────────────────────────────────────────────┘    
   Split             ▕                                                                          
   Dock              ▕                                                                          
 ▸ Terminal          ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
                     ▕                                                                          
 pages n new shell x close shell h prev tab l next tab e keep exited            ? keys   q quit 
 sparkles:ui a shell as a widget                                                    tokyo-night 
   Welcome           | Terminal * a shell as a widget                                           
   Primitives        |                                                                          
   Layout            |                                                                          
   Tracks            |         + new                x close               hold: fail            
   Text              |                                                                          
   Themes            | +-------------------------------------------------------------------+    
   Slots             | | no terminal yet                                                   |    
   Decoration        | | Press n (or + new) to spawn your shell on a pty. The emulator is  |    
   Effects           | | sparkles:terminal-view - libghostty under a component - and this  |    
   Grid              | | pane is its first embedding: sized by layout, painted through the |    
   Components        | | host's draw phase, keyed like any other widget.                   |    
   Tree              | |                                                                   |    
   Property tree     | | The keyboard is complete, including Ctrl chords; the wheel and    |    
   Table             | | Shift+PgUp/PgDn walk the scrollback. Mouse inside the pane        |    
   Scrolling         | | (selection, links) waits on the mouse-event conversion.           |    
   State             | +-------------------------------------------------------------------+    
   Split             |                                                                          
   Dock              |                                                                          
 > Terminal          |                                                                          
                     |                                                                          
                     |                                                                          
                     |                                                                          
                     |                                                                          
                     |                                                                          
                     |                                                                          
                     |                                                                          
                     |                                                                          
                     |                                                                          
                     |                                                                          
                     |                                                                          
 pages n new shell x close shell h prev tab l next tab e keep exited            ? keys   q quit 

What each profile gives up ​

The frame's degradation report: one line per substitution, and the capability the target lacked. full is empty when the page asks for nothing a terminal cannot do.

text
alpha-flattened ×7 (alpha)
text
color-folded ×70 (colorDepth)
alpha-flattened ×7 (alpha)
text
color-dropped ×70 (colorDepth)
ascii-border ×2 (unicode)
ascii-glyph ×4 (unicode)
alpha-flattened ×7 (alpha)

These are the files dub test :ui-gallery compares every render against, so a change to this page that is not re-blessed fails CI.