All Topics  
Text user interface

 

   Email Print
   Bookmark   Link






 

Text user interface



 
 
TUI short for: Text User Interface or Textual User Interface (and sometimes Terminal User Interface), is a retronym
Retronym

A retronym is the modification of the original name of an object or concept to differentiate it from a more recent version of the object, which acquired a modifier or adjective through later developments of the object or concept itself....
 that was coined sometime after the invention of graphical user interface
Graphical user interface

A graphical user interface is a type of user interface which allows people to human-computer interaction such as computers; hand-held devices such as MP3 Players, Portable Media Players or Gaming devices; household appliances and office equipment....
s
, to distinguish them from text-based user interface
User interface

The user interface is the aggregate of means by which people—the User s—Interaction with the system—a particular machine, device, computer program or other complex tools....
s. TUIs are different from command-line interfaces in that, like GUIs, they use the entire screen area and do not necessarily provide line-by-line output.






Discussion
Ask a question about 'Text user interface'
Start a new discussion about 'Text user interface'
Answer questions from other users
Full Discussion Forum



Encyclopedia


Fdedit
TUI short for: Text User Interface or Textual User Interface (and sometimes Terminal User Interface), is a retronym
Retronym

A retronym is the modification of the original name of an object or concept to differentiate it from a more recent version of the object, which acquired a modifier or adjective through later developments of the object or concept itself....
 that was coined sometime after the invention of graphical user interface
Graphical user interface

A graphical user interface is a type of user interface which allows people to human-computer interaction such as computers; hand-held devices such as MP3 Players, Portable Media Players or Gaming devices; household appliances and office equipment....
s
, to distinguish them from text-based user interface
User interface

The user interface is the aggregate of means by which people—the User s—Interaction with the system—a particular machine, device, computer program or other complex tools....
s. TUIs are different from command-line interfaces in that, like GUIs, they use the entire screen area and do not necessarily provide line-by-line output. However, TUIs only use text and symbols available on a typical text terminal, while GUIs typically use high-resolution graphics modes.

TUI on ANSI-compatible terminals

Synchronet
ANSI
American National Standards Institute

The American National Standards Institute or ANSI is a private non-profit organization that oversees the development of voluntary consensus standards for products, services, processes, systems, and personnel in the United States....
 standard ANSI X3.64 defines a standard set of escape sequence
Escape sequence

An escape sequence is a series of character used to change the state of computers and their attached peripheral devices. These are also known as control sequences, reflecting their use in device control....
s that can be used to drive terminals to create TUIs (see ANSI escape code
ANSI escape code

ANSI escape sequences are used to control text formatting and other output options on text terminals. In this context, American National Standards Institute refers to the ANSI X3.64 standard ....
.) However, not all terminals follow this standard, and many non-compatible but functionally equivalent sequences exist.




TUI'a under MS-DOS and Microsoft Windows

On IBM PC
IBM PC

The IBM Personal Computer, commonly known as the IBM PC, is the original version and progenitor of the IBM PC compatible hardware platform ....
s and compatible
IBM PC compatible

IBM PC compatible computers are those generally similar to the original IBM Personal Computer, IBM Personal Computer XT, and IBM Personal Computer/AT....
s, the BIOS
BIOS

In computing, the Basic Input/Output System , also known as the System BIOS, is a de facto standard defining a firmware interface for IBM PC Compatible computers....
 and MS-DOS
MS-DOS

MS-DOS is an operating system commercialized by Microsoft. It was the most commonly used member of the DOS family of operating systems and was the main operating system for personal computers during the 1980s....
 system calls provide a way of writing text on the screen, and the ANSI.SYS
ANSI.SYS

ANSI.SYS is a device driver in the DOS operating system that provides extra computer console functions through ANSI escape codes. It is partially based upon a subset of the text terminal control standard proposed by the American National Standards Institute X3L2 Technical Committee on Codes and Character Sets ....
 driver could process standard ANSI escape sequences. However, programmers soon learned that writing data directly to the screen buffer was much faster, as well as being much simpler to program and less error-prone. This change in programming technique resulted in a large number of MS-DOS TUI programs.

Most often those programs used blue background for the main screen, with white or yellow characters, although commonly they had also user color customization. Later, the interface became deeply influenced by GUI
Gui

