Текстовый пользовательский интерфейс - Text-based user interface

Немного файловые менеджеры реализовать TUI (здесь: Полуночный командир )
Vim - очень широко используемый текстовый редактор TUI

В вычисление, текстовые пользовательские интерфейсы (TUI) (поочередно пользовательские интерфейсы терминала, чтобы отразить зависимость от свойств компьютерные терминалы а не только текст), это ретроним описание типа пользовательский интерфейс (UI) распространен как ранняя форма взаимодействие человека с компьютером, до появления графический пользовательский интерфейс (Графические интерфейсы). Как и графические интерфейсы, они могут использовать все экран площадь и принять мышь и другие входы. Они также могут использовать цвет и часто структурировать отображение с помощью специальных графических символы такие как ┌ и ╣, упомянутые в Unicode как набор "чертеж коробки". Современный контекст использования обычно эмулятор терминала.


Типы текстовых терминалов

Из текстовое приложение С точки зрения пользователя текстовый экран (и связь с ним) может принадлежать к одному из трех типов (здесь они упорядочены в порядке уменьшения доступности):

  1. Подлинный текстовый режим дисплей, управляемый видеоадаптер или сам центральный процессор. Это нормальное состояние для локально запущенного приложения на различных типах персональные компьютеры и мобильные устройства. Если не сдерживаться Операционная система, интеллектуальная программа может использовать всю мощь аппаратного текстового режима.
  2. Текстовый режим эмулятор. Примеры xterm за X Window System и консоль win32 (в оконном режиме) для Майкрософт Виндоус. Обычно это поддерживает программы, которые ожидают отображения в реальном текстовом режиме, но могут работать значительно медленнее. Некоторые функции расширенного текстового режима, например, собственный шрифт загрузка, почти наверняка станет недоступной.
  3. Удаленный текстовый терминал. Коммуникационные возможности обычно сводятся к последовательная линия или его эмуляция, возможно, с несколькими ioctl () s как из группы канал в таких случаях как Telnet и Безопасная оболочка. Это наихудший случай, потому что программные ограничения мешают использовать возможности удаленного устройства отображения.

Под Linux и другие Unix-подобный системы, программа легко вмещает к любому из трех случаев, потому что один и тот же интерфейс (а именно, стандартные потоки ) управляет дисплеем и клавиатурой. Также, специализированные библиотеки программирования помочь вывести текст способом, соответствующим данному устройству отображения и интерфейсу к нему. Видеть ниже для сравнения с Windows.

На ANSI-совместимых терминалах

Американский национальный институт стандартов (ANSI) стандарт ANSI X3.64 определяет стандартный набор escape-последовательности которые можно использовать для управления терминалами для создания TUI (см. Код выхода ANSI ). Управляющие последовательности могут поддерживаться для всех трех случаев, упомянутых в предыдущем разделе, позволяя произвольно курсор движения и изменения цвета. Однако не все терминалы соответствуют этому стандарту, и существует множество несовместимых, но функционально эквивалентных последовательностей.

Под DOS и Microsoft Windows

В FreeDOS Редактировать пользовательский интерфейс

На Персональные компьютеры IBM и совместимые, базовая система ввода-вывода (BIOS ) и ДОС системные вызовы позволяют писать текст на экране, а ANSI.SYS драйвер может обрабатывать стандартные escape-последовательности ANSI. Однако вскоре программисты узнали, что запись данных непосредственно в экранный буфер был намного быстрее и проще в программировании и менее подвержен ошибкам; видеть VGA-совместимый текстовый режим для подробностей. Это изменение в методах программирования привело ко многим программам DOS TUI. В консоль win32 Среда печально известна тем, что имитирует определенные функции текстового режима EGA / VGA, особенно произвольный доступ к текстовому буферу, даже если приложение работает в окне. С другой стороны, программы, работающие под Windows (как собственные, так и приложения DOS), имеют гораздо меньший контроль над дисплеем и клавиатурой, чем программы для Linux и DOS, из-за вышеупомянутого уровня консоли win32.

