[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
 Режимы вывода - c_oflag

Поле c_oflag управляет обработкой вывода.
Если OPOST установлен, выводимые символы подвергаются постобработке в
соответствии с остальными флагами, иначе выводимые символы передаются
без изменений.
Если установлен OLCUC, буквы нижнего регистра передаются как
соответствующие буквы верхнего регистра. Этот параметр часто
используется вместе с IUCLC.
Если ONLCR установлен, символ NL передается как пара CR-NL. Если OCRNL
установлен, символ CR передается как NL. Если установлен ONOCR, то,
если каретка находится в позиции 0, символ CR не передается. Если
установлен ONLRET, предполагается, что NL выполняет возврат каретки;
счетчик столбцов устанавливается в 0, и используется задержка,
заданная для возврата каретки. Иначе предполагается, что NL выполняет
только перевод строки, счетчик столбцов остается без изменений.
Счетчик столбцов также обнуляется, если передается символ CR.
Биты задержки определяют, на сколько приостанавливать передачу, чтобы
терминал успел выполнить механическое или иное передвижение каретки
при передаче определенных символов. Во всех случаях значение 0
означает отсутствие задержки. Если установлен OFILL, вместо задержки
по таймеру будут передаваться символы заполнения. Это полезно для
высокоскоростных терминалов с небольшими задержками. Если установлен
OFDEL, символом заполнения будет DEL, иначе NUL.
Если определены перевод страницы и вертикальная табуляция, задержка
для них будет около 2 секунд.
Задержки для перевода строки 0.10 секунд. Если установлен ONLRET,
вместо задержки для перевода строки используется задержка для перевода
каретки. Если установлен OFILL, будут переданы два символа заполнения.
Задержка для возврата каретки типа 1 зависит от текущей позиции в
строке, типа 2 - 0.10 секунд, и типа 3 - 0.15 секунд. Если OFILL
установлен, задержка типа 1 передает два символа заполнения, типа 2 -
четыре.
Задержка горизонтальной табуляции типа 1 зависит от текущей позиции,
типа 2 - 0.10 секунд. Задержка типа 3 или флаг XTABS задают, что
табуляции необходимо заменять соответствующим числом пробелов. Если
установлен OFILL, для любой из задержек передаются два символа.
Задержка для сдвига каретки назад - 0.05 секунд. Если установлен
OFILL, передается один символ заполнения.
Реальные задержки зависят от скорости линии и загрузки системы.
Начальные установки: OPOST, ONLCR и TAB3.
                       РЕЖИМЫ ВЫВОДА - c_oflag


          Флаг                     Значение

          OPOST     Постобработка вывода
          OLCUC     Преобразовывать при выводе нижний регистр в
          верхний.
          ONLCR     Преобразовывать на выводе NL в CR-NL
          OCRNL     Преобразовывать при выводе CR в NL
          ONOCR     В начале строки CR не передается
          ONLRET    NL выполняет функцию возврата каретки
          OFILL     Использовать для задержки символы заполнения
          OFDEL     Для заполнения используется DEL, иначе NUL
          NLDLY     Задержки для перевода строки:
          NL0
          NL1
          CRDLY     Задержки для возврата каретки:
          CR0
          CR1
          CR2
          CR3
          TABDLY    Задержки для горизонтальной табуляции:
          TAB0
          TAB1
          TAB2
          TAB3
          XTABS     Заменять табуляцию пробелами
          BSDLY     Задержки для возврата на один символ:
          BS0
          BS1
          VTDLY     Задержки для вертикальной табуляции:
          VT0
          VT1
          FFDLY     Задержки для перевода страницы:
          FF0
          FF1