Gui or guee is a generic term to refer to grillinged dishes in Korean cuisine. These most commonly have meat or fish as their primary ingredient, but may in some cases also comprise grilled vegetables or other vegetarian ingredients....
s, adding pull-down menus and dialog box
Dialog box

In graphical user interfaces, a dialog box is a special Window , used in user interfaces to display information to the user, or to get a response if needed....
es. Soon mouse input was added (even at graphical resolution in some cases thanks to the ability of the EGA
Enhanced Graphics Adapter

The Enhanced Graphics Adapter is the IBM PC computer display standard specification located between Color Graphics Adapter and Video Graphics Array in terms of color and space resolution....
 and VGA
Video Graphics Array

The term Video Graphics Array refers specifically to the display hardware first introduced with the IBM Personal System/2 line of computers in 1987, but through its widespread adoption has also come to mean either an analogue electronics computer display standard, the 15-pin D-subminiature VGA connector or the 640×480 resolution its...
 display adapters to redefine the text character shapes by software), providing additional functionality.

Some notable programs of this kind were Microsoft Word
Microsoft Word

Microsoft Word is Microsoft's word processor computer software. It was first released in 1983 under the name Multi-Tool Word for Xenix systems....
, MS-DOS Shell, WordPerfect
WordPerfect

WordPerfect is a proprietary software word processing application, now owned by Corel. Bruce Bastian, a Brigham Young University graduate student and BYU computer science professor Dr....
, Norton Commander
Norton Commander

Norton Commander was a prototypical orthodox file manager , written by John Socha and released by Peter Norton Computing . NC is a file manager which essentially acts as the text user interface for DOS....
, Borland
Borland

Borland Software Corporation is a Computer software company headquartered in Austin, Texas. It was founded in 1983 by Niels Jensen, Ole Henriksen, Mogens Glad and Philippe Kahn....
 Turbo C
Turbo C

Turbo C was a Integrated Development Environment and compiler for the C from Borland. It was first introduced in 1987 and was noted for its integrated development environment, small size, extremely fast compile speed, comprehensive manuals and low price....
 (which included the conio
Conio.h

conio.h is a header file used in old MS-DOS compilers to create text user interfaces, however, it is not part of the C programming language, the C standard library, ISO C or required by POSIX....
 library
Library (computer science)

In computer science, a library is a collection of subroutines or Class used to develop software. Libraries contain code and data that provide services to independent programs....
), Lotus 1-2-3
Lotus 1-2-3

Lotus 1-2-3 is a spreadsheet program from Lotus Software . It was the IBM PC's first "killer application"; its huge popularity in the mid-1980s contributed significantly to the success of the IBM PC in the corporate environment....
 and many others. Some of these interfaces survive even during the Microsoft
Microsoft

Microsoft Corporation is a multinational corporation computer technology corporation that develops, manufactures, licenses, and supports a wide range of computer software products for computing devices....
 Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
 3.x age in the first 1990's; for example, the Microsoft C 6.0 compiler, employed to write true GUI
Gui

Gui or guee is a generic term to refer to grillinged dishes in Korean cuisine. These most commonly have meat or fish as their primary ingredient, but may in some cases also comprise grilled vegetables or other vegetarian ingredients....
 programs under 16-bit
16-bit

16-bit architectureThe HP 2100#Descendants and variants , introduced in 1975, was the world's first 16-bit microprocessor.Prominent 16-bit processors include the PDP-11, Intel 8086, Intel 80286 and the WDC 65C816....
 MS Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
, still features its own TUI.

Since the beginning, Microsoft Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
 includes a console for displaying MS-DOS software. Later versions added the Win32 console
Win32 console

Win32 console is a plain text window for console applications within the system of Windows API. A Win32 console has a screen buffer and an input buffer....
 as a native interface for command line and TUI programs. The console usually opens in window mode, but it can be switched to full true text mode screen and vice versa by pressing the Alt
Alt key

The Alt key on a computer keyboard is used to change the function of other pressed keys. Thus, the Alt key is a modifier key, used in a similar fashion to the Shift key....
 and Enter
Enter key

In computer Keyboard s, the enter key in most cases causes a command-line interface, window form or dialog box to operate its default function, which is typically to finish an "entry" and begin the desired process....
 keys together.




TUI under Unix-like systems


Xfdrake
In Unix-like
Unix-like

A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....
 operating systems, TUIs are often constructed using the terminal control library
Library (computer science)

