Spec-Zone.ru › Elisp

Выходные данные терминала

Функции вывода в терминал отправляют вывод в текстовый терминал или отслеживают вывод, отправленный в терминал. Переменная baud-rate указывает, как Emacs оценивает скорость вывода терминала.

Пользовательский параметр: baud-rate

Значение этой переменной — скорость вывода терминала, насколько это известно Emacs. Установка этой переменной не изменяет скорость фактической передачи данных, но значение используется для расчётов, таких как вставка дополнительных символов.

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

Значение измеряется в бодах.

Если вы работаете через сеть, и разные части сети работают с разными скоростями в бодах, значение, возвращённое Emacs, может отличаться от значения, используемого вашим локальным терминалом. Некоторые сетевые протоколы передают скорость локального терминала удалённой машине, чтобы Emacs и другие программы могли получить правильное значение, но другие не делают этого. Если у Emacs неправильное значение, это приводит к не оптимальным решениям. Для исправления проблемы, установите baud-rate.

Функция: send-string-to-terminal string &optional terminal

Эта функция отправляет string в terminal без изменений. Управляющие символы в string имеют эффекты, зависящие от терминала. (Если вам нужно отобразить не-ASCII текст на терминале, закодируйте его с помощью одной из функций, описанных в Явное кодирование.) Эта функция работает только с текстовыми терминалами. terminal может быть объектом терминала, фреймом или nil для терминала выбранного фрейма. В режиме пакетной обработки string отправляется в stdout когда terminal равен nil.

Одно из применений этой функции — определение функциональных клавиш на терминалах с загружаемыми определениями функциональных клавиш. Например, вот как (на некоторых терминалах) определить функциональную клавишу 4, чтобы переместиться вперёд на четыре символа (передавая символы C-u C-f компьютеру):

(send-string-to-terminal "\eF4\^U\^F")
     ⇒ nil
Команда: open-termscript filename

Эта функция используется для открытия файла termscript, который будет записывать все символы, отправленные Emacs терминалу. Она возвращает nil. Файлы Termscript полезны для исследования проблем, где Emacs искажает экран, проблемы, которые чаще связаны с неправильными записями Termcap или нежелательными настройками опций терминала, чем с ошибками в самом Emacs. Убедившись, какие символы были фактически выведены, вы можете надежно определить, соответствуют ли они спецификациям Termcap, которые используются.

(open-termscript "../junk/termscript")
     ⇒ nil

Вы закрываете файл termscript, вызвав эту функцию с аргументом nil.

См. также open-dribble-file в Запись ввода.

Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Terminal-Output.html

Spec-Zone.ru

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