Курсор мыши в Импульсный трекер. Более точный курсор (попиксельное разрешение) был достигнут за счет регенерации глифов символов, используемых там, где курсор был виден, при каждом движении мыши в реальном времени.[нужна цитата ]

Чаще всего эти программы использовали синий фон для главного экрана с белыми или желтыми символами, хотя обычно они также имели возможность настройки цвета пользователем. Они часто использовали персонажи, рисовавшие коробки в IBM кодовая страница 437. Позже на интерфейс сильно повлияли графический пользовательский интерфейс (GUI), добавив выпадающие меню, перекрытие окна, диалоговые окна и Виджеты GUI управляется мнемоника или же горячие клавиши. Скоро мышь был добавлен ввод - либо в текстовом разрешении в виде простого цветного поля, либо в графическом разрешении благодаря возможности Усовершенствованный графический адаптер (EGA) и Видеографическая матрица (VGA) видеоадаптеры для переопределить формы текстовых символов с помощью программного обеспечения - предоставление дополнительных функций.

Некоторые известные программы такого рода были Microsoft Word, DOS Shell, WordPerfect, Norton Commander, Turbo Vision основан Borland Турбо Паскаль и Турбо С (последний включал Conio библиотека ), Лотос 1-2-3 и много других. Некоторые из этих интерфейсов сохранились даже во времена Microsoft Windows 3.1x период в начале 1990-х гг. Например, Microsoft C 6.0, используемый для написания настоящих программ с графическим интерфейсом под 16 бит Windows по-прежнему имеет собственный TUI.

С самого начала Майкрософт Виндоус включает консоль для отображения программного обеспечения DOS. Более поздние версии добавили Консоль Win32 как собственный интерфейс для Интерфейс командной строки и программы TUI. Консоль обычно открывается в оконном режиме, но ее можно переключить в полноэкранный текстовый режим и наоборот, нажав кнопку Alt и Войти ключи вместе. Полноэкранный режим недоступен в Windows Vista и более поздних версиях, но может использоваться с некоторыми обходными путями.[1]

В Unix-подобных системах

Снимок интерфейса пользователя XFdrake, используемого в Mandriva Linux настроить графическую систему.

В Unix-подобный операционных систем, TUI часто создаются с использованием терминального управления библиотека проклятия, или же ncurses (наиболее совместимая библиотека) или альтернатива Сленг Библиотека. проклятия библиотека с Беркли Unix создал переносимый и стабильный API, для которого можно писать TUI. Умение разговаривать с разными текстовый терминал типы, использующие одинаковые интерфейсы привело к более широкому использованию «визуальных» программ Unix, которые занимали весь экран терминала вместо использования простого линейного интерфейса. Это можно увидеть в текстовые редакторы Такие как vi, почтовые клиенты Такие как сосна или же дворняга, инструменты управления системой, такие как СМИТ, СЭМ, FreeBSD с Sysinstall и веб-браузеры Такие как рысь. Некоторые приложения, например w3m, и более старые версии сосна и vi использовать менее способных termcap библиотека, выполняющая многие функции, связанные с проклятия в приложении. Пользовательские приложения TUI на основе виджеты можно легко разработать с помощью диалог программа (на основе ncurses ), или Хлыстохвост программа (на основе Сленг ).

Кроме того, рост популярности Linux привел многих бывших пользователей DOS к Unix-подобной платформе, которая способствовала влиянию DOS во многих TUI. Программа миником, например, по образцу популярной программы DOS Telix. Некоторые другие программы TUI, такие как Близнец рабочий стол, были портирован над.

Поддержка большинства Unix-подобных операционных систем (Linux, FreeBSD и т. Д.) виртуальные консоли, обычно доступ к которому осуществляется с помощью комбинации клавиш Ctrl-Alt-F. Например, в Linux можно получить доступ до 64 консолей (12 с помощью функциональных клавиш), каждая из которых отображается в полноэкранном текстовом режиме.

В бесплатно программное обеспечение программа Экран GNU обеспечивает управление несколькими сеансами внутри одного TUI, поэтому его можно рассматривать как оконный менеджер для текстового режима и интерфейсов командной строки. Tmux тоже может это сделать.