In computer science, a library is a collection of subroutines or Class used to develop software. Libraries contain code and data that provide services to independent programs....
 curses
Curses (programming library)

curses is a Computer display control Library for Unix-like systems, enabling the construction of Text user interface applications.Curses is a wikt:pun on the term "cursor optimization"....
, or ncurses
Ncurses

ncurses is a programming library providing an application programming interface, allowing the programmer to write text user interfaces in a terminal-independent manner....
, a mostly compatible library.

The advent of the curses library with Berkeley Unix created a portable and stable API for which to write TUIs. The ability to talk to various text terminal types using the same interfaces
Application programming interface

An application programming interface is a set of subroutine, data structures, class and/or Protocol provided by library and/or operating system Service s in order to support the building of applications....
 led to more widespread use of "visual" Unix programs, which occupied the entire terminal screen instead of using a simple line interface. This can be seen in text editor
Text editor

A text editor is a type of software application used for editing plain text files.Text editors are often provided with operating systems or software development packages, and can be used to change configuration files and programming language source code....
s such as vi
Vi

vi is a family of screen-oriented text editors which share common characteristics, such as methods of invocation from the operating system command interpreter, and characteristic user interface features....
, mail clients
E-mail client

An e-mail client is a frontend computer program used to manage e-mail.Sometimes, the term e-mail client is also used to refer to any agent acting as a Client toward an e-mail server, independently of it being a real MUA, a relaying server, or a human typing directly on a telnet terminal....
 such as pine
Pine (e-mail client)

Pine is a freeware, text-based e-mail client developed at the University of Washington. Source code was available for only the Unix version under a license written by the University of Washington....
 or mutt
Mutt (e-mail client)

Mutt is a text user interface e-mail client for Unix-like systems. It was originally written by Michael Elkins in 1995 and released under the GNU General Public License....
, system management tools such as SMIT or SAM, and web browser
Web browser

A Web browser is a application software which enables a user to display and interact with text, images, videos, music, games and other information typically located on a Web page at a website on the World Wide Web or a local area network....
s such as lynx
Lynx (web browser)

Lynx is a free open-source, text-only World Wide Web web browser for use on cursor-addressable, character cell computer terminal. Supported protocols are Gopher , [], [], FTP, Wide area information server, and NNTP....
. Some applications, such as w3m
W3m

w3m is a free software/open source software text-based web browser. It has support for tables, frames, Secure Sockets Layer connections, color and even inline images on suitable Computer terminal....
, as well as older versions of pine
Pine (e-mail client)

Pine is a freeware, text-based e-mail client developed at the University of Washington. Source code was available for only the Unix version under a license written by the University of Washington....
 and vi
Vi

vi is a family of screen-oriented text editors which share common characteristics, such as methods of invocation from the operating system command interpreter, and characteristic user interface features....
 use the less-capable termcap
Termcap

Termcap is a software library and database used on Unix-like computers. It enables programs to use display computer terminals in a device-independent manner, which greatly simplifies the process of writing portable text mode applications....
 library, performing many of the functions associated with curses
Curses (programming library)

curses is a Computer display control Library for Unix-like systems, enabling the construction of Text user interface applications.Curses is a wikt:pun on the term "cursor optimization"....
 within the application.

In addition, the rise in popularity of Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
 brought many former MS-DOS users to a Unix-like platform, which has fostered an MS-DOS influence in many TUIs. The program minicom
Minicom

Minicom is a text-based modem control and terminal emulation program for Unix-like operating systems, originally written by Miquel van Smoorenburg, and modeled after the popular MS-DOS program Telix....
, for example, is modeled after the popular MS-DOS program Telix
Telix

Telix is a telecommunications Computer program originally written for DOS by Colin Sampaleanu and released in 1986. More recent versions were distributed by deltaComm Development, including a version for Microsoft Windows....
. Some other TUI programs, such as the Twin
Twin (computing)

Twin is a Text mode windowing environment written and maintained by Massimiliano Ghilardi; it draws and manages text Window on a text-mode display, like X11 does for graphical windows....
 desktop, were ported over.

The proprietary Mac OS X
Mac OS X

Mac OS X is a line of computer operating systems developed, marketed, and sold by Apple Inc., and since 2002 has been included with all new Macintosh computer systems....
 text editor
Text editor

A text editor is a type of software application used for editing plain text files.Text editors are often provided with operating systems or software development packages, and can be used to change configuration files and programming language source code....
 BBEdit
