Введение

Баннерная программа на Unix и Unix-подобных операционных системах выводит большую ASCII-версию текста, которая поставляется в качестве программных аргументов. Одно из применений команды - создание высоковидимых разделительных страниц для задач печати.

Операция

Каждый аргумент сокращается на 10 символов и печатается на собственной "строке". Чтобы напечатать несколько слов на одной строке, они должны быть переданы как один аргумент, что делается из оболочки, избегая или цитируя слова, как это уместно.

Реализация

Способ, которым программа реализуется внутри, устарел. Используемые шрифты символов встроены в сам код программы, как статически инициализированные структуры данных. Используются две структуры данных. Первый - это таблица данных, содержащая последовательность инструкций по печати, которые кодируют битмап для каждого символа (в кодировании, специфичном для программы баннера). Второй - это индекс в этой таблице, который указывает, для каждого кода символа, где начинаются и заканчиваются инструкции по печати для этого символа. Обе структуры данных были написаны вручную. Спинеллис отмечает, что "трудно придумать более подверженный ошибкам и неустойчивый формат данных". Он отмечает резкий контраст между исходным кодом баннерной программы и автоматически генерируемым исходным кодом для кодирования компьютерных шрифтов в программные данные (используя для сравнения данные шрифтов 6 на 10 в исходном коде порта mac68k NetBSD). Автоматически генерируемые данные комментируются, документируя с помощью ASCII-изображения, как были получены битовые шаблоны. Автоматически генерируемые данные были получены из файла битмапа, который сам был создан с использованием программы создания/редактирования битмапа с графическим пользовательским интерфейсом. И автоматически генерируемые данные организованы в прямой и очевидный способ - последовательность фиксированной длины некодированных байтов для каждого глифа. От Седар Солюшнс. Запускается на современных системах Linux с 2008 года. Печатается горизонтально только с фиксированным размером. Автор: Мэри Энн Хортон из Калифорнийского университета в Беркли, распространяется как часть пакета bsdmainutils, под названием Runs on modern Linux, GNU Hurd, and Mac OS X systems as of 2008. Печатается вертикально с шрифтом переменного размера.