-
Notifications
You must be signed in to change notification settings - Fork 0
Troubleshooting
Install Free Pascal 3.2.2 or a compatible Free Pascal 3.x release, including the FV, FCL, and DB units. Run:
./configure
make infoThe project-local vendor/fv322 directory must be available and is placed
before system FreeVision units by the build scripts.
Build it explicitly:
make releaseThe output is bin/superterm. bin/ and build/ are generated and are not
tracked by Git.
Install the Python dependency for the interpreter selected by configure:
python3 -m pip install pyteThen rerun:
make testVerify the command outside superterm first. Prefer a key or agent:
ssh -tt alice@hostFor a structured SSH window class, check host, user, port, and key.
Password fields require sshpass and are less safe than key-based
authentication. A class with connect runs that free command instead and takes
precedence over host.
If the remote command should remain attached to a persistent console, use a
postconnect such as:
postconnect=tmux new -A -s mainCheck that:
- The configuration file is the one selected by
$SUPERTERM_INI. - The class section is
[class.NAME]andenabled=1. - The intended type is derived from the fields:
connect-> command class, elsehost-> SSH class, else local class. The oldtype=key is ignored. - Legacy
[t-*]sections still load but are migrated to[class.*]on the next save from the class manager.
Check that:
- The profile header is
[profile.NAME]withenabled=1. - Every name in
windows=has a matching[profile.NAME.window.W], and every name inpanes=has a matching[profile.NAME.window.W.pane.P]. - Each pane's
class=references an existing, enabled window class (an emptyclassmeans an ad-hoc pane using its own overrides). -
layoutnode count matches the number of panes (Lis one pane;V:ratio/H:ratioare splits, ratio0..1000). - Legacy
[template.*]sections (INI or SQLite) are flattened into profiles; an explicit[profile.*]of the same name wins.
Enable diagnostics when needed:
SUPERTERM_DEBUG=/tmp/superterm-debug.log ./bin/supertermDo not put passwords in the log or command line.
The default prefix is Ctrl-Q, chosen so a remote tmux/screen inside a pane
keeps Ctrl-B untouched. Change it with [keymap] prefix (ctrl-a..ctrl-z,
a letter, or 1..26). The old numeric prefix=2 (Ctrl-B) is migrated to
Ctrl-Q automatically; write prefix=ctrl-b to keep Ctrl-B on purpose. Press the
prefix twice to send one literal prefix byte to the pane.
A lone Esc now reaches the pane: the custom keyboard driver uses a short
timeout instead of holding Esc as an Alt prefix, so single-Esc programs (vi,
less) behave normally.
256-color and truecolor sequences are approximated to the 16-color palette, and
modern-CLI glyphs (bullets, spinners, tree branches) are rendered through CP437.
Slight substitutions there are expected approximation, not corruption. If dialog
or text contrast is poor, switch the palette in Options -> Color palette
(color, black-and-white, monochrome).
Check the terminal type and resize behavior. The mouse suite can be exercised with both the normal terminal type and tmux's terminal type:
python3 test/mouse_test.py
SUPERTERM_TEST_TERM=tmux-256color python3 test/mouse_test.pyThe bundled FreeVision overlay contains the wide-screen and mouse behavior required by the project.
Keep ~/.superterm mode 700 when it contains credentials and prefer SSH keys
or an SSH agent. Never commit personal configuration files, private keys, or
debug logs to the repository.
Built for GNU/Linux and macOS with Free Pascal and FreeVision.