BBEdit

BBEdit is a Proprietary software text editor made by Bare Bones Software. It was originally developed for Apple Macintosh System Software 6 and is now available for Mac OS X....
 includes a 'shell worksheet' function that works as a full-screen shell window.

TUI in embedded systems

Modern embedded system
Embedded system

An embedded system is a special-purpose computer system designed to perform one or a few dedicated functions, often with real-time computing constraints....
s 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
VT100

VT100 is a video computer terminal which was made by Digital Equipment Corporation . It became the de facto standard used by terminal emulators....
-compatible command set over UART, FPGA designs usually allow direct video memory access.

Optimized TUI written in C language on a low-cost 8 or 16-bit microcontroller
Microcontroller

A microcontroller is a small computer on a single integrated circuit consisting of a relatively simple CPU combined with support functions such as a crystal oscillator, timers, watchdog, serial and analog I/O etc....
 requires at least 2kB of code and minimum 10 MIPS of computing power. Almost all modern microcontrollers such as ARM7, Microchip PIC18, Micochip PIC24, MIPS, etc. meet all requirements for TUI implementation.

Other TUIs


  • The full screen editor of the Commodore
    Commodore

    Commodore may refer to:...
     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
    BASIC

    In computer programming, BASIC is a family of high-level programming languages. The Dartmouth BASIC was designed in 1964 by John George Kemeny and Thomas Eugene Kurtz at Dartmouth College in New Hampshire, United States to provide computer access to non-science students....
     program lines, as well as direct mode
    Direct mode

    Direct mode is a computing term referring to the input of textual Command outside the context of a program. The command would be executed immediately and the results printed on screen, in contrast to programming mode where nothing would be executed until the RUN command was given Some commands could be used in either mode, others were exclu...
     commands.
  • Apple's Macintosh Programmer's Workshop
    Macintosh Programmer's Workshop

    Macintosh Programmer's Workshop or MPW, is a software development environment for the Classic Mac OS, written by Apple Computer. For Apple Macintosh developers, it was one of the primary tools for building applications for System 7.x and Mac OS 8.x and 9.x....
     programming environment included Commando, a TUI shell. It was the inspiration for BBEdit's shell worksheet.


See also

  • Text terminal for the computer interface of textual programs
  • Text mode
    Text mode

    Text mode is a kind of computer display mode in which the content of the screen is internally represented in terms of textual characters rather than individual pixels....
  • Text mode demos
    Text mode demos

    Text Mode demos are real-time calculated computer animations which make use of the native text graphic mode common on the IBM PC compatibles. The Text Mode Demo Scene is one of many different facets of the demoscene....
  • Command-line interface
  • Console application
    Console application

    A console application is a computer program designed to be used via a text-only computer interface, such as a text terminal, the command line interface of some Operating system or the text-based interface included with some Graphical user interface operating systems, such as the Win32 console in Microsoft Windows....
  • Roguelike
    Roguelike

    The roguelike is a sub-genre of role-playing game video games, characterized by randomization for replayability, permanent death, and turn-based movement....
    , a type of game typically using a TUI

Examples of programming libraries

  • CDK
  • Dialog
    Dialog (software)

    Dialog is an application used in shell scripts which displays text user interface GUI widget. It uses the curses or ncurses library. The latter provides users with the ability to use a mouse, e.g., in an xterm....
  • MYTUI
  • ncurses
    Ncurses

    ncurses is a programming library providing an application programming interface, allowing the programmer to write text user interfaces in a terminal-independent manner....
  • Newt
    Newt (programming library)

    Newt is a Library for color text mode, Widget user interfaces. Newt can be used to add stacked windows, entry Widget , Check box, radio buttons, labels, plain text fields, scrollbars, etc., to text mode user interfaces....
    , a widget-based toolkit
  • PDCurses
    PDCurses

    PDCurses is a public domain curses programming library for DOS, Windows, X11 and SDL. While development of the original programming language halted in the mid 1990's, the development of ncurses and PDcurses continued....
  • SMG$
    SMG$

    SMG$ is a library of Screen Management routines for OpenVMS. These routines allow programs to create text-based, terminal interfaces in a terminal-independent manner....
  • Turbo Vision
    Turbo Vision

    Turbo Vision is a DOS-based character-mode text user interface framework developed around 1992 by Borland for Pascal programming language, and C++....