Основы информатики (работа 1)

1. Редакторы текстов ¦

Редактор текстов (text editor) обеспечивает ввод, ¦

изменение и сохранение любого символьного текста, но ¦

предназначен он для подготовки только текстов, которые ¦

в конечном итоге потребляются программами. ¦

¦

Различаясь способами управления и набором сер- ¦

висных возможностей, все они в том или ином виде позво- ¦

ляют: ¦

¦

набирать текст на экране, используя до двухсот ¦

символов; ¦

исправлять ошибочные символы в режиме замены; ¦

вставлять и удалять группы символов (слова) в пре- ¦

делах строки, не переводя неизменившуюся часть строки, ¦

а сдвигая её влево/вправо целиком и в режиме вставки; ¦

удалять одну или несколько строк, размножать их ¦

или перемещать в другое место текста; ¦

раздвигать строки существующего текста, чтобы ¦

вставить туда новый фрагмент; ¦

вставлять группы строк из других текстов; ¦

обнаруживать все вхождения определенной группы ¦

символов (контекста); ¦

заменять один контекст другим, возможно, разной ¦

длины; ¦

сохранять набранный текст для последующих коррек- ¦

ций; ¦

печатать текст на разных типах принтеров стандарт- ¦

ными программами печати одним шрифтом в пределах доку- ¦

мента. ¦

¦

Легко видеть, что использование для подготовки и ¦

печати документа редактора текста на качественном уров- ¦

не соответствует использованию пишущей машинки, разве ¦

что более производительному из-за легкости повторения ¦

печати с хранимой в электронной памяти заготовки и воз- ¦

можности как исправления описок, так и частичной пере- ¦

работки текста путем вставки или исключения новых абза- ¦

цев. ¦

¦

Можно, несколько забегая вперед, указать важный ¦

классификационный признак. Подобно пишущей машинке ре- ¦

дактор текстов не выделяет особо символ пробел, т.е. ¦

ему безразлично машинное представление этого символа - ¦

его код. ¦

¦

2. Системы подготовки текстов ¦

¦

Когда предметной областью пользователя ПЭВМ явля- ¦

ется подготовка текстов на естесственных языках для пе- ¦

чати и печать этих документов, набор операций редактора ¦

должен быть существенно расширен, и программный продукт ¦

переходит в новое качество - систему подготовки текстов ¦

(СПТ) - продукт которому соответствует англоязычный ¦

термин word processor. ¦

¦

Необходимыми и достаточными операциями для квали- ¦

фикации программного продукта, как СПТ, является вык- ¦

лючка, автоматический перенос слов и пагинация. ¦

¦

Выключкой называется операция выравнивания длины ¦

печатных строк согласно указанному размеру за счет рав- ¦

номерного расширения промежутков между словами. Резуль- ¦

татом выключки является ровный правый край всех строк ¦

абзаца (кроме последней). ¦

¦

Обычно СПТ выполняют выключку автоматически, как ¦

только заполнена текущая строчка. При этом "каретка" ¦

сама переводится на следующую строчку экрана. ¦

¦

Легко видеть, что выключка (англ. justify) явля- ¦

ется операцией интернациональной, т.е. не требует ка- ¦

кой-то особой русификации программного продукта кроме ¦

обеспечения возможности вводить русские буквы с клавиа- ¦

туры и видеть их на экране и на распечатке. А делается ¦

это "штатными" средствами ПК - драйверами - без измене- ¦

ния русифицируемой программой. ¦

¦

Перенос слов, на первый взгляд, несложно выполнять ¦

вручную. При этом программе безразлично, на каком языке ¦

текст набирается на экране. (Более того, после ручного ¦

переноса даже пишущие машинки с электронным блоком уже ¦

умеют делать выключку строки после перевода каретки). ¦

Альтруизм рано или поздно оборачивается злом для обеих ¦

сторон: стремление помогать машине ручным переносом ¦

"наказывается" после первой же описки или стилисти- ¦

