1
2
submitted 19 hours ago by tun@lemm.ee to c/terminal@lemm.ee

released on Oct 6, 2024

  • Fix flash of white during startup on Microsoft Windows #640.
  • Add DWMWA_CLOAK support on Microsoft Windows.
  • VI Mode now supports search by @orhun.
  • Use max frame per seconds based on the current monitor refresh rate.
  • breaking renderer.max-fps has been changed to renderer.target-fps.
  • Fix background color for underline and beam cursors when using transparent window.
  • Fix IME color for underline and beam cursors.
  • Add default for Style property on Sugarloaf font.

Homepage - Github

2
9
submitted 4 days ago by tun@lemm.ee to c/terminal@lemm.ee

How does a terminal emulator work? What are ANSI escape codes? Understanding terminal internals for development, fun and mischief.

The blog post "Anatomy of a Terminal Emulator" on poor.dev provides a broad introduction to terminal emulators, focusing on their components and interactions. It explains the role of the terminal emulator in interpreting data from the shell and displaying it, often using ANSI escape codes for formatting. The post describes the connection between the terminal emulator and the shell through a pseudoterminal (pty), detailing how input and output are handled. It includes Rust code examples to demonstrate these concepts, making it accessible to both new and experienced developers. Additionally, it discusses creating user interfaces in the terminal and touches on responsive design using the SIGWINCH signal.

The summary is created using ChatGPT-4o

3
2
submitted 5 days ago by tun@lemm.ee to c/terminal@lemm.ee

tym is a Lua-configurable terminal emulator base on VTE.

  • Lua-configurable: Allows customization using Lua scripts.
  • VTE Based Terminal Emulator: supporting various terminal functionalities provided by VTE
  • Customizable Appearance: Supports theme customization through Lua scripts.
  • Keymap Customization: Ability to set custom keymaps and hooks.
  • D-Bus Communication: Supports interprocess communication using D-Bus.
  • Configuration Options: Various configuration fields for appearance and behavior, such as shell, font, colors, and more.
  • Daemon Mode: Can run as a background process.
  • Hooks and Signals: Offers hooks for various actions and can send/receive D-Bus signals.
  • Scripting Capabilities: Supports executing Lua scripts and handling D-Bus method calls.

The feature list is generated by ChatGPT-4o and edited by me.

Github

4
19
submitted 1 week ago* (last edited 1 week ago) by tun@lemm.ee to c/terminal@lemm.ee

Julia Evans' blog post "Terminal colours are tricky" discusses the challenges of configuring terminal colors. The key points are:

  • Common Issues: Many users encounter problems like hard-to-read color combinations (e.g., blue on black, bright yellow on white) and inconsistencies across different terminal emulators.

  • ANSI Colors: Terminals typically use 16 ANSI colors, but there's no standard for what these colors look like, leading to variations.

  • Configuration Methods: Users can reconfigure colors either by adjusting settings in their terminal emulator or by using shell scripts. The author prefers shell scripts for consistency across different emulators.

  • Program Compatibility: Issues can arise when programs use 256-color sets or specify their own color schemes, leading to clashes with the terminal's settings.

  • Minimum Contrast Feature: Some terminal emulators have a "minimum contrast" feature that helps ensure text is readable by automatically adjusting colors.

  • Vim Integration: The post highlights the evolution of Vim's color handling, noting that recent versions support 24-bit colors, alleviating some configuration headaches.

  • Recommendations: The author suggests using base16-shell and base16-vim for better theme integration and mentions popular color schemes.

Overall, the post emphasizes the complexities of terminal color configurations and offers insights into potential solutions.

Summary is generated by POE assistant. You can read the original post here.

5
34
submitted 1 week ago by tun@lemm.ee to c/terminal@lemm.ee

The blog post "State of the Terminal" by Gregory Anders discusses the evolution of terminal emulators and the challenges they face in adapting to modern needs. It highlights how terminals have remained largely unchanged since the 1970s, still relying on archaic concepts like ASCII control codes and escape sequences. Despite advancements in computing, terminal emulators struggle to keep up with new features like rich text or multimedia support. The author suggests that while the terminal's simplicity is powerful, a reimagining may be needed for it to thrive in modern environments.

You can read the full article here. (20-25 minutes)

Summary generated by ChatGPT-4o

6
10
submitted 1 week ago by tun@lemm.ee to c/terminal@lemm.ee

Shell In A Box implements a web server that can export arbitrary command line tools to a web based terminal emulator. This emulator is accessible to any JavaScript and CSS enabled web browser and does not require any additional browser plugins.

Overview

