Terminal 0.1.8

Terminal is a mobile-focused terminal emulator for Ubuntu Touch, with a real native PTY and a custom keyboard for shell work and full-screen programs such as nano and vim. The feature direction is based on xfce4-terminal's everyday workflow, adapted for touch using original MIT-0 code.

One compact icon bar contains New instance, Select, Copy, Paste, Bottom, Show/Hide keys and a top-right hamburger menu. There is no title label, tab strip or separate action row. Hold an icon to see its label.

The plus button starts a separate Terminal process with its own PTY, shell and scrollback instead of adding a tab. Lomiri may group processes/windows and their lifecycle under one application identity. Independent phone-mode switcher entries and lifecycle behavior require device verification; they are not guaranteed by this release.

The portrait keyboard has a narrower Space key and more room for Caps, Esc and Tab. The redundant Hide key is removed. Shift and Super become Sft and Spr only when their full labels do not fit. Keyboard labels fit their key bounds without ellipses. Short keyboard viewports scroll vertically, and the Fn page's left/right modifiers scroll horizontally on narrow screens.

Features include unlimited scrollback by default; touch selection and copy/paste without application confirmation warnings; hardware keyboard input; light/dark modes; configurable font size, keyboard height and cursor style; scrollback-position preservation; and responsive, scrollable settings/menu/About views.

The paged keyboard contains standard alphanumeric, punctuation, modifier, function, navigation and arrow keys, including Esc, Tab and Caps Lock. Num Lock and the numeric keypad are intentionally omitted. Ubuntu Touch's built-in on-screen keyboard is suppressed and not used.

VT/xterm-style handling includes alternate screen buffers, 16/256/true-color output, application cursor mode, bracketed paste and PTY resizing for orientation and keyboard-layout changes. Compatibility is not exhaustive.

Settings are written immediately with QSettings setValue() plus sync() inside the terminal.barrydegraaff package-ID configuration directory. A clean shutdown is not required. Instances share preferences and reload them when activated. Secret/token values use the same immediate UTF-8 write path; they are not encrypted. JSON export excludes secrets unless explicitly enabled. There is currently no API-key entry form.

The app uses an unconfined AppArmor profile to launch the user's shell and commands. Paste and app-initiated close operations have no confirmation prompts.

License: MIT No Attribution (MIT-0).

This application was vibe coded using an AI.

Changes in 0.1.8: single icon toolbar; no title or tabs; separate-process instance launch; narrower portrait Space; readable keyboard labels and Sft/Spr fallbacks; no keyboard Hide key; viewport-sized scrolling dialogs; persistent navigation positions; multi-instance preference reload; additional regression coverage.
