Spec-Zone.ru › Python 3.10

curses — Обработка терминала для дисплеев с ячейками символов

Исходный код: Lib/curses

Модуль curses предоставляет интерфейс к библиотеке curses, фактическому стандарту для переносимой расширенной обработки терминала.

Хотя curses чаще всего используется в среде Unix, версии доступны для Windows, DOS и, возможно, для других систем. Этот модуль расширения разработан для соответствия API ncurses, открытой библиотеки curses, размещённой в Linux и BSD-вариантах Unix.

Примечание

Всякий раз, когда в документации упоминается символ, он может быть указан как целое число, строка Unicode длиной в один символ или строка байтов длиной в один байт.

Всякий раз, когда в документации упоминается строка символов, она может быть указана как строка Unicode или строка байтов.

Примечание

Начиная с версии 5.4, библиотека ncurses определяет, как интерпретировать данные, не являющиеся ASCII, с помощью функции nl_langinfo. Это означает, что вам необходимо вызвать locale.setlocale() в приложении и кодировать строки Unicode с помощью одного из доступных системных кодирований. В этом примере используется системное кодирование по умолчанию:

import locale
locale.setlocale(locale.LC_ALL, '')
code = locale.getpreferredencoding()

Затем используйте code в качестве кодирования для str.encode() вызовов.

См. также

Module curses.ascii

Утилиты для работы с ASCII-символами независимо от настроек вашей локали.

Module curses.panel

Расширение стека панелей, которое добавляет глубину окнам curses.

Module curses.textpad

Редактор текста для curses, поддерживающий связывание в стиле Emacs.

Программирование с использованием curses в Python

Материал по руководству по использованию curses с Python, от Эндрю Куклинг и Эрика Реймонда.

В каталоге Tools/demo/ в дистрибутиве исходного кода Python находятся некоторые примеры программ с использованием связываний curses, предоставляемых этим модулем.

Функции

Модуль curses определяет следующую исключительную ситуацию:

exception curses.error

Исключение, которое возникает, когда функция библиотеки curses возвращает ошибку.

Примечание

Всякий раз, когда аргументы x или y функции или метода являются необязательными, они по умолчанию принимают значение текущих координат курсора. Всякий раз, когда attr является необязательным, он по умолчанию принимает значение A_NORMAL.

Модуль curses определяет следующие функции:

curses.baudrate()

Возвращает скорость вывода терминала в битах в секунду. В эмуляторах программных терминалов она будет иметь фиксированное высокое значение. Включено по историческим причинам; в старые времена оно использовалось для записи циклов вывода для задержек времени и иногда для изменения интерфейсов в зависимости от скорости линии.

curses.beep()

Издает короткий звуковой сигнал.

curses.can_change_color()

Возвращает True или False, в зависимости от того, может ли программист изменять цвета, отображаемые на терминале.

curses.cbreak()

Переход в режим cbreak. В режиме cbreak (иногда называемом режимом «редкий») обычное буферирование строк tty выключается, и символы доступны для чтения по одному. Однако, в отличие от режима raw, специальные символы (прерывание, выход, приостановление и управление потоком) сохраняют свое действие на драйвере tty и вызывающей программе. Вызов сначала raw(), а затем cbreak() оставляет терминал в режиме cbreak.

curses.color_content(color_number)

Возвращает интенсивность красного, зеленого и синего (RGB) компонентов в цвете color_number, который должен находиться в диапазоне от 0 до COLORS - 1. Возвращает кортеж из 3 элементов, содержащий значения R, G, B для заданного цвета, которые будут находиться в диапазоне от 0 (отсутствие компонента) до 1000 (максимальное значение компонента).

curses.color_pair(pair_number)

Возвращает значение атрибута для отображения текста в указанной паре цветов. Поддерживаются только первые 256 пар цветов. Это значение атрибута можно комбинировать с A_STANDOUT, A_REVERSE, и другими A_* атрибутами. pair_number() является аналогом этой функции.

curses.curs_set(visibility)

Устанавливает состояние курсора. visibility может быть установлено в 0, 1, или 2, для невидимого, нормального или очень видимого состояния. Если терминал поддерживает запрашиваемое состояние видимости, возвращается предыдущее состояние курсора; в противном случае генерируется исключение. На многих терминалах «видимый» режим представляет собой подчеркнутый курсор, а «очень видимый» режим — блочный курсор.

curses.def_prog_mode()

Сохраняет текущий режим терминала как «программный» режим, режим, когда запущенная программа использует curses. (Его аналогом является «оболочечный» режим, когда программа не использует curses.) Последующие вызовы reset_prog_mode() восстановят этот режим.

curses.def_shell_mode()

Сохраняет текущий режим терминала как «оболочечный» режим, режим, когда запущенная программа не использует curses. (Его аналогом является «программный» режим, когда программа использует возможности curses.) Последующие вызовы reset_shell_mode() восстановят этот режим.

curses.delay_output(ms)

Вставляет паузу длительностью ms миллисекунд в выходные данные.

curses.doupdate()

Обновляет физический экран. Библиотека curses сохраняет две структуры данных: одну, представляющую текущее содержимое физического экрана, и виртуальный экран, представляющий желаемое последующее состояние. Метод doupdate() обновляет физический экран, чтобы он соответствовал виртуальному экрану.

Виртуальный экран может быть обновлен вызовом noutrefresh() после выполнения операций записи, таких как addstr(), в окне. Обычный вызов refresh() просто noutrefresh() в сочетании с doupdate(); если вам нужно обновить несколько окон, вы можете повысить производительность и, возможно, уменьшить мерцание экрана, выполнив вызовы noutrefresh() для всех окон, а затем один вызов doupdate().

curses.echo()

Включение режима ввода с отображением символов. В режиме ввода с отображением каждого вводимого символа отображается на экране.

curses.endwin()

Деинициализирует библиотеку и возвращает терминал в обычный режим.

curses.erasechar()

Возвращает текущий символ стирания пользователя в виде байтового объекта длиной один байт. В Unix-системах это свойство управляющего tty программы curses и не устанавливается самой библиотекой curses.

curses.filter()

Функция filter(), если она используется, должна быть вызвана до вызова initscr(). В результате во время этих вызовов LINES устанавливается в 1; возможности clear, cup, cud, cud1, cuu1, cuu, vpa отключаются; и строка home устанавливается в значение cr.

