Skip to content
german edited this page Aug 26, 2026 · 7 revisions

Usage

Launch

Start the compiled binary:

./bin/superterm

Each visible pane contains a real local or remote terminal process. The application starts with the configured default template/session/window when one is defined.

Four-pane superterm workspace

The screenshot illustrates the pane layout, window borders, status line, and independent PTY-backed shells in one workspace.

Controls

Key Action
F2 / F3 Open a window without moving existing windows
Alt-F3 / Alt-F4 Close the focused pane; closing the last leaves an empty desktop
F6 / F7 Next / previous pane
Ctrl-Q f Give the focused pane the whole terminal, or restore the IDE
F5 Send physical F5 to the focused pane
Ctrl-F5 Move or resize the focused window
Alt-F9 Minimize the focused window
Ctrl-Q + arrows Resize the focused pane
Ctrl-Q d Detach; panes and processes keep running
Ctrl-Q s Attach, create or close another named session
Ctrl-S Save a local layout/profile selection when not attached to a live session
Alt-X Exit this viewer; the last exiting viewer closes the live session

The same actions are available from the Panes, Windows, Classes, Profiles, Sessions, Options, Clipboard, and Help menus.

Resize Behavior

The parent terminal emulator controls the pixel size of the window. superterm reads the terminal's current rows and columns, updates the FreeVision surface, relayouts every pane, resizes each virtual screen, and sends TIOCSWINSZ to each child PTY. A periodic size check also catches resize changes that are not delivered as a direct application event.

This means a screenshot should be taken after the terminal window has settled. Do not maximize the terminal solely to capture the application; a normal window geometry shows the same adaptive layout more clearly.

Session Wizard

Open Sessions -> Quick session wizard.... In Spanish mode use Sesiones -> Asistente de sesion rapida....

For each of one to four panes, enter a connection command and an optional command to run after it starts:

The session wizard creates a fresh multi-pane workspace

Connection command: ssh -tt alice@prod.example.com
After connecting:   tmux new-session -A -s alice-prod

The wizard is intended for quick workspaces. It does not edit the INI and does not store credentials. Use a window class or a profile for a workspace that must be reproducible across restarts.

The wizard collects all pane entries before replacing the current runtime. If you cancel it, the existing panes remain unchanged. Commands run under the configured login shell and are intentionally not parsed or validated.

Window Classes

A window class is a reusable, named pane definition: a structured SSH target (host, user, port, key, optional password) or a free command, plus an optional command to run once connected. Open Classes -> Manage classes... to create, edit, duplicate, or delete them. Classes are stored in ~/.superterm/superterm.ini and can also be edited by hand.

The window class manager

Profiles

A profile is a named workspace: a set of windows, each with a pane layout whose panes reference window classes. Open Profiles -> Manage profiles... to activate a profile, save the current layout as a new one, rename, or set the default that opens on startup.

The profile manager

Driving a Session from the Command Line (3.0)

Every session is a server from launch, so any other shell can control it while you work (or with nobody attached at all):

superterm list                    # sessions: NAME PROFILE PANES CLIENTS CREATED
superterm list work               # panes: title, type, target, live command...
superterm send work:2 make test   # type into pane 2 (Enter appended)
superterm send work:2 -k C-c      # send named keys: C-c, F5, Up, Esc...
superterm capture work:2 -H       # whole scrollback as pipe-clean UTF-8
superterm new work --cmd htop -t Monitor --right
superterm focus work:Monitor && superterm send . q -n
superterm organize work grid
superterm kill work

Every command and flag is also accepted in Spanish (listar, enviar, capturar, nueva, cerrar, foco, renombrar, tamano, minimizar, restaurar, ampliar, organizar, matar), and --ayuda works everywhere. Targets are SESSION, SESSION:PANE (1-based index or a unique title substring) or . for the only live session. See CLI for the full bilingual reference.

Sessions are named automatically at launch: --session NAME, else the active profile name, else session, adding -2/-3 on collision. Detaching with the prefix + d is instant (no name dialog). Alt-X closes only that viewer while others remain and closes/removes the session when it is the final attached viewer. A lost connection or killed client is treated as a detach, so the live desktop remains available. [session] server=detach in the configuration restores the classic detach-only behaviour.

Multi-User Sessions (3.0)

Up to 8 clients can attach to the same session -- run superterm --attach from several terminals. Output, focus and every window operation are shared: there is one daemon-owned canonical desktop, never a different position or size per viewer. A smaller terminal clips or pads that desktop until an explicit physical resize changes the shared geometry. Fullscreen/maximize is capped to the smallest connected host at commit time. Bounded flow control disconnects a stalled viewer without blocking panes or the other clients.

Detachable Sessions

Ctrl-Q d (or Sessions -> Detach...) disconnects the client instantly — the session already has its name from launch — and its shells and SSH connections keep running in the background. Reattach with superterm --attach, Ctrl-Q s, or the startup picker when live sessions exist. superterm --list-sessions prints them for scripts.

The session picker listing live detached sessions

The Sessions menu gathers detach, attach/manage, new-session/profile choice, and the quick wizard:

The Sessions menu

Options: language, palette and desktop

The default interface is English. Everything under Options is saved in the user configuration as you choose it.

The Options menu

  • Language / Idioma switches the whole interface between English and Spanish, live.

  • Color palette chooses the classic colour theme, black and white, or monochrome. A desktop picture keeps its own colours in all three.

    Switching the colour palette

  • Desktop background lists every picture found on disk -- the nine that ship, plus anything you dropped in ~/.superterm/backgrounds/. The desktop follows the choice as you make it.

    Choosing a desktop picture

  • Background layout is centred, tiled, stretched or fitted. A picture can name the layout it was drawn for, and choosing it adopts that layout.

  • Desktop colour... opens a picker over the sixteen text-mode colours: click a swatch or move with the arrows. It is the colour behind the windows, and the one that fills the cells a picture leaves empty.

    Choosing the desktop colour

  • Solid background (on by default) makes superterm paint its own black rather than naming the terminal's. Turn it off if your terminal has a transparent background and you want it to show through.

  • Autosave on exit, Autorestore on start, Contents while dragging and Zoom transition (Ctrl-Q f) are the local-fallback and display toggles.

Live State and Fallback Restore

A detached live session already is its saved state: leave it and the next attach receives the exact panes, geometry, focus and contents still owned by the daemon. There are no separate "save and exit" or "exit without saving" commands. For a non-live local fallback, ~/.superterm/session.ini stores the layout when autosave is enabled and autorestore=1 restores it at startup.

Clone this wiki locally