Собственный macOS Текстовый редактор BBEdit включает рабочий лист оболочки функция, которая работает как полноэкранное окно оболочки. В свободный Emacs текстовый редактор может запускать оболочку внутри одного из своих буферов для обеспечения аналогичной функциональности. В Emacs есть несколько реализаций оболочки, но только ANSI-термин подходит для запуска программ TUI. Другие общие режимы оболочки, ракушка и Eshell имитировать только командные строки, и программы TUI будут жаловаться «Терминал не полностью функционален» или отображать искаженный интерфейс. В свободный Vim и Неовим текстовые редакторы имеют окна терминала (имитирующие xterm ). Эта функция предназначена для выполнения заданий, параллельных сборок или тестов, но также может использоваться (с разделением окон и вкладками) в качестве облегченного терминального мультиплексора.

OpenVMS

VAX / VMS и более поздние разработки OpenVMS имел аналогичные возможности проклятия известное как средство управления экраном или SMG. Это может быть вызвано из командной строки или из программ, использующих библиотеку SMG $.

Оберон

Снимок экрана рабочего стола системы Oberon с изображением и несколькими программами просмотра текста

Другой вид TUI - это основной интерфейс Операционная система Оберон, впервые выпущенный в 1988 году и поддерживаемый до сих пор. В отличие от большинства других текстовых пользовательских интерфейсов, Oberon не использует консоль или терминал в текстовом режиме, но требует большого растрового дисплея, на котором текст является основной целью для щелчков мышью. Команды в формате Модуль.Процедура параметры ~ можно активировать средней кнопкой мыши, например гиперссылки. Текст, отображаемый в любом месте экрана, можно редактировать, и если он отформатирован с использованием требуемого синтаксиса команды, его можно щелкнуть средней кнопкой мыши и выполнить. Любой текстовый файл, содержащий команды в соответствующем формате, может использоваться как так называемый текст инструмента, таким образом, служа меню, настраиваемым пользователем. Даже вывод предыдущей команды можно редактировать и использовать как новую команду. Этот подход радикально отличается как от обычных диалоговых консольных меню, так и от интерфейсы командной строки.

Поскольку в нем не используются графические виджеты, только обычный текст, но предлагает функции, сопоставимые с GUI с тайловый оконный менеджер, он называется текстовым пользовательским интерфейсом или TUI. Краткое введение см. Во 2-м абзаце на четвертой странице первого опубликованного Отчет по системе Оберон.[2]

Оберона UI повлиял на дизайн Текстовый редактор и почтовый клиент Acme для План 9 от Bell Labs Операционная система.

Во встроенных системах

Встроенная система отображения меню на ЖК-экране

Современное встроенные системы способны отображать TUI на мониторе, как на персональных компьютерах. Эта функциональность обычно реализуется с помощью специализированных интегральных схем, модулей или с помощью FPGA.

Видеосхемы или модули обычно управляются с помощью VT100 -совместимый набор команд UART,[нужна цитата ] Конструкции FPGA обычно допускают прямой доступ к видеопамяти.[нужна цитата ]

Другое использование

  • В полноэкранный редактор из Коммодор 64 В свое время 8-битные компьютеры были продвинутыми в своем сегменте рынка. Пользователи могли перемещать курсор по всей области экрана, вводя и редактируя БАЗОВЫЙ программные строки, а также прямой режим команды. Все коммодоры 8 бит компьютеры использовали PETSCII набор символов, который включает глифы символов, подходящие для создания TUI.
  • Apple Мастерская программиста Macintosh среда программирования включала Commando, оболочку TUI. Это было вдохновением для рабочего листа оболочки BBEdit.
  • Потом Яблоко II модели включены MouseText, набор графических символов, используемых для создания TUI.
  • В Концепция Corvus компьютер 1982 года использовал функциональная клавиша текстовый интерфейс на полноэкранном поворотном дисплее.

Смотрите также

Примеры библиотек программирования

Рекомендации

  1. ^ cmd - полноэкранный режим в Windows 7. Social.technet.microsoft.com. Проверено 15 июня 2013.
  2. ^ Никлаус Вирт и Юрг Гуткнехт: (1988) Система Оберон. Отчет № 88.