curses.flash()

Мгновенно выводит экран. То есть, он меняет его на режим обратного видео, а затем быстро возвращает к исходному режиму. Некоторые люди предпочитают такой «видимый звонок» звуковому сигналу оповещения, который создается функцией beep().

curses.flushinp()

Очищает все буферы ввода. Это отбрасывает все символы, набранные пользователем и ещё не обработанные программой.

curses.getmouse()

После того, как getch() возвращает KEY_MOUSE для сигнализации о событии мыши, этот метод должен быть вызван для получения очередного события мыши, представленного как 5-элементный кортеж (id, x, y, z, bstate). id — значение идентификатора, используемое для различения нескольких устройств, а x, y, z — координаты события. (z в настоящее время не используется.) bstate — целое значение, биты которого установлены для указания типа события, и будет являться побитовой дизъюнкцией одного или нескольких из следующих констант, где n — номер кнопки от 1 до 5: BUTTONn_PRESSED, BUTTONn_RELEASED, BUTTONn_CLICKED, BUTTONn_DOUBLE_CLICKED, BUTTONn_TRIPLE_CLICKED, BUTTON_SHIFT, BUTTON_CTRL, BUTTON_ALT.

Изменено в версии 3.10: Константы BUTTON5_* теперь доступны, если они предоставляются основной библиотекой curses.

curses.getsyx()

Возвращает текущие координаты курсора виртуального экрана как кортеж (y, x). Если leaveok в настоящее время True, то возвращается (-1, -1).

curses.getwin(file)

Считывает данные, относящиеся к окну, сохранённые в файле в результате предыдущего вызова putwin(). Затем функция создаёт и инициализирует новое окно, используя эти данные, и возвращает новый объект окна.

curses.has_colors()

Возвращает True , если терминал может отображать цвета; в противном случае возвращает False.

curses.has_extended_color_support()

Возвращает True, если модуль поддерживает расширенные цвета; в противном случае возвращает False. Поддержка расширенных цветов позволяет использовать более 256 пар цветов для терминалов, которые поддерживают более 16 цветов (например, xterm-256color).

Расширенная поддержка цветов требует ncurses версии 6.1 или выше.

Добавлен в версии 3.10.

curses.has_ic()

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

curses.has_il()

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

curses.has_key(ch)

Принимает значение ключа ch и возвращает True, если текущий тип терминала распознаёт ключ с этим значением.

curses.halfdelay(tenths)

Используется для режима полузадержки, который похож на режим cbreak тем, что введённые пользователем символы сразу доступны программе. Однако, после ожидания в течение tenths десятых долей секунды, если ничего не было введено, генерируется исключение. Значение tenths должно быть числом между 1 и 255. Для выхода из режима полузадержки используйте nocbreak().

curses.init_color(color_number, r, g, b)

Изменяет определение цвета, принимая номер цвета, подлежащего изменению, и три значения RGB (для количества компонентов красного, зеленого и синего). Значение color_number должно быть между 0 и COLORS - 1. Каждое из r, g, b должно быть значением между 0 и 1000. При использовании init_color(), все вхождения этого цвета на экране немедленно изменяются на новое определение. Эта функция является бесполезной для большинства терминалов; она активна только если can_change_color() возвращает True.

curses.init_pair(pair_number, fg, bg)

Изменяет определение пары цветов. Принимает три аргумента: номер пары цветов, подлежащей изменению, номер цвета переднего плана и номер цвета заднего плана. Значение pair_number должно быть между 1 и COLOR_PAIRS - 1 (пара цвета 0 связана с белым цветом на чёрном фоне и не может быть изменена). Значение аргументов fg и bg должно быть между 0 и COLORS - 1, или, после вызова use_default_colors(), -1. Если пара цветов была ранее инициализирована, экран обновляется, и все вхождения этой пары цветов изменяются на новое определение.

curses.initscr()

Инициализирует библиотеку. Возвращает объект окна, который представляет весь экран.

Примечание

Если при открытии терминала произошла ошибка, базовая библиотека curses может привести к завершению интерпретатора.

curses.is_term_resized(nlines, ncols)

Возвращает True, если resize_term() изменит структуру окна, False в противном случае.

curses.isendwin()

Возвращает True, если endwin() был вызван (то есть, библиотека curses была деинициализирована).

curses.keyname(k)

Возвращает имя ключа с номером k в виде объекта bytes. Имя ключа, генерирующего печатаемый символ ASCII, — это символ ключа. Имя комбинации управляющего ключа — это объект bytes из двух байтов, состоящий из символа каретки (b'^') и соответствующего печатаемого символа ASCII. Имя комбинации ключа Alt (128–255) — это объект bytes, состоящий из префикса b'M-' и имени соответствующего символа ASCII.

curses.killchar()

Возвращает текущий символ удаления строки пользователя в виде объекта bytes длиной один байт. В операционных системах Unix это свойство управляющего tty программы curses и не устанавливается самой библиотекой curses.

curses.longname()

Возвращает объект bytes, содержащий поле terminfo длинного имени, описывающее текущий терминал. Максимальная длина подробного описания — 128 символов. Определяется только после вызова initscr().

curses.meta(flag)

Если flag равно True, допускаются вход 8-битных символов. Если flag равно False, допускаются только 7-битные символы.

curses.mouseinterval(interval)

Устанавливает максимальное время в миллисекундах, которое может пройти между нажатием и отпусканием события, чтобы оно распознавалось как щелчок, и возвращает предыдущее значение интервала. Значение по умолчанию составляет 200 мс, или одна пятая секунды.

curses.mousemask(mousemask)

Устанавливает события мыши, которые должны отслеживаться, и возвращает кортеж (availmask, oldmask). availmask указывает, какие из заданных событий мыши могут быть отслеживаемы; в случае полной ошибки возвращает 0. oldmask — предыдущее значение маски событий мыши данного окна. Если эта функция никогда не вызывалась, события мыши никогда не отслеживаются.

curses.napms(ms)

Засыпает на ms миллисекунд.

curses.newpad(nlines, ncols)

Создаёт и возвращает указатель на новую структуру данных области с заданным количеством строк и столбцов. Возвращает область как объект окна.