Shell In A Box implements a web server that can export arbitrary command line tools to a web based terminal emulator. This emulator is accessible to any JavaScript and CSS enabled web browser and does not require any additional browser plugins. Most typically, login shells would be exported this way:

shellinaboxd -s /:LOGIN

This command starts a web server at http://localhost:4200 that allows users to login with their username and password and to get access to their login shell.

All client-server communications are encrypted, if SSL/TLS certificates have been installed.

Homepage - Github

7
8
submitted 1 week ago by tun@lemm.ee to c/terminal@lemm.ee

Simple terminal emulator for Wayland and X11 with OpenGL rendering and minimal dependencies.

This is roughly alpha quality, expect bugs!

Features

  • Unicode support
  • Text reflow
  • 24-bit colors
  • Dynamic colors
  • All text properties (squiggly underline, blinking, overline etc.)
  • Resizable font
  • Subpixel antialiasing
  • Mouse reporting
  • Scrollback
  • Mouse text selection
  • Clipboard
  • Configurable keybindings
  • Clickable links, OSC 8 links
  • Command history and marks*
  • Terminal image protocol and sixel graphics (experimental)

Limitations

  • UTF8 mode only
  • No Bidi support
  • No font ligatures

Gihub

8
13
submitted 2 weeks ago* (last edited 2 weeks ago) by YourShadowDani@lemm.ee to c/terminal@lemm.ee

I've been trying to get image previews working in something this week, inside ZelliJ and wasn't able to find anything until a post in a Linux community about Foot.

Foot terminal emulator + ZelliJ + Yazi gives me what I wanted.

Now if only TTY supported SIXEL...

9
6
MobaXterm [Windows][freemium] (mobaxterm.mobatek.net)
submitted 2 weeks ago by tun@lemm.ee to c/terminal@lemm.ee

Enhanced terminal for Windows with X11 server, tabbed SSH client, network tools and much more

Home Edition (Free)

  • Full X server and SSH support
  • Remote desktop (RDP, VNC, Xdmcp)
  • Remote terminal (SSH, telnet, rlogin, Mosh)
  • X11-Forwarding
  • Automatic SFTP browser
  • Master password protection
  • Plugins support
  • Portable and installer versions
  • Full documentation
  • Max. 12 sessions
  • Max. 2 SSH tunnels
  • Max. 4 macros
  • Max. 360 seconds for Tftp, Nfs and Cron

Professional Edition (69 USD/49 EURO per person)

  • Every feature from Home Edition +
  • Customize your startup message and logo
  • Modify your profile script
  • Remove unwanted games, screensaver or tools
  • Unlimited number of sessions
  • Unlimited number of tunnels and macros
  • Unlimited run time for network daemons
  • Enhanced security settings
  • 12-months updates included
  • Deployment inside company
  • Lifetime right to use

Homepage

10
0
submitted 2 weeks ago by tun@lemm.ee to c/terminal@lemm.ee

Fluent Terminal by F5 Apps is a terminal emulator that looks strikingly close to the original, yet it comes with a few additional environments. Along with PowerShell and Command Prompt, it also supports WSL, Remote Connect via SSH, and a Quick Launch button.
maketecheasier.com

Features

  • Terminal for PowerShell, CMD, WSL or custom shells
  • Built-in support for SSH and Mosh connections
  • Supports tabs and multiple windows
  • Theming and appearance configuration
  • Import/Export themes
  • Import iTerm themes
  • Fullscreen mode
  • Editable keybindings
  • Search function
  • Configure shell profiles to quickly switch between different shells
  • Explorer context menu integration (Installation script can be found here)

Microsoft App Store - Github

11
6
submitted 3 weeks ago by tun@lemm.ee to c/terminal@lemm.ee

