6f5f7f15

Недостаток стандартизации, решенный с помощью terminfo


В то время как терминалы, сделанные для США, используют для алфавита одинаковую для всех кодировку ASCII (кроме IBM-терминалов, которые использовали EBCDIC), они, к сожалению, не используют одинаковые escape-последовательности. Это случается даже после приняти различных стандартов ANSI, так как эти стандарты не продвигались как следует. Кроме того, старые терминалы часто испытывают недостаток возможностей более новых терминалов.

Это может вызвать проблемы. Например, компьютер может послать терминалу escape-последовательность, заставляющую его разбить экран на два окна определенного размера, не понимая, что терминал неспособен это выполнить.

Для преодоление этих проблем была принята база данных, называемая "termcap" (теперь "terminfo"). Эта база данных постоянно находится в некоторых файлах на компьютере и имеет разделы (иногда отдельные файлы) для каждой модели терминала. Для каждой модели (типа VT100) приведен список возможностей, включая доступные для использования escape-последовательности и т.д. См. раздел ``termcap и terminfo (подробно)" для подробностей. Прикладные программы могут использовать эту базу данных, вызывая некоторые программы C-библиотеки. Один большой набор таких программ (более чем 200) называется "ncurses" и перечислен на man-странице для ncurses.



Содержание раздела