Область похожа на окно, за исключением того, что она не ограничена размерами экрана и необязательно связана с определённой частью экрана. Области могут использоваться, когда нужно большое окно, и только часть окна будет отображаться на экране в один момент. Автоматические обновления областей (например, при прокрутке или отображении ввода) не происходят. Методы refresh() и noutrefresh() области требуют 6 аргументов для указания части области, подлежащей отображению, и местоположения на экране для отображения. Аргументы: pminrow, pmincol, sminrow, smincol, smaxrow, smaxcol; аргументы p относятся к левому верхнему углу области, подлежащей отображению, а аргументы s определяют прямоугольник обрезки на экране, в рамках которого область отображается.

curses.newwin(nlines, ncols)
curses.newwin(nlines, ncols, begin_y, begin_x)

Возвращает новое окно, левый верхний угол которого находится в (begin_y, begin_x), а высота/ширина — nlines/ncols.

По умолчанию окно будет простираться от указанной позиции до правого нижнего угла экрана.

curses.nl()

Включает режим новой строки. В этом режиме нажатие клавиши ввода интерпретируется как перевод строки при вводе, и перевод строки интерпретируется как возврат и перевод строки на выводе. Режим новой строки по умолчанию включён.

curses.nocbreak()

Выходит из режима cbreak. Возвращается в нормальный «готовый» режим с буферизацией строк.

curses.noecho()

Выходит из режима ввода с отображением. Вывод введённых символов отключён.

curses.nonl()

Выходит из режима новой строки. Отключает преобразование возврата в новую строку при вводе и отключает низкоуровневое преобразование новой строки в новую строку/возврат на выводе (но это не изменяет поведение addch('\n'), которое всегда выполняет эквивалент возврата и перевода строки на виртуальном экране). При отключенном преобразовании curses может немного ускорить вертикальное перемещение; также он сможет распознать клавишу ввода при вводе.

curses.noqiflush()

Когда используется функция noqiflush(), обычная очистка очередей ввода и вывода, связанных с символами INTR, QUIT и SUSP, не выполняется. Вы можете вызвать noqiflush() в обработчике сигнала, если хотите, чтобы вывод продолжался так, как будто прерывания не произошло, после выхода из обработчика.

curses.noraw()

Выходит из режима raw. Возвращается в нормальный «готовый» режим с буферизацией строк.

curses.pair_content(pair_number)

Возвращает кортеж (fg, bg), содержащий цвета для запрошенной пары цветов. Значение pair_number должно быть между 0 и COLOR_PAIRS - 1.

curses.pair_number(attr)

Возвращает номер пары цветов, установленный значением атрибута attr. color_pair() — обратная функция к этой функции.

curses.putp(str)

Эквивалентно tputs(str, 1, putchar); выводит значение заданной возможности terminfo для текущего терминала. Обратите внимание, что вывод putp() всегда отправляется в стандартный вывод.

curses.qiflush([flag])

Если flag равно False, эффект аналогичен вызову noqiflush(). Если flag равно True, или аргумент не указан, очереди будут очищены при чтении этих управляющих символов.

curses.raw()

Включает режим raw. В режиме raw отключается обычная буферизация строк и обработка прерываний, выхода, приостановки и управления потоком; символы предоставляются функциям ввода curses один за другим.

END_OF_DOCUMENT_MARKER
curses.reset_prog_mode()

Восстановление режима терминала «программа» (как он был сохранен ранее функцией def_prog_mode()).

curses.reset_shell_mode()

Восстановление режима терминала «оболочка» (как он был сохранен ранее функцией def_shell_mode()).

curses.resetty()

Восстановление состояния режимов терминала до состояния, которое было на момент последнего вызова функции savetty().

curses.resize_term(nlines, ncols)

Функция ядра, используемая функцией resizeterm(), выполняющая основную работу при изменении размера окон; при изменении размеров окон, resize_term() заполняет расширенные области пустым значением. Приложение должно заполнить эти области соответствующими данными. Функция resize_term() пытается изменить размер всех окон. Однако из-за соглашения об вызовах для областей (pads), изменение размера невозможно без дополнительного взаимодействия с приложением.

curses.resizeterm(nlines, ncols)

Изменение размеров стандартных и текущих окон до указанных размеров и корректировка других данных, используемых библиотекой curses для записи размеров окон (в частности, обработчик SIGWINCH).

curses.savetty()

Сохранение текущего состояния режимов терминала в буфер, который может использоваться функцией resetty().

curses.get_escdelay()

Извлечение значения, установленного функцией set_escdelay().

Добавлена в версии 3.9.

curses.set_escdelay(ms)

Устанавливает количество миллисекунд, которое следует ожидать после чтения символа escape, чтобы отличить отдельный символ escape, введенный с клавиатуры, от последовательностей escape, отправленных клавишами курсора и функциональными клавишами.

Добавлена в версии 3.9.

curses.get_tabsize()

Извлечение значения, установленного функцией set_tabsize().

Добавлена в версии 3.9.

curses.set_tabsize(size)

Устанавливает количество столбцов, используемых библиотекой curses при преобразовании символа табуляции в пробелы при добавлении табуляции в окно.

Добавлена в версии 3.9.

curses.setsyx(y, x)

Устанавливает курсор виртуального экрана в координаты y, x. Если y и x оба равны -1, то leaveok устанавливается в значение True.

curses.setupterm(term=None, fd=- 1)

Инициализация терминала. term — строка с именем терминала или None; если опущено или None, будет использовано значение переменной среды TERM. fd — дескриптор файла, в который будут отправлены любые инициализирующие последовательности; если не указан или -1, будет использован дескриптор файла для sys.stdout.

curses.start_color()

Необходимо вызвать, если программист хочет использовать цвета, и до вызова любой другой функции работы с цветами. Хорошей практикой является вызов этой функции сразу после initscr().

start_color() инициализирует восемь базовых цветов (чёрный, красный, зелёный, жёлтый, синий, пурпурный, голубой и белый) и две глобальные переменные в модуле curses, COLORS и COLOR_PAIRS, содержащие максимальное количество цветов и пар цветов, которые поддерживает терминал. Также она восстанавливает цвета терминала до значений, которые были при включении терминала.

curses.termattrs()

Возвращает логическое ИЛИ всех атрибутов видео, поддерживаемых терминалом. Эта информация полезна, когда программа curses нуждается в полном управлении внешним видом экрана.

curses.termname()

