This article needs additional citations for verification. (September 2014) |
In computing, text-based user interfaces (TUI) (alternately terminal user interfaces, to reflect a dep In addition, the rise in popularity of Linux brought many former DOS users to a Unix-like platform, which has fostered a DOS influence in many TUIs. The program minicom, for example, is modeled after the popular DOS program Telix. Some other TUI programs, such as the Twin desktop, were ported over.


Most Unix-like operating systems (Linux, FreeBSD, etc.) support virtual consoles, typically accessed through a Ctrl-Alt-F key combination. For example, under Linux up to 64 consoles may be accessed (12 via function keys), each displaying in full-screen text mode.
The free software program GNU Screen provides for managing multiple sessions inside a single TUI, and so can be thought of as being like a window manager for text-mode and command-line interfaces. Tmux can also do this.
The proprietary macOS text editor BBEdit includes a shell worksheet function that works as a full-screen shell window. The free Emacs text editor can run a shell inside of one of its buffers to provide similar functionality. There are several shell implementations in Emacs, but only ansi-term
is suitable for running TUI programs. The other common shell modes, shell
and eshell
only emulate command lines and TUI programs will complain "Terminal is not fully functional" or display a garbled interface. The free Vim and Neovim text editors have terminal windows (simulating xterm). The feature is intended for running jobs, parallel builds, or tests, but can also be used (with window splits and tab pages) as a lightweight terminal multiplexer.
OpenVMS
VAX/VMS (later known as OpenVMS) had a similar facility to curses known as the Screen Management facility or SMG. This could be invoked from the command line or called from programs using the SMG$ library.[1]
Oberon
Another kind of TUI is the primary interface of the Oberon operating system, first released in 1988 and still maintained. Unlike most other text-based user interfaces, Oberon does not use a text-mode console or terminal, but requires a large bit-mapped display, on which text is the primary target for mouse clicks. Commands in the format Module.Procedure parameters ~
can be activated with a middle-click, like hyperlinks. Text displayed anywhere on the screen can be edited, and if formatted with the required command syntax, can be middle-clicked and executed. Any text file containing suitably-formatted commands can be used as a so-called tool text, thus serving as a user-configurable menu. Even the output of a previous command can be edited and used as a new command. This approach is radically different from both conventional dialogue-oriented console menus or command line interfaces.
Since it does not use graphical widgets, only plain text, but offers comparable functionality to a GUI with a tiling window manager, it is referred to as a Text User Interface or TUI. For a short introduction, see the 2nd paragraph on page four of the first published Report on the Oberon System.[2]
Oberon's UI influenced the design of the Acme text editor and email client for the Plan 9 from Bell Labs operating system.
In embedded systems
Modern embedded systems are capable of displaying TUI on a monitor like personal computers. This functionality is usually implemented using specialized integrated circuits, modules, or using FPGA.
Video circuits or modules are usually controlled using VT100-compatible command set over UART,[citation needed] FPGA designs usually allow direct video memory access.[citation needed]
Other uses
- The full screen editor of the Commodore 64 8-bit computers was advanced in its market segment for its time. Users could move the cursor over the entire screen area, entering and editing BASIC program lines, as well as direct mode commands. All Commodore 8-bit computers used the PETSCII character set, which included character glyphs suitable for making a TUI.
- Apple's Macintosh Programmer's Workshop programming environment included Commando, a TUI shell. It was the inspiration for BBEdit's shell worksheet.
- Later Apple II models included MouseText, a set of graphical glyphs used for making a TUI.
- The Corvus Concept computer of 1982 used a function key-based text interface on a full-page pivoting display.
See also
- Command-line interface
- Console application
- Natural language user interface
- Text-based game, a game using a TUI
Examples of programming libraries
- curses (programming library)
- ncurses
- CDK
- Newt, a widget-based toolkit
- Turbo Vision
- Early versions of Visual Basic
References
- ^ "OpenVMS RTL Screen Management (SMG$) Manual". hpe.com. 2001. Retrieved 2021-01-01.
- ^ Niklaus Wirth & Jürg Gutknecht: (1988) The Oberon System. Report Nr. 88.