This is an old revision of the document!
Table of Contents
Lantern Terminal user guide
Theme
Choose Options → Theme → System, Light or Dark. Themes apply immediately and the choice is saved with your settings. System uses the desktop palette available when the application starts. These controls affect the application interface; terminal foreground/background/cursor colours remain session settings. The new-session wizard uses the same readable palette and shows the fields for its selected protocol.
SSH authentication and server trust
A password prompt appears only if the server offers password or keyboard-interactive authentication. If the error is Permission denied (publickey), choose an authorised private key under Session Properties → Connection → SSH2 → Private key / identity, or use your SSH agent. Trusting the server fingerprint does not authenticate your account. Accepted server keys are shared by the application profile and survive recreating saved sessions.
Connections
Choose File → Quick Connect for an immediate SSH2/SFTP/Telnet/raw/serial/local connection. File → New session walks through protocol, endpoint and name/folder. Saved entries are in the Sessions pane. Double-click an entry, or select entries/folders and choose Connect selected.
For SSH, supply the hostname, port, username and optionally a private key in Session Properties. Authentication and unknown/changed host-key messages appear in the terminal. Accept a key only after checking its fingerprint. The host-key database belongs to the current application profile. Tools → Manage host keys lets you inspect/import/export it.
SSH settings include jump hosts, agent forwarding, compression, algorithm preferences and local/remote/dynamic forwards. Forward lines use L|127.0.0.1:8080:target:80, R|127.0.0.1:8080:target:80 or D|127.0.0.1:1080. Forwarding only requests no shell. Trusted advanced OpenSSH options use one Key=Value line each.
Local shells use a PTY on Linux and ConPTY on Windows. Serial connections use device paths or COM names and configurable baud/format/flow/break settings. Telnet negotiates terminal type and window size. Raw TCP passes bytes without protocol framing.
Profiles and settings
Right-click entries to edit, rename, cut/copy/paste or delete. To arrange sessions or folders yourself, select one entry and choose Move up (manual order) or Move down (manual order). This switches sorting to Manual and stores the current sibling order. Clear the filter before arranging entries. Choose Natural or Alphabetical in Global Settings to sort automatically again. Expanded folders and manual order survive restarting.
Select a saved session, then choose Create desktop shortcut… from its context menu, or File → Create session desktop shortcut…. Choose where to save the Linux .desktop launcher or Windows .lnk shortcut. The shortcut retains the configuration root and stable session ID, so renaming or moving the session does not break it. Your desktop may ask you to allow launching a new Linux desktop file. Removing the saved session leaves a shortcut that reports the missing session. Live filtering narrows the tree; a trailing / includes matching folders. Global Settings controls application behaviour. Default Session sets initial preferences for new sessions and offers explicit propagation of changed fields. Multi-selection editing changes only modified fields.
Options → Session properties edits the active session. Several transport settings take effect on reconnect; appearance/input options can apply immediately. Save active ad hoc settings with File → Save current session. If automatic saving is disabled, use Options → Save settings now to commit changes before exit. Global, session and invocation options use separate scopes.
Imports accept native JSON/XML and simple comma/tab text rows (name,host,protocol,port,username,folder). Use tabs for values containing commas. Import is previewed before applying and asks how to handle conflicting session names. Export does not contain passwords or private-key bytes.
Terminal
The terminal supports colour, Unicode, primary/alternate screens, cursor modes, line drawing, selection and scrollback. In Session properties → Terminal → Appearance, foreground, background and cursor colours each have a swatch and Choose colour… button. Select from the visual palette; entering a colour code is optional. Use Ctrl+Shift+C / Ctrl+Shift+V to copy/paste. Ctrl+C remains a remote interrupt unless Windows-style copy hotkeys are explicitly enabled. Shift+PageUp/PageDown scroll locally. Hold Shift to select locally when a remote application uses mouse tracking. Ctrl+mouse wheel changes font size.
Use the toolbar phrase box for temporary highlights, or configure permanent pattern/colour/regex rows under Terminal → Highlighting. Search with Ctrl+F. Clear screen, scrollback and reset are separate Edit commands. Hex View displays recent received bytes. Multi-line paste asks for confirmation at the configured threshold. Cancelling sends nothing; Edit → Cancel pending paste/send stops queued paced input.
Lock a session from File; choose a local unlock password. Locked sessions stay connected but hide their screen and reject scripted reads and broadcast input. Unlock restores the same session.
Tabs, groups and commands
Drag tabs to reorder within a group. Window menu commands create horizontal/vertical groups, collapse them, or move a tab to the next group. Right-click tabs for reconnect, clone, rename/reset, save and properties. Active Sessions lists open connections and supports selected disconnect/close/lock actions.
The Command window's destination selector is explicit: active, all, visible, or selected groups. Send submits text to exactly that scope; locked/disconnected tabs are skipped. Mark a group with Window → Send commands to this group. Group recipients have a leading asterisk in their tab labels.
Commands have labels, descriptions, folder, colour and a typed action. Script actions also accept a quoted argument list. Tools → New command/button adds one. Commands can send text, run Python scripts, launch a trusted local application, connect a saved session, or invoke supported terminal menu actions. Literal send strings recognise \r, \n, \t and \e.
Right-click commands or command folders to Cut, Copy and Paste. Copies receive independent IDs and preserve their exact action text and escapes. Paste uses the selected command folder. Cutting moves the existing commands only when you paste in the same application window; pasting into another instance copies them. Nothing runs merely because it is copied or pasted.
Choose Tools → Manage button bars… or Manage bars… on the button toolbar. Create, copy, rename or delete named bars; add/edit/remove buttons and move them up/down. A bar links to saved command definitions: editing a command updates every bar using that command. Removing a button or deleting a bar keeps its commands. Deleting a command removes its buttons from every bar. Copy buttons and Copy bar commands put action records on the clipboard so they can be pasted into Command Manager or another bar.
Right-click selected commands and choose Add to button bar to link existing actions to a bar. Paste commands in the bar manager creates independent copies of the clipboard actions and adds them in order. The toolbar selector chooses the active session's bar; without an active session it chooses the global bar. Use global bar follows the global choice, and No button bar hides action buttons. Use globally in the bar manager sets the global choice. Session Properties → Terminal → Buttons and Global Settings → Terminal → Buttons also offer the bar selector. Old single-bar configurations migrate to a bar called Default.
Save a named snapshot from File to retain session settings and tab-group layout. Manage snapshots to open, rename, duplicate or delete them. Snapshots are not remote process checkpoints.
Files and logs
Open an SFTP terminal from an SSH tab. Its interactive client supports help, ls, cd, lcd, pwd, get, put, recursive transfers, permissions and filename completion. Quote paths containing spaces. Use the Transfer menu for SFTP uploads or terminal text/binary sends.
Start, pause/resume and stop logs through File. Session Properties controls raw/text mode, filename templates, append, timestamps, line prefixes and rotation. %Y/%M/%D are date, %h/%m/%s are time, %H host and %S session. Raw logs preserve received bytes; text logs filter terminal escape sequences. Logging failures are reported without closing the connection.
The optional TFTP server starts only when chosen in Transfer. Configure upload/download roots, UDP port, overwrite and client-address restrictions in Global Settings. Use octet transfer mode. It rejects paths outside its configured roots.
Automation and help
Run Python scripts from Script, cancel them independently of the session, or record send actions into an editable Python file. See SCRIPTING-GUIDE.md for prompt matching and examples. Recording is a send-action skeleton and may need explicit waits before reuse. Recognised password/passphrase/PIN prompt entries are replaced by comments, but review any recording before sharing it.
Help → Features and capabilities lists included and unavailable compatibility features. Build instructions and the detailed specification are available offline. Help → About shows version and the exact configuration directory.
Saved-session launch commands
Use a saved session's stable ID, unique name or full folder/name. Repeat –open-session to open several sessions. An ambiguous name produces a message instead of selecting an arbitrary connection. The earlier –session spelling remains an alias.
lantern-terminal --open-session 'Work/Server' lantern-terminal --config "$HOME/terminal-work" --open-session SESSION_ID lantern-terminal --config "$HOME/terminal-work" --open-session SESSION_ID --create-shortcut "$HOME/Desktop/Server.desktop"
On Windows, use a .lnk output filename for –create-shortcut. A shortcut contains references and launch arguments, not saved passwords or private-key contents.