Возвращает значение переменной среды TERM, как объект bytes, усечённый до 14 символов.

curses.tigetflag(capname)

Возвращает значение булевого параметра, соответствующего имени параметра terminfo capname как целое число. Возвращает значение -1 если capname не является булевым параметром, или 0 если он отменен или отсутствует в описании терминала.

curses.tigetnum(capname)

Возвращает значение числового параметра, соответствующего имени параметра terminfo capname как целое число. Возвращает значение -2 если capname не является числовым параметром, или -1 если он отменен или отсутствует в описании терминала.

curses.tigetstr(capname)

Возвращает значение строкового параметра, соответствующего имени параметра terminfo capname как объект bytes. Возвращает None если capname не является строковым параметром terminfo, или он отменен или отсутствует в описании терминала.

curses.tparm(str[, ...])

Инициализирует объект bytes str с предоставленными параметрами, где str должна быть строка с параметрами, полученная из базы данных terminfo. Например, tparm(tigetstr("cup"), 5, 3) может привести к b'\033[6;4H', точный результат зависит от типа терминала.

curses.typeahead(fd)

Указывает, что дескриптор файла fd должен использоваться для проверки наличия ввода в очереди. Если fd равен -1, то проверка ввода в очереди не выполняется.

Библиотека curses выполняет оптимизацию «разрыва строк», периодически проверяя наличие ввода в очереди при обновлении экрана. Если ввод обнаружен и он поступает с tty, текущее обновление откладывается до вызова refresh или doupdate, что позволяет быстрее реагировать на команды, набранные заранее. Эта функция позволяет указать другой дескриптор файла для проверки наличия ввода в очереди.

curses.unctrl(ch)

Возвращает объект bytes, представляющий напечатанное представление символа ch. Управляющие символы представляются как каретка, за которой следует символ, например, b'^C'. Печатные символы возвращаются без изменений.

curses.ungetch(ch)

Возвращает ch, так что следующая функция getch() вернёт его.

Примечание

Перед вызовом функции getch() может быть помещен только один символ ch.

curses.update_lines_cols()

Обновляет LINES и COLS. Полезно для обнаружения ручного изменения размеров экрана.

Добавлена в версии 3.5.

curses.unget_wch(ch)

Возвращает ch, так что следующая функция get_wch() вернёт его.

Примечание

Перед вызовом функции get_wch() может быть помещен только один символ ch.

Добавлена в версии 3.3.

curses.ungetmouse(id, x, y, z, bstate)

Помещает событие KEY_MOUSE в очередь ввода, ассоциируя с ним данные состояния.

curses.use_env(flag)

Если используется, эта функция должна быть вызвана до вызова initscr() или newterm. Когда flag равен False, значения строк и столбцов, указанные в базе данных terminfo, будут использоваться, даже если переменные среды LINES и COLUMNS (используемые по умолчанию) установлены, или если curses работает в окне (в этом случае по умолчанию будет использоваться размер окна, если LINES и COLUMNS не установлены).

curses.use_default_colors()

Разрешить использование значений по умолчанию для цветов на терминалах, поддерживающих эту функцию. Используйте это для поддержки прозрачности в вашем приложении. Цвет по умолчанию назначается номеру цвета -1. После вызова этой функции, init_pair(x, curses.COLOR_RED, -1) инициализирует, например, пару цвета x с красным цветом переднего плана на фоновом цвете по умолчанию.

curses.wrapper(func, /, *args, **kwargs)

Инициализирует curses и вызывает другой вызываемый объект, func, который должен содержать остальную часть вашего приложения, использующего curses. Если приложение вызывает исключение, эта функция восстановит терминал в нормальное состояние перед повторным вызовом исключения и генерацией трассировки. Вызываемый объект func затем получает главный окно ‘stdscr’ в качестве первого аргумента, а затем любые другие аргументы, переданные в wrapper(). Перед вызовом func, wrapper() включает режим cbreak, отключает отображение, включает клавиатуру терминала и инициализирует цвета, если терминал поддерживает цвет. При выходе (как при нормальном завершении, так и при исключении) он восстанавливает режим cooked, включает отображение и отключает клавиатуру терминала.

Объекты окон

Объекты окон, возвращаемые методами initscr() и newwin() выше, имеют следующие методы и атрибуты:

window.addch(ch[, attr])
window.addch(y, x, ch[, attr])

Отображает символ ch в позиции (y, x) с атрибутами attr, перезаписывая любой ранее отображенный символ в этой позиции. По умолчанию, позиция символа и атрибуты — это текущие настройки для объекта окна.

Примечание

Запись за пределами окна, подокна или области вызывает исключение curses.error. Попытка записи в нижний правый угол окна, подокна или области приведёт к исключению после вывода символа.

window.addnstr(str, n[, attr])
window.addnstr(y, x, str, n[, attr])

Отображает не более n символов из строки str в позиции (y, x) с атрибутами attr, перезаписывая предыдущие символы на экране.

window.addstr(str[, attr])
window.addstr(y, x, str[, attr])

Отображает строку символов str в позиции (y, x) с атрибутами attr, перезаписывая предыдущие символы на экране.

Примечание

  • Запись за пределами окна, подокна или области вызывает исключение curses.error. Попытка записи в нижний правый угол окна, подокна или области приведёт к исключению после вывода строки.
  • Ошибка в ncurses, бэкенде данного модуля Python, может вызывать SegFaults при изменении размеров окон. Эта ошибка исправлена в ncurses-6.1-20190511. Если вы используете более раннюю версию ncurses, можно избежать возникновения ошибки, если не вызывать addstr() со строкой str, содержащей встроенные символы новой строки. Вместо этого вызывайте addstr() для каждой строки по отдельности.
window.attroff(attr)

Удаляет атрибут attr из набора атрибутов, применяемых к всем последующим выводам в текущее окно.

window.attron(attr)

Добавляет атрибут attr к набору атрибутов, применяемых к всем последующим выводам в текущее окно.

window.attrset(attr)

Устанавливает набор атрибутов attr для всех последующих выводов в текущее окно. Изначально этот набор пуст (без атрибутов).

window.bkgd(ch[, attr])

Устанавливает фоновый символ ch с атрибутами attr для окна. Изменение применяется ко всем позициям символов в окне:

  • Атрибут каждого символа в окне меняется на новый фоновый атрибут.
  • Любой ранее существовавший фоновый символ меняется на новый.