ческой правки - не только изменяются места желательных ¦

переносов, но и вставленные в текст дефисы, становятся ¦

"персонами non grata". Автоматический алгоритм переноса ¦

не только избавляет пользователя от необходимости сле- ¦

дить за подходом курсора к правой границе строки, но и ¦

стимулирует свободную правку "экранного черновика", так ¦

как программа учтет знаки переноса, которые вставила ¦

сама. Не трудно понять, что алгоритм переноса привязан ¦

к конкретному естесственному языку. Например, по-анг- ¦

лийски слово talking можно перенести только как ¦

talk/ing, а гов/оря по-русски переносить нельзя. Поэто- ¦

му "ординарная" русификация на уровне драйверов внешних ¦

устройств здесь не проходит. ¦

¦

Выполнение выключки без автоматического переноса ¦

обычно серьезно ухудшает качество подготавливаемого до- ¦

кумента из-за больших межсловных промежутков. ¦

¦

Наконец, третья обязательная операция - пагинация ¦

- позволяет проверить позиции, где произойдет разделе- ¦

ние страниц при печати на форматных листах бумаги, и ¦

заранее принять меры, чтобы не допустить нежелательных ¦

разрывов страниц. ¦

¦

К типичным для СПТ операциям можно также отнести ¦

шрифтовое выделение (хотя бы подчеркивание, курсив и ¦

полужирный), переход к новому абзацу, центрирование за- ¦

головка, быстрое перемещение курсора по элементам лите- ¦

ратурного текста - словам, предложениям, абзацам. Нали- ¦

чие других возможностей определяется классом СПТ, т.е. ¦

конкретизацией предметной области. ¦

¦

Для текстовых редакторов понятие класса практи- ¦

чески отсутствует, так как при подготовке любого текста ¦

любому пользователю может понадобиться любая операция ¦

редактирования. Для СПТ набор операций определяется ха- ¦

рактером печатаемых документов. Здесь невостребован- ¦

ность дополнительных возможностей приводит только к ¦

усложнению обучения и работы с программой при увеличе- ¦

нии расходов на приобретение. ¦

¦

Среди систем подготовки текстов на естесственных ¦

языках можно выделить три больших класса, но с доста- ¦

точно размытыми границами: форматеры, текстовые про- ¦

цессоры и настольные издательства. Их интуитивное раз- ¦

личие определяется характером создаваемых документов: ¦

письма, небольшие статьи - форматеры; машинописные ра- ¦

боты (отчеты, диссертации, книги) - текстовые процессо- ¦

ры; работы, выполняемые по правилами полиграфии с по- ¦

лиграфическим качеством (в частности, готовые для фото- ¦

набора или линотипирования), - настольные издательства. ¦

¦

Такая классификация нас не устраивает, либо из нее ¦

следует правило выбора по типу документов, а не по ¦

способности программной системы удовлетворить конкрет- ¦

ного пользователя. Поэтому рискнем, без критики иных ¦

подходов, предложить классификацию более конструктив- ¦

ную. ¦

¦

Признаки, позволяющие говорить о редакторе как о ¦

СПТ, уже названы: ¦

выключка, автоматический перенос, пагинация (плюс раз- ¦

ные шрифты). Было бы соблазнительно перечислить расп- ¦

ространенные операции над элементами текста (тем более, ¦

что многолетняя практика их фактически стандартизирова- ¦

ла) и указать, что одни операции присуще всем СПТ, ¦

включая форматеры, другие - только текстовым процессо- ¦

рам, а само наличие третьих говорит о принадлежности ¦

классу настольных издательств. При этом всякий раз сле- ¦

дует руководствоваться предположительной сложностью ре- ¦

ализации операции и упомянутым уже классом документов, ¦

при наборе которых она встречается. ¦

¦

Например, можно предположить, что любой форматер ¦

(а также текстовый процессор и настольное издательство) ¦

позволит разместить заголовок посередине строки, "при- ¦