Change log

  • macOS package is now Apple Silicon native
  • Add CoreText font fallback implementation for macOS (#1533)
  • Add Ubuntu-24.04 in github actions (#1460)
  • Add 'early_exit_threshold' config option (#1460)
  • Add AppImage package with Qt6 support (#586)
  • Add ability to customize the indicator statusline through configuration (#687)
  • Add generation of config file from internal state (#1282)
  • Add SGRSAVE and SGRRESTORE VT sequences to save and restore SGR state (They intentionally conflict with XTPUSHSGR and XTPOPSGR)
  • Add extended word selection feature (#1023)
  • Add some more missing vi input motions, such as y$, o$, and many others as initiated by y and o (#1441)
  • Add CPM fallback for the dependencies
  • Add static build
  • Add shell integration for bash shell.
  • Add better bell sound (#1378)
  • Add config entry to configure behaviour on exit from search mode
  • Add config entry to configure font fallback (#225)
  • Add handling of different input commands (#629)
  • Add key bindings disabled indicator for status line (#783)
  • Add support for highlighting matches of the currently selected text area (beyond double click)
  • When switching to normal mode screen will stay in same position (#808)
  • Add customizable per-input-mode default text/background coloring for indicator statusline (#1528)
  • Add option PasteSelection to paste text as a shell input (#1549)
  • Add case-insensitive smart search (#1410)
  • Add OpenBSD support
  • Add new CLI command: contour info config to list missing entries from config file (#1125).
  • Add xdg-terminal-exec support (#1570).
  • Add predefined color palettes (monokai, gruvbox-light/dark, solarized-light/dark, papercolor-light/dark, one-light, one-dark) (#1285).
  • Update of contour.desktop file (#1423)
  • Changed configuration entry values for font_locator down to native and mock only (#1538).
  • Do not export the TERM environment variable on Windows OS (when using ConPTY).
  • Fixes line corruption after resize (#883)
  • Fixes resize of trivial line (#916)
  • Fixes copying of wrapped line
  • Fixes deletion of spaces on resize
  • Fixes forwarding of input while in normal mode (#1468)
  • Fixes OSC-8 link id collision (#1499)
  • Fixed overlap of glyphs for long codepoints (#1349)
  • Fixed too verbose info during ssh session login (#1447)
  • Fixes corruption of sixel image on high resolution (#1049)
  • Fixes bad wording of OS/X to macOS (#1462)
  • Fixes key bindings and search prompt collision (#1472)
  • Fixes CSI 8 ; (COLS) ; (ROWS) t to resize the terminal with respect to High-DPI
  • Fixes screen sampling with multiple monitors (#940)
  • Fixes bell sound in spawned window in same process (#1515)
  • Fixes status line crush (#1511)
  • Fixes application window icon on (KDE) Wayland
  • Fixes missing keymapping for numpad (#1325)
  • Improves handling of constant bell sound spawning
  • Fixes yW (yank WORD) not working properly in normal mode (#1448)
  • Fixes key mapping Shift+Tab (#1578)

released: 2024/09/18

12
10
submitted 3 weeks ago* (last edited 3 weeks ago) by tun@lemm.ee to c/terminal@lemm.ee

A terminal for iOS, with multiple windows

  • Unix-like shell environment (zsh/dash)
  • Supports Python, Lua, JavaScript, and WebAssembly (Wasm) scripting
  • Access to local file system and file management commands
  • Code editing with vim and ed
  • Network tools: curl, ping, nslookup
  • SSH for remote server access and scp for secure file transfers
  • Full Python 3 environment and JavaScript with Node.js-like functionality
  • Package management via pip and npm
  • LaTeX/TeX support for PDF creation and manipulation
  • Web access tools (js, fetch)
  • Built-in man pages and help documentation
  • iOS Shortcuts integration for automation
  • Split View/Slide Over multitasking support on iPad
  • Privacy: all code/data stays on-device unless configured otherwise
  • Free and open source

N.B. feature set summarized by ChatGPT

App Store - Github

13
12
submitted 3 weeks ago by tun@lemm.ee to c/terminal@lemm.ee

Features

  • A terminal emulator running a Linux shell using Alpine Linux.
  • Install and run Linux tools directly on iOS.
  • Basic file system access and package manager (apk).
  • Available on Apple Store and AltStore
  • Free and open source

Homepage - Github

14
12
Termux [Android] (f-droid.org)
submitted 4 weeks ago by tun@lemm.ee to c/terminal@lemm.ee

Termux - a terminal emulator application for Android OS extendible by variety of packages.

Feature

  1. Linux Environment on Android
  2. APT Package Management
  3. Bash and Zsh Shell Support
  4. Access to Linux Utilities
  5. Programming Languages Support
  6. SSH Client and Server
  7. File System Access
  8. Git Version Control
  9. Python and Jupyter Notebooks
  10. Customizable Environment
  11. Text Editors (Nano, Vim, Emacs)
  12. Termux API Access
  13. VNC Support
  14. Containerization with Proot
  15. Python and Ruby-based Automation
  16. Compiling Native Code
  17. Networking Tools
  18. Wget and Curl for Downloads
  19. Multi-session Support
  20. Terminal Multiplexing (Tmux)
  21. F-Droid and Google Play Availability
  22. Secure Environment
  23. Persistent Storage
  24. Cross-Platform Portability
  25. Clipboard Integration

Homepage - Github

N.B. Feature set is from ChatGPT-4o

15
3
submitted 4 weeks ago* (last edited 4 weeks ago) by tun@lemm.ee to c/terminal@lemm.ee

Cmder is a software package created out of pure frustration over absence of usable console emulator on Windows. It is based on ConEmu with major config overhaul, comes with a Monokai color scheme, amazing clink (further enhanced by clink-completions) and a custom prompt layout.

The main advantage of Cmder is portability. It is designed to be totally self-contained with no external dependencies, which makes it great for USB Sticks or cloud storage. So you can carry your console, aliases and binaries (like wget, curl and git) with you anywhere.

Homepage - Github

16
0
submitted 1 month ago* (last edited 1 month ago) by tun@lemm.ee to c/terminal@lemm.ee

The goal of the project is to create a beautiful and extensible experience for command-line interface users, built on open web standards. In the beginning, our focus will be primarily around speed, stability and the development of the correct API for extension authors.

In the future, we anticipate the community will come up with innovative additions to enhance what could be the simplest, most powerful and well-tested interface for productivity.

  • based on xterm.js
  • web based and cross platform
  • plugins support
  • theme support
  • hotkey support

Homepage - Github

17
41
submitted 1 month ago by tun@lemm.ee to c/terminal@lemm.ee

Tabby (formerly Terminus) is a highly configurable terminal emulator, SSH and serial client for Windows 10, macOS and Linux

  • Integrated SSH and Telnet client and connection manager
  • Integrated serial terminal
  • Theming and color schemes
  • Fully configurable shortcuts and multi-chord shortcuts
  • Split panes
  • Remembers your tabs
  • PowerShell (and PS Core), WSL, Git-Bash, Cygwin, MSYS2, Cmder and CMD support
  • Direct file transfer from/to SSH sessions via Zmodem
  • Full Unicode support including double-width characters
  • Doesn't choke on fast-flowing outputs
  • Proper shell experience on Windows including tab completion (via Clink)
  • Integrated encrypted container for SSH secrets and configuration
  • SSH, SFTP and Telnet client available as a web app (also self-hosted).

Homepage - Github

18
2
Terminology: EFL based terminal emulator (raw.githubusercontent.com)
submitted 1 month ago by tun@lemm.ee to c/terminal@lemm.ee

The best terminal emulator based on the Enlightenment Foundation Libraries

This is an EFL terminal emulator with some extra bells and whistles such as the ability to display in-line images, video and even play music files, background images, videos, Z-Modem like sending (e.g. SSH into a server and use tysend to send a file back to the local terminal), GPU Accelerated rendering (optional - just set the EFL Elementary toolkit engine to use OpenGL) and much more.

Homepage - Github

19
6
st: simple terminal (st.suckless.org)
submitted 1 month ago by tun@lemm.ee to c/terminal@lemm.ee

Features

  • most VT10X escape sequences
  • serial line support
  • XIM support
  • utmp via utmp(1)
  • clipboard handling
  • mouse and keyboard shortcuts (via config.h)
  • UTF-8
  • wide-character support
  • resize
  • 256 colors and true colors
  • antialiased fonts (using fontconfig)
  • fallback fonts
  • line drawing

Configuration is done with config.h.

You can apply patches to have different appearance, features and behaviors.

Homepage - Source code

20
13
submitted 1 month ago by tun@lemm.ee to c/terminal@lemm.ee

Features

  • Fast
  • Lightweight, in dependencies, on-disk and in-memory
  • Wayland native
  • DE agnostic
  • Server/daemon mode
  • User configurable font fallback
  • On-the-fly font resize
  • On-the-fly DPI font size adjustment
  • Scrollback search
  • Keyboard driven URL detection
  • Color emoji support
  • IME (via text-input-v3)
  • Multi-seat
  • True Color (24bpp)
  • Synchronized Updates support
  • Sixel image support

Github - Homepage

21
5
submitted 1 month ago by tun@lemm.ee to c/terminal@lemm.ee

Tilix is a tiling terminal emulator which uses the VTE GTK+ 3 widget with the following features:

  • Layout terminals in any fashion by splitting them horizontally or vertically
  • Terminals can be re-arranged using drag and drop both within and between windows
  • Terminals can be detached into a new window via drag and drop
  • Tabs or sidebar list current sessions
  • Input can be synchronized between terminals so commands typed in one terminal are replicated to the others
  • The grouping of terminals can be saved and loaded from disk
  • Terminals support custom titles
  • Color schemes are stored in files and custom color schemes can be created by simply creating a new file
  • Transparent background
  • Background images
  • Quake mode support (i.e. drop-down terminal)
  • Custom hyperlinks
  • Automatic (triggered) profile switches based on hostname and directory
  • Supports notifications when processes are completed out of view. Requires the Fedora notification patches for VTE
  • Experimental trigger support (Requires patched VTE, see wiki)
  • Experimental badge support (Requires patched VTE, see wiki)

Homepage - Github

22
-3
submitted 1 month ago by tun@lemm.ee to c/terminal@lemm.ee

Warp is the terminal with AI and your dev team's knowledge built-in.

As of Feb 2024, Warp is available to macOS and Linux users, without joining a wait-list. They have plans to support Windows and the Web (WASM)!

Home - Github

23
4
submitted 1 month ago by tun@lemm.ee to c/terminal@lemm.ee

A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust

Features

  • Runs on Linux, macOS, Windows 10 and FreeBSD
  • Multiplex terminal panes, tabs and windows on local and remote hosts, with native mouse and scrollback
  • Ligatures, Color Emoji and font fallback, with true color and dynamic color schemes.
  • Hyperlinks
  • Searchable Scrollback (use mouse wheel and Shift-PageUp and Shift PageDown to navigate, Ctrl-Shift-F to activate search mode)
  • xterm style selection of text with mouse; paste selection via Shift-Insert (bracketed paste is supported!)
  • SGR style mouse reporting (works in vim and tmux)
  • Render underline, double-underline, italic, bold, strikethrough (most other terminal emulators do not support as many render attributes)
  • Configuration via a configuration file with hot reloading
  • Multiple Windows (Hotkey: Super-N)
  • Splits/Panes (Split horizontally/vertically: Ctrl-Shift-Alt-% and Ctrl-Shift-Alt-", move between panes: Ctrl-Shift-ArrowKey)
  • Tabs (Hotkey: Super-T, next/prev: Super-Shift-[ and Super-Shift-], go-to: Super-[1-9])
  • SSH client with native tabs
  • Connect to serial ports for embedded/Arduino work
  • Connect to a local multiplexer server over unix domain sockets
  • Connect to a remote multiplexer using SSH or TLS over TCP/IP
  • iTerm2 compatible image protocol support, and built-in imgcat command
  • Kitty graphics support
  • Sixel graphics support (experimental: starting in 20200620-160318-e00b076c)

Homepage - Github

24
3
Electerm [linux][macOS][windows] (electerm.html5beta.com)
submitted 1 month ago by tun@lemm.ee to c/terminal@lemm.ee

πŸ“» Terminal/ssh/telnet/serialport/RDP/VNC/sftp client (linux, mac, win)

Features

  • Works as a terminal/file manager or ssh/telnet/serialport/RDP/VNC/sftp β†’ client
  • Global hotkey to toggle window visibility (similar to guake, default is ctrl + 2)
  • Multi platform(linux, mac, win)
  • πŸ‡ΊπŸ‡Έ πŸ‡¨πŸ‡³ πŸ‡§πŸ‡· πŸ‡·πŸ‡Ί πŸ‡ͺπŸ‡Έ πŸ‡«πŸ‡· πŸ‡ΉπŸ‡· πŸ‡­πŸ‡° πŸ‡―πŸ‡΅ πŸ‡ΈπŸ‡¦ πŸ‡©πŸ‡ͺ πŸ‡°πŸ‡· Multi-language support(electerm-locales, contributions/fixes welcome)
  • Double click to directly edit (small) remote files.
  • Auth with publicKey + password.
  • Support Zmodem(rz, sz).
  • Support ssh tunnel.
  • Support Trzsz(trz/tsz), similar to rz/sz, and compatible with tmux.
  • Transparent window(Mac, win).
  • Terminal background image.
  • Global/session proxy.
  • Quick commands
  • UI/terminal theme
  • Sync bookmarks/themes/quick commands to github/gitee secret gist
  • Quick input to one or all terminals.
  • Command line usage: checkwiki

Homepage - Github

25
5
Contour: Modern C++ Terminal Emulator (raw.githubusercontent.com)
submitted 1 month ago by tun@lemm.ee to c/terminal@lemm.ee

Contour is modern, fast, and designed for everyday use. It's not just a terminal emulator, but a powerhouse of features tailored for those who seek efficiency and control. With GPU-accelerated rendering and high-DPI support, experience the smoothest and most responsive terminal emulator like never before.

Contour is designed with the advanced power user in mind, offering high-speed, feature-rich functionality across all major platforms. From Linux and macOS to FreeBSD, OpenBSD and Windows, we've got you covered.

Homepage - Github

view more: next β€Ί

Terminal Emulators

84 readers
2 users here now

A home for discussion of terminal emulators for all platforms.

RULES:

founded 1 month ago
MODERATORS