window.bkgdset(ch[, attr])

Устанавливает фоновый цвет окна. Фон окна состоит из символа и набора атрибутов. Часть атрибута фона объединяется (ИЛИ) со всеми символами, кроме пробелов, которые выводятся в окно. Части символа и атрибута фона объединяются со всеми пробелами. Фон становится свойством символа и перемещается вместе с символом при прокрутке и операциях вставки/удаления строк/символов.

window.border([ls[, rs[, ts[, bs[, tl[, tr[, bl[, br]]]]]]]])

Рисует рамку вокруг границ окна. Каждый параметр определяет символ, используемый для определённой части рамки; см. таблицу ниже для получения более подробной информации.

Примечание

Значение 0 для любого параметра вызовет использование по умолчанию символа для этого параметра. Использование ключевых параметров недопустимо. Значения по умолчанию приведены в этой таблице:

Параметр

Описание

Значение по умолчанию

ls

Левая сторона

ACS_VLINE

rs

Правая сторона

ACS_VLINE

ts

Верх

ACS_HLINE

bs

Низ

ACS_HLINE

tl

Левый верхний угол

ACS_ULCORNER

tr

Правый верхний угол

ACS_URCORNER

bl

Левый нижний угол

ACS_LLCORNER

br

Правый нижний угол

ACS_LRCORNER

window.box([vertch, horch])

Аналогично border(), но ls и rs — это vertch, а ts и bs — horch. Символы углов по умолчанию всегда используются этой функцией.

window.chgat(attr)
window.chgat(num, attr)
window.chgat(y, x, attr)
window.chgat(y, x, num, attr)

Устанавливает атрибуты num символов в текущей позиции курсора или в позиции (y, x), если указана. Если num не указано или равно -1, атрибут будет установлен для всех символов до конца строки. Функция переместит курсор в позицию (y, x), если указана. Изменённая строка будет помечена с помощью метода touchline(), чтобы содержимое было перерисовано при следующем обновлении окна.

window.clear()

Аналогично erase(), но также перерисовывает всё окно при следующем вызове refresh().

window.clearok(flag)

Если flag равно True, при следующем вызове refresh() окно будет полностью очищено.

window.clrtobot()

Очищает область от курсора до конца окна: все строки ниже курсора удаляются, а затем выполняется операция, эквивалентная clrtoeol().

window.clrtoeol()

Очищает область от курсора до конца строки.

window.cursyncup()

Обновляет текущую позицию курсора у всех предков окна, чтобы отразить текущую позицию курсора в данном окне.

window.delch([y, x])

Удаляет любой символ в позиции (y, x).

window.deleteln()

Удаляет строку под курсором. Все последующие строки смещаются вверх на одну строку.

window.derwin(begin_y, begin_x)
window.derwin(nlines, ncols, begin_y, begin_x)

Сокращение от «производное окно», derwin() эквивалентно вызову subwin(), за исключением того, что begin_y и begin_x относятся к началу данного окна, а не к всему экрану. Возвращает объект окна для производного окна.

window.echochar(ch[, attr])

Добавляет символ ch с атрибутами attr и немедленно вызывает refresh() для окна.

window.enclose(y, x)

Проверяет, находятся ли заданные экранные координаты в пределах данного окна, возвращая True или False соответственно. Это полезно для определения подмножества окон на экране, которые содержат позицию события мыши.

Изменено в версии 3.10: Ранее возвращались 1 или 0 вместо True или False.

window.encoding

Кодировка, используемая для кодирования аргументов метода (строки и символы Unicode). Атрибут кодировки наследуется от родительского окна при создании подокна, например, с помощью window.subwin(). По умолчанию используется кодировка локали (см. locale.getpreferredencoding()).

Добавлен в версии 3.3.

window.erase()

Очищает окно.

window.getbegyx()

Возвращает кортеж (y, x) координат верхнего левого угла.

window.getbkgd()

Возвращает текущую пару символа/атрибута фона данного окна.

window.getch([y, x])

Получить символ. Обратите внимание, что возвращаемое целое число не обязательно должно находиться в диапазоне ASCII: функциональные клавиши, клавиши набора и так далее представлены числами, большими 255. В режиме без задержки, возвращает -1 если нет ввода, в противном случае ожидает, пока не будет нажата клавиша.

window.get_wch([y, x])

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

Новое в версии 3.3.

window.getkey([y, x])

Получить символ, возвращая строку вместо целого числа, как это делает getch(). Функциональные клавиши, клавиши набора и другие специальные клавиши возвращают многобайтовую строку, содержащую имя клавиши. В режиме без задержки, если нет ввода, генерирует исключение.

window.getmaxyx()

Возвращает кортеж (y, x) высоты и ширины окна.

window.getparyx()

Возвращает начальные координаты этого окна относительно родительского окна в виде кортежа (y, x). Возвращает (-1, -1) если у этого окна нет родителя.

window.getstr()
window.getstr(n)
window.getstr(y, x)
window.getstr(y, x, n)

Считывает байтовую строку от пользователя с примитивными возможностями редактирования строк.

window.getyx()

Возвращает кортеж (y, x) текущего положения курсора относительно верхнего левого угла окна.

window.hline(ch, n)
window.hline(y, x, ch, n)

Отображает горизонтальную линию, начинающуюся с (y, x) длиной n, состоящую из символа ch.

window.idcok(flag)

Если flag равно False, curses больше не рассматривает использование функции вставки/удаления символов терминала; если flag равно True, использование вставки и удаления символов включено. При первоначальной инициализации curses использование вставки/удаления символов включено по умолчанию.

window.idlok(flag)

Если flag равно True, curses попытается использовать средства аппаратного редактирования строк. В противном случае вставка/удаление строк отключены.

window.immedok(flag)

Если flag равно True, любое изменение изображения окна автоматически вызывает обновление окна; вам больше не нужно вызывать refresh() самостоятельно. Однако это может значительно ухудшить производительность из-за многократных вызовов wrefresh. Этот параметр отключён по умолчанию.

window.inch([y, x])

Возвращает символ в заданной позиции в окне. Нижние 8 бит — собственно символ, а старшие биты — атрибуты.

window.insch(ch[, attr])
window.insch(y, x, ch[, attr])

