Text-based user interface

This is an old revision of this page, as edited by 188.240.176.30 (talk) at 13:26, 18 November 2021 (g). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

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.

Some file managers implement a TUI (here: Midnight Commander)
Vim is a very widely used TUI text editor

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

 
Screenshot of the desktop of an Oberon System showing an image and several text viewers

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

 
Embedded system displaying menu on an LCD screen

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

Examples of programming libraries

References

  1. ^ "OpenVMS RTL Screen Management (SMG$) Manual". hpe.com. 2001. Retrieved 2021-01-01.
  2. ^ Niklaus Wirth & Jürg Gutknecht: (1988) The Oberon System. Report Nr. 88.