Another Term
What it is
The successor of Another Term Lite.
Initially it was decided to fill the gap in USB serial dongle terminals that provide features allow comfortable work without a hardware keyboard. However as time passed, it has grown into something closer to Termux. Built-in SSH client has also been added.
See README.md.
Terminal features
-
Sane built-in screen keyboard (with a key modifiers wheel).
-
Customizable key mapping profiles aka “where is my Backspace?” but much wider (Alpine, for example, has unusual key mappings for Shift-F*).
-
Rich select and search features.
-
Customizable color mapping profiles.
-
Mouse support and screen mouse overlay for handy multitouch input.
-
VT52 mode support (like XTerm) because why not?
To be added in future
-
Double height / width letters.
-
Sixel graphics support.
SSH features
-
Allowed encryption algorithms and their priority configuration on per session profile basis.
-
Encryption algorithms negotiation process and its result can be seen under the session log button.
-
Client certificate authentication.
-
Port forwarding settings can be changed on a live session.
-
Additional shell channels can be opened in a live session.
To be added in future
-
Proxy support.
rather sooner -
Dynamic local port forwarding (SOCKS4&5), see
ssh -D
.
I see no reason to implement the remote one.
rather sooner -
SSH agent forwarding protocol support.
rather sooner -
Kerberos 5 authentication.
rather later
Local shell features
-
Passing content between shell and Android applications — see termsh commands list and content sharing with Another Term.
- Implemented a bit better than Termux:
- passing descriptors via
SCM_RIGHTS
ancillary messages instead of copying data; - credentials checking to prevent possible spoofing attacks;
- proper chrooted environments support by termsh as all the “name<=>fd” operations are performed by the client side and thus inside the said environment: only the file descriptors are passed to the service side (inside the application process);
- better USB support (see below).
- passing descriptors via
-
Shell plugins in separate APKs with dev API and signature checking.
-
It’s supposed to use PRoot with existing Linux repositories — Installing Linux under PRoot.
-
libusb (with device enumeration and hot plug/unplug events) support on nonrooted Android.
- Access USB and Bluetooth serial dongles right from the shell:
... | "$TERMSH" serial 9600 | ...
see serial port examples.