Рисует символ ch в (y, x) с атрибутами attr, сдвигая линию из позиции x вправо на один символ.

window.insdelln(nlines)

Вставляет nlines строк в указанное окно над текущей строкой. Последние nlines строк теряются. Для отрицательного nlines удаляет nlines строк, начиная со строки под курсором, и перемещает оставшиеся строки вверх. Последние nlines строк очищаются. Текущее положение курсора остается неизменным.

window.insertln()

Вставляет пустую строку под курсором. Все последующие строки сдвигаются вниз на одну строку.

window.insnstr(str, n[, attr])
window.insnstr(y, x, str, n[, attr])

Вставляет строку символов (столько символов, сколько поместится в строке) перед символом под курсором, до n символов. Если n равно нулю или отрицательно, вся строка вставляется. Все символы справа от курсора сдвигаются вправо, а самые правые символы в строке теряются. Положение курсора не меняется (после перехода в y, x, если указано).

window.insstr(str[, attr])
window.insstr(y, x, str[, attr])

Вставляет строку символов (столько символов, сколько поместится в строке) перед символом под курсором. Все символы справа от курсора сдвигаются вправо, а самые правые символы в строке теряются. Положение курсора не меняется (после перехода в y, x, если указано).

window.instr([n])
window.instr(y, x[, n])

Возвращает байтовую строку символов, извлечённых из окна, начиная с текущего положения курсора или с y, x, если указано. Атрибуты удаляются из символов. Если n указано, instr() возвращает строку длиной не более n символов (исключая завершающий NUL).

window.is_linetouched(line)

Возвращает True если указанная строка была изменена с момента последнего вызова refresh(); в противном случае возвращает False. Генерирует исключение curses.error, если line неверно для данного окна.

window.is_wintouched()

Возвращает True если указанное окно было изменено с момента последнего вызова refresh(); в противном случае возвращает False.

window.keypad(flag)

Если flag равно True, последовательности escape, сгенерированные некоторыми клавишами (клавишами набора, функциональными клавишами), будут интерпретироваться curses. Если flag равно False, последовательности escape останутся неизменными в потоке ввода.

window.leaveok(flag)

Если flag равно True, курсор остаётся на своём месте при обновлении, а не переходит в «позицию курсора». Это минимизирует перемещения курсора, где это возможно. Если это возможно, курсор будет сделан невидимым. Если flag равно False, курсор всегда будет в «позиции курсора» после обновления.

window.move(new_y, new_x)

Переместить курсор в (new_y, new_x).

window.mvderwin(y, x)

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

window.mvwin(new_y, new_x)

Переместить окно так, чтобы его верхний левый угол был в (new_y, new_x).

window.nodelay(flag)

Если flag равно True, getch() будет асинхронным.

window.notimeout(flag)

Если flag равно True, последовательности escape не будут отслеживаться по времени. Если flag равно False, после нескольких миллисекунд последовательность escape не будет интерпретирована и останется в потоке ввода как есть.

window.noutrefresh()

Пометить для обновления, но подождать. Эта функция обновляет структуру данных, представляющую желаемое состояние окна, но не принудительно обновляет физический экран. Для этого вызовите doupdate().

window.overlay(destwin[, sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol])

Перекрывает окно поверх destwin. Окна не обязательно должны иметь одинаковый размер, копируется только перекрывающаяся область. Эта копия неразрушительная, что означает, что текущий символ фона не перезаписывает старое содержимое destwin.

Для получения тонкого управления копируемой областью можно использовать вторую форму overlay(). sminrow и smincol — координаты верхнего левого угла исходного окна, а другие переменные обозначают прямоугольник в целевом окне.

window.overwrite(destwin[, sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol])

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

Для получения точного управления копируемой областью можно использовать вторую форму overwrite(). sminrow и smincol — координаты верхнего левого угла исходного окна, другие переменные обозначают прямоугольник в целевом окне.

window.putwin(file)

Записывает все данные, связанные с окном, в предоставленный объект файла. Эта информация может быть позже получена с помощью функции getwin().

window.redrawln(beg, num)

Указывает, что num строк экрана, начиная со строки beg, повреждены и должны быть полностью перерисованы при следующем вызове refresh().

window.redrawwin()

Затрагивает всё окно, что вызывает его полную перерисовку при следующем вызове refresh().

window.refresh([pminrow, pmincol, sminrow, smincol, smaxrow, smaxcol])

Немедленно обновляет отображение (синхронизирует фактический экран с предыдущими методами рисования/удаления).

6 необязательных аргументов могут быть указаны только в том случае, если окно является областью, созданной с помощью newpad(). Дополнительные параметры необходимы для указания, какие части области и экрана участвуют. pminrow и pmincol указывают верхний левый угол прямоугольника, который будет отображен в области. sminrow, smincol, smaxrow и smaxcol указывают края прямоугольника, который будет отображен на экране. Нижний правый угол прямоугольника, который будет отображен в области, вычисляется по координатам экрана, так как прямоугольники должны иметь одинаковый размер. Оба прямоугольника должны полностью находиться внутри своих соответствующих структур. Отрицательные значения pminrow, pmincol, sminrow или smincol обрабатываются так, как если бы они были нулевыми.

window.resize(nlines, ncols)

Перевыделяет память для окна curses, чтобы изменить его размеры на указанные значения. Если какой-либо размер больше текущего, данные окна заполняются пробелами, к которым применен текущий фон (как задано bkgdset()).

window.scroll([lines=1])

Прокручивает экран или область прокрутки вверх на lines строк.

window.scrollok(flag)

Управление тем, что происходит, когда курсор окна перемещается за край окна или области прокрутки, либо в результате действия новой строки в нижней строке, либо ввода последнего символа последней строки. Если flag равен False, курсор остается в нижней строке. Если flag равен True, окно прокручивается вверх на одну строку. Обратите внимание, что для получения физического эффекта прокрутки на терминале также необходимо вызвать idlok().

window.setscrreg(top, bottom)

Устанавливает область прокрутки от строки top до строки bottom. Все действия прокрутки будут происходить в этой области.

window.standend()

Отключает выделенный атрибут. На некоторых терминалах это приводит к отключению всех атрибутов.

window.standout()

Включает атрибут A_STANDOUT.

window.subpad(begin_y, begin_x)
window.subpad(nlines, ncols, begin_y, begin_x)

Возвращает подокно, верхний левый угол которого находится в (begin_y, begin_x), а ширина/высота — ncols/nlines.

window.subwin(begin_y, begin_x)
window.subwin(nlines, ncols, begin_y, begin_x)

Возвращает подокно, верхний левый угол которого находится в (begin_y, begin_x), а ширина/высота — ncols/nlines.

По умолчанию подокно будет простираться от указанной позиции до нижнего правого угла окна.

window.syncdown()

Затрагивает каждую ячейку в окне, которая была затронута в любом из его родительских окон. Эта процедура вызывается refresh(), поэтому её почти никогда не нужно вызывать вручную.

window.syncok(flag)

Если flag равно True, то syncup() вызывается автоматически всякий раз, когда происходит изменение в окне.

window.syncup()

Затрагивает все ячейки в родительских окнах окна, которые были изменены в текущем окне.

window.timeout(delay)

Устанавливает блокирующее или неблокирующее поведение чтения для окна. Если delay отрицательно, используется блокирующее чтение (которое будет ждать бесконечно ввода). Если delay равно нулю, используется неблокирующее чтение, и getch() вернёт -1, если ввод не ожидается. Если delay положительно, getch() будет блокироваться на delay миллисекунд и вернёт -1, если ввода всё ещё нет в конце этого времени.

window.touchline(start, count[, changed])

Предполагается, что count строк были изменены, начиная со строки start. Если changed указано, оно определяет, помечены ли затронутые строки как изменённые (changed=True) или неизменённые (changed=False).

window.touchwin()

Предполагается, что всё окно было изменено, для оптимизации рисования.

window.untouchwin()

Помечает все строки в окне как неизменённые с момента последнего вызова refresh().

window.vline(ch, n[, attr])
window.vline(y, x, ch, n[, attr])

Отображает вертикальную линию, начинающуюся в (y, x), длиной n, состоящую из символа ch с атрибутами attr.

Постоянные значения

Модуль curses определяет следующие члены данных:

curses.ERR

Некоторые функции библиотеки curses, возвращающие целое число, например getch(), возвращают ERR при ошибке.

curses.OK

Некоторые функции библиотеки curses, возвращающие целое число, такие как napms(), возвращают OK при успешном выполнении.

curses.version

Объект типа bytes, представляющий текущую версию модуля. Также доступен как __version__.

curses.ncurses_version

Кортеж с именами, содержащий три компонента версии библиотеки ncurses: major, minor и patch. Все значения являются целыми числами. К компонентам также можно обратиться по имени, поэтому curses.ncurses_version[0] эквивалентно curses.ncurses_version.major и так далее.

Доступность: если используется библиотека ncurses.

Новое в версии 3.8.

Некоторые константы доступны для задания атрибутов ячеек символов. Точные доступные константы зависят от системы.

Атрибут

Значение

A_ALTCHARSET

Режим альтернативного набора символов

A_BLINK

Режим мигания

A_BOLD

Режим жирный шрифт

A_DIM

Режим тусклого шрифта

A_INVIS

Режим невидимого или пустого символа

A_ITALIC

Режим курсивного шрифта

A_NORMAL

Нормальный атрибут

A_PROTECT

Режим защиты

A_REVERSE

Режим инверсии цветов фона и переднего плана

A_STANDOUT

Режим выделения

A_UNDERLINE

Режим подчеркивания

A_HORIZONTAL

Режим горизонтального выделения

A_LEFT

Режим выделения слева

A_LOW

Режим выделения снизу

A_RIGHT

Режим выделения справа

A_TOP

Режим выделения сверху

A_VERTICAL

Режим выделения по вертикали

A_CHARTEXT

Маска для извлечения символа

Новое в версии 3.7: A_ITALIC был добавлен.

Несколько констант доступны для извлечения соответствующих атрибутов, возвращаемых некоторыми методами.

Маска

Значение

A_ATTRIBUTES

Маска для извлечения атрибутов

A_CHARTEXT

Маска для извлечения символа

A_COLOR

Маска для извлечения информации о паре цветов

Ключи обозначаются целочисленными константами с именами, начинающимися с KEY_. Точные доступные символы на клавиатуре зависят от системы.

Ключевая константа

Ключ

KEY_MIN

Минимальное значение ключа

KEY_BREAK

Ключ разрыва (ненадежный)

KEY_DOWN

Стрелка вниз

KEY_UP

Стрелка вверх

KEY_LEFT

Стрелка влево

KEY_RIGHT

Стрелка вправо

KEY_HOME

Ключ Home (стрелка вверх + влево)

KEY_BACKSPACE

Backspace (ненадежный)

KEY_F0

Клавиши функций. Поддерживается до 64 клавиш функций.

KEY_Fn

Значение клавиши функции n

KEY_DL

Удалить строку

KEY_IL

Вставить строку

KEY_DC

Удалить символ

KEY_IC

Вставить символ или перейти в режим вставки

KEY_EIC

Выход из режима вставки символа

KEY_CLEAR

Очистить экран

KEY_EOS

Очистить до конца экрана

KEY_EOL

Очистить до конца строки

KEY_SF

Прокрутить на 1 строку вперед

KEY_SR

Прокрутить на 1 строку назад (обратный)

KEY_NPAGE

Следующая страница

KEY_PPAGE

Предыдущая страница

KEY_STAB

Установить табуляцию

KEY_CTAB

Очистить табуляцию

KEY_CATAB

Очистить все табуляции

KEY_ENTER

Ввод или отправка (ненадежный)

KEY_SRESET

Мягкий (частичный) сброс (ненадежный)

KEY_RESET

Сброс или жесткий сброс (ненадежный)

KEY_PRINT

Печать

KEY_LL

Вниз или в низ (нижний левый)

KEY_A1

В верхнем левом углу клавиатуры

KEY_A3

В верхнем правом углу клавиатуры

KEY_B2

Центр клавиатуры

KEY_C1

В нижнем левом углу клавиатуры

KEY_C3

В нижнем правом углу клавиатуры

KEY_BTAB

Возврат табуляции

KEY_BEG

Нач (начало)

KEY_CANCEL

Отмена

KEY_CLOSE

Закрыть

KEY_COMMAND

Cmd (команда)

KEY_COPY

Копировать

KEY_CREATE

Создать

KEY_END

Конец

KEY_EXIT

Выход

KEY_FIND

Найти

KEY_HELP

Справка

KEY_MARK

Пометка

KEY_MESSAGE

Сообщение

KEY_MOVE

Переместить

KEY_NEXT

Далее

KEY_OPEN

Открыть

KEY_OPTIONS

Параметры

KEY_PREVIOUS

Пред (предыдущий)

KEY_REDO

Повторить

KEY_REFERENCE

Спр (ссылка)

KEY_REFRESH

Обновить

KEY_REPLACE

Заменить

KEY_RESTART

Перезапустить

KEY_RESUME

Возобновить

KEY_SAVE

Сохранить

KEY_SBEG

Сдвинутый Нач (начало)

KEY_SCANCEL

Сдвинутая Отмена

KEY_SCOMMAND

Сдвинутая Команда

KEY_SCOPY

Сдвинутая Копировать

KEY_SCREATE

Сдвинутая Создать

KEY_SDC

Сдвинутая Удалить символ

KEY_SDL

Сдвинутая Удалить строку

KEY_SELECT

Выбрать

KEY_SEND

Сдвинутый Конец

KEY_SEOL

Сдвинутая Очистить строку

KEY_SEXIT

Сдвинутый Выход

KEY_SFIND

Сдвинутая Найти

KEY_SHELP

Сдвинутая Справка

KEY_SHOME

Сдвинутый Home

KEY_SIC

Сдвинутый Ввод

KEY_SLEFT

Сдвинутая Стрелка влево

KEY_SMESSAGE

Сдвинутое Сообщение

KEY_SMOVE

Сдвинутая Переместить

KEY_SNEXT

Сдвинутый Далее

KEY_SOPTIONS

Сдвинутые Параметры

KEY_SPREVIOUS

Сдвинутый Пред

KEY_SPRINT

Сдвинутая Печать

KEY_SREDO

Сдвинутый Повторить

KEY_SREPLACE

Сдвинутая Заменить

KEY_SRIGHT

Сдвинутая Стрелка вправо

KEY_SRSUME

Сдвинутое Возобновить

KEY_SSAVE

Сдвинутое Сохранить

KEY_SSUSPEND

Сдвинутая Пауза

KEY_SUNDO

Сдвинутое Отменить

KEY_SUSPEND

Приостановить

KEY_UNDO

Отменить

KEY_MOUSE

Произошло событие мыши

KEY_RESIZE

Событие изменения размера терминала

KEY_MAX

Максимальное значение ключа

На VT100 и их программных эмуляциях, таких как эмуляторы X терминала, обычно доступны как минимум четыре клавиши функции (KEY_F1, KEY_F2, KEY_F3, KEY_F4). Кнопки со стрелками сопоставлены со значениями KEY_UP, KEY_DOWN, KEY_LEFT и KEY_RIGHT очевидным образом. Если у вашей машины есть клавиатура ПК, можно ожидать клавиши со стрелками и двенадцать клавиш функций (более старые клавиатуры ПК могут иметь только десять клавиш функций); также следующие сопоставления клавиш клавиатуры являются стандартными:

Надпись клавиши

Константа

Вставить

KEY_IC

Удалить

KEY_DC

Home

KEY_HOME

End

KEY_END

Страница Вверх

KEY_PPAGE

Страница Вниз

KEY_NPAGE

В следующей таблице перечислены символы из альтернативного набора символов. Они унаследованы от терминала VT100 и, как правило, будут доступны в программных эмуляциях, таких как X-терминалы. Если графического символа нет, curses использует грубую печатную ASCII-аппроксимацию.

Примечание

Они доступны только после вызова initscr().

END_OF_DOCUMENT_MARKER

Код ACS

Значение

ACS_BBSS

альтернативное название для правого верхнего угла

ACS_BLOCK

сплошной квадратный блок

ACS_BOARD

набор квадратов

ACS_BSBS

альтернативное название для горизонтальной линии

ACS_BSSB

альтернативное название для левого верхнего угла

ACS_BSSS

альтернативное название для верхней Т-образной детали

ACS_BTEE

нижняя Т-образная деталь

ACS_BULLET

пуля

ACS_CKBOARD

шахматная доска (штриховка)

ACS_DARROW

стрелка, направленная вниз

ACS_DEGREE

символ градуса

ACS_DIAMOND

ромб

ACS_GEQUAL

больше или равно

ACS_HLINE

горизонтальная линия

ACS_LANTERN

символ фонаря

ACS_LARROW

стрелка влево

ACS_LEQUAL

меньше или равно

ACS_LLCORNER

левый нижний угол

ACS_LRCORNER

правый нижний угол

ACS_LTEE

левая Т-образная деталь

ACS_NEQUAL

знак не равно

ACS_PI

буква пи

ACS_PLMINUS

знак плюс-минус

ACS_PLUS

большой знак плюс

ACS_RARROW

стрелка вправо

ACS_RTEE

правая Т-образная деталь

ACS_S1

линия сканирования 1

ACS_S3

линия сканирования 3

ACS_S7

линия сканирования 7

ACS_S9

линия сканирования 9

ACS_SBBS

альтернативное название для правого нижнего угла

ACS_SBSB

альтернативное название для вертикальной линии

ACS_SBSS

альтернативное название для правой Т-образной детали

ACS_SSBB

альтернативное название для левого нижнего угла

ACS_SSBS

альтернативное название для нижней Т-образной детали

ACS_SSSB

альтернативное название для левой Т-образной детали

ACS_SSSS

альтернативное название для пересечения или большого знака плюс

ACS_STERLING

фунт стерлингов

ACS_TTEE

верхняя Т-образная деталь

ACS_UARROW

стрелка вверх

ACS_ULCORNER

левый верхний угол

ACS_URCORNER

правый верхний угол

ACS_VLINE

вертикальная линия

В следующей таблице перечислены предопределенные цвета:

Константа

Цвет

COLOR_BLACK

Черный

COLOR_BLUE

Синий

COLOR_CYAN

Цветан (светло-зеленовато-синий)

COLOR_GREEN

Зеленый

COLOR_MAGENTA

Маджента (пурпурно-красный)

COLOR_RED

Красный

COLOR_WHITE

Белый

COLOR_YELLOW

Желтый

© 2001–2023 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.10/library/curses.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API