жать" фразу (например, "На правах рукописи") к правой ¦

границе и написать слово в разрядку. Если СПТ умеет ав- ¦

томатически строить оглавление документа, да ещё разме- ¦

щать его как в конце, так и в начале по желанию пользо- ¦

вателя, то это уже не форматер. А если СПТ позволяет ¦

подготовить на экране или включить в документ рисунок, ¦

выполненный другой программой, то независимо от плюсов ¦

и минусов в других графах перечня операций это - ¦

настольное издательство. ¦

¦

Такая классификация удобна пользователю-покупате- ¦

лю. Но и она не отражает сути вопроса, так как разра- ¦

ботчики сложных систем, особенно в процесс развития ¦

удачных версий, стремятся привлечь покупателя "экзоти- ¦

ческими" возможностями. При этом система, как будет по- ¦

казано ниже, не переходит в другой класс, но уловить ¦

это по перечню операций крайне трудно. ¦

¦

Итак, единого классификационного признака нам пока ¦

обнаружить не удалось, но может быть это и не нужно ¦

пользователю, к тому же только начинающему работать и ¦

жаждущему скорее приступить к делу, чем выслушивать ¦

"парламентские прения"? Говорят, "скупой платит дваж- ¦

ды", а конструктивная классификация имеет не абстракт- ¦

ный смысл, но позволяет оценить предполагаемую покупку ¦

не только по красоте упаковки... ¦

¦

3. Форматеры ¦

¦

Сначала, не заботясь о различиях других классов ¦

систем подготовки текстов, попробуем "отсечь" формате- ¦

ры. В словаре можно найти следующие определения: ¦

¦

"Форматер (formatter) - программа или часть систе- ¦

мы подготовки текстов, выполняющая форматирование. См. ¦

тж. text formatting."... ¦

¦

"Text formatting (форматирование текста) - в ¦

системах подготовки текстов - преобразование текста в ¦

вид, в котором он должен печататься: формирование абза- ¦

цев, центрирование заголовков, выравнивание полей, раз- ¦

биение на страницы."... ¦

¦

Можно сказать, что форматером будем называть такую ¦

систему подготовки текстов, которая не использует для ¦

внутреннего представления текста никаких кодов, кроме ¦

стандартных: конец строки, перевод каретки, конец стра- ¦

ницы. ¦

¦

Концепция форматера отнюдь не превращает СПТ в ¦

"неполноценный продукт" - форматер способен выполнять ¦

большинство операций по набору любых текстов, как-то: ¦

переносить слова, выравнивать строки, центрировать за- ¦

головки, делить текст на страницы, нумеровать страницы ¦

(снизу, сверху, справа, слева и даже с учетом четных ¦

(справа) и нечетных (слева) страниц), размещать на каж- ¦

дой странице колонтитулы (стандартную надпись над ¦

текстом каждой страницы), заключать страницу в рамку ¦

ЕСКД с нижним штампом и т.д. Самостоятельно пропуская ¦

строчки на экране как на пишущей машинке, пользователь ¦

может обеспечить сочетание печати в 1 и 2 интервала. ¦

¦

Выше мы предположили, что автоматическое построе- ¦

ние оглавления является сложной операцией, выходящей за ¦

пределы класса форматеров. Оказывается, что и это не ¦

так! Достаточно наложить разумное ограничение, что за- ¦

головок должен начинаться с номера в форме "1.", ¦

"2.3.", "7.2.15.", чтобы форматер выбрал все такие за- ¦

головки из текста и даже разместил их ступенькой по ¦

уровням! Конечно, не каждый форматер умеет делать все ¦

то, что мыслимо в рамках очередного класса. Но подгото- ¦

вить на хорошем форматере даже стостраничный отчет дело ¦

не трудное, и говорить о необходимости только на этом ¦

основании перехода к более сложной (в управлении) СПТ ¦

преждевременно. важно то, что только СПТ-форматер может ¦

выступать в роли редактора текстов, т.е. может с из- ¦

вестными преимуществами редактировать любой программный ¦

текст и не требовать трудозатрат на профессиональное ¦

овладение еще и редактором. ¦

¦

4. Текстовые процессоры ¦

¦

Термин текстовый процессор в словарях отсутствует, ¦

но как уже отмечалось, закрепился в профессиональной ¦

речи, пусть даже как альтернативный перевод word ¦

processor. Если обратиться к словарю, то процессор во ¦

втором значении - это программа, обрабатывающая данные ¦

определенного типа, здесь - типа word, т.е. слов ¦

естесственного языка. Нам этого достаточно, чтобы ¦

использовать это обозначение для именования СПТ, отлич- ¦

ной от форматера. ¦

¦

Текстовым процессором будем называть такую систему ¦

подготовки текстов, которая во внутреннем представлении ¦

снабжает собственно текст специальными кодами - размет- ¦

кой. ¦

¦

И дело тут не только в стремлении обеспечить таким ¦

образом легкое переформатирование текстов (см. выше ¦

обсуждение примера в) ). Специальная разметка (и только ¦

она) дает возможность выполнить некоторые дополнитель- ¦

ные операции, расширяя возможности СПТ. ¦

¦

Например, без внутренней разметки (начала и конца ¦

собственно сноски и места ее в тексте) не выполнить ав- ¦

томатического размещения сносок ни в конце документа, ¦

ни на той же странице. Вернее, без разметки это можно ¦

сделать в окончательном варианте текста, точно разде- ¦

ленного на страницы. Но когда выше по тексту изменится ¦

число строк хотя бы в одном абзаце, все сноски, ¦

сместившиеся в середину страницы, придется восстанавли- ¦

вать вручную. ¦

¦

Не составит труда назвать две самые распространен- ¦

ные операции, которые выполняют только текстовые про- ¦

цессоры - использование в одном документе разных шриф- ¦

тов и разных межстрочных интервалов (например, один и ¦

полтора), так как обе этих операций требуют внутренней ¦

разметки - одна по горизонтали, другая - по вертикали. ¦

¦

Внешний файл, подготовленный текстовым процессо- ¦

ром, можно распечатать только этим же текстовым про- ¦

цессором. Как правило, печать может быть выполнена на ¦

принтере любого типа, в том числе и на лазерном. Но эту ¦

печать, в отличие от машинописного стиля форматера, ¦

можно назвать принтерописью, так как обеспечиваются эф- ¦

фекты, пишущей машинке недоступные. ¦

¦

Таким образом, через понятие внутренней разметки ¦

мы на новом качественном уровне вернулись к интуитивным ¦

определениям классов по набору операций и типу докумен- ¦

тов! Но теперь ясно, что выполнение СПТ в виде формате- ¦

ра, следствием чего является некоторое ограничение ¦

списка операций, само по себе не демонстрирует ¦

"неспособность" разработчиков и не ограничивает возмож- ¦

ности огромного отряда пользователей. Другое дело, что ¦

из тех операций, которые можно реализовать в рамках ¦

каждого из классов, не все реализуются, и как формате- ¦

ры, так и текстовые процессоры бывают простыми, средни- ¦

ми и мощными. А выбирая СПТ, следует ориентироваться не ¦

на мощность в смысле наличия большого числа выполняемых ¦

операций, а на отсутствие лично любимых операций, нап- ¦

ример сносок, размещаемых на той же странице, отказы- ¦

ваться от которых автор в угоду программной системе не ¦

намерен. Тогда лучшим для него может оказаться и ¦

простой текстовый процессор, делающий только эту опера- ¦

цию, а не средство, мощное во всех отношениях, но раз- ¦

мещающее сноски только в конце или в другом стандарте ¦

(например, нумеруя их не цифрами, а числом звездочек). ¦

¦

5. Настольные издательства ¦

¦

Термин настольное издательство (desktop ¦

publishing) в современных словарях не фигурирует. Можно ¦

прочесть, что этот класс программ не относится к ¦

текстовым процессорам. По введенной здесь терминологии ¦

это тоже так, но настольные издательства на ряду с фор- ¦

матерами и текстовыми процессорами относятся к СПТ. По- ¦

добно тому, как текстовые процессоры не являются "раз- ¦

витием" форматеров, настольные издательства не являются ¦

более совершенным продолжением текстовых процессоров, ¦

так как у них совсем иная предметная область. ¦

¦

Стремясь к единому классификационному признаку, ¦

можно полусерьезно заметить: форматеры готовят тексты, ¦

которые безразлично чем и на чем выводить; результаты ¦

работы текстовых процессоров безразлично на чем выво- ¦

дить (но не безразлично чем); тексты из настольных из- ¦

дательств небезразлично даже на чем выводить: принтер ¦

должен быть только лазерным, а на экране - режим ¦

WYSIWYG (англ. What You See Is What You Get - что вижу ¦

(на экране), то и получу (на печати)). ¦

¦

Можно привести и другой классификационный ряд: ма- ¦

шинопись - принтеропись - типографский набор. ¦

¦

"Бытовые" различия типографского набора от принте- ¦

рописи бросаются в глаза при первом же взгляде на кни- ¦

гу, журнал или газету. Шрифты имеют не только иное ка- ¦

чество и меньший размер, но и каждая буква имеет свою ¦

ширину. В результате текст смотрится куда приятнее, чем ¦

при расположении букв строго одна под другой, но и ¦

проблем на много больше. Выключка рассчитывается по бо- ¦

лее сложным алгоритмам, так как все проблемы между сло- ¦

вами после добавления на выключку делаются одинаковой ¦

ширины. По-этому число знаков в выравненных строчках ¦

оказывается различным. А если внутри текста разместить ¦

рамку с текстом или таблицу, то в пределах строки при- ¦

дется иметь несколько границ для выключки и точного ¦

вертикального позиционирования. Проблема режима WYSIWYG ¦

заключается в том, что экраны дисплеев пока не способны ¦

отобразить столько же "точек", сколько лучшие принтеры, ¦

а наборщику нужно видеть с наилучшим приближением, что ¦

он получит в результате сложных видов размещение ¦

текста. ¦

¦

Столь же распространен в типографском деле набор ¦

текста в несколько колонок, при котором заголовки очень ¦

крупными шрифтами проходят над несколькими колонками. И ¦

это нужно размечать, видеть в режиме wysiwyg и печать ¦

на лазерном принтере. Элементами текста могут быть ¦

рисунки, схемы, сложные таблицы с текстом по вертикали ¦

и даже по диагонали. Основной областью применения ¦

настольных издательств является не столько обработка ¦

больших текстов, сколько достижение типографских эффек- ¦

тов. Лучшие текстовые процессоры стремятся и не без ¦

успеха, к обеспечению "бытового" уровня издательского ¦

дела. ¦

¦

Но существует еще и профессиональный уровень кни- ¦

гопечатания, которому несколько веков, только справоч- ¦

ники по которому для различных профессий (верстальщика, ¦

наборщика, корректора, редактора) составляют не один ¦

том, и который в "домашних" условиях не достижим. Для ¦

примера приведем только одно типографское правило: дво- ¦

еточие, точку с запятой и вопросительный знак при печа- ¦

ти кеглем 10-12 отбивают от текста на две полукегельных ¦

шпации, а при наборе кеглем 6-8 - на одну полукегель- ¦

ную... ¦

¦

Всего существует несколько сотен СПТ, от самых ¦

простых до весьма мощных и сложных. Среди наиболее ¦

распространенных в мире редакторов назовем WordPerfect, ¦

Microsoft Word, WordStar, WordStar 2000, XyWrite. Из ¦

этих редакторов в США наиболее распространен ¦

WordPerfect, в Европе и России - Microsoft Word. ¦

¦

_