Text/Docu/ru/User-Man.odc

Подсистема Text
Руководство пользователя
ENGLISH
Редакция перевода: Ф.В.Ткачев, начато 2010-10-18.

Содержание
1Создание,открытие,закрытие,сохранениеипечатьдокументов(толькоWindows) 
2Creating,opening,closing,saving,andprintingtextdocuments(MacOSonly)
3Основыредактирования
4Клавишинавигации
5Перетаскивание
6Поискизамена
7Атрибуты
8Перетаскиваниесуказанием
9Текстыкакконтейнеры
10Набортекста
11Текстовыелинейки
12Текстыкакинформационноепространство
13Режимыредактораибраузера
14Сочетаниябыстроговызова
15ОсновныепринципыинтерфейсаWindows95(толькоWindows)
16Текстовыенастройки(толькоWindows)


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

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

В нижеследующих разделах обсуждается пользовательский интерфейс текстовой подсистемы, но не её программныеинтерфейсы(API).


1 Создание, открытие, закрытие, сохранение и печать текстовых документов (только Windows)

Как и в других приложениях, для решения этих задач предназначено меню File (Файлы). 
Для открытия документа служит команда File>Open... (Файлы>Открыть...). Список типов файлов в диалоговом окне позволяет выбрать нужный. Файлы иных типов, чем документы Блэкбокса, при открытии конвертируются. На данный момент включены конвертеры для обычного текста (.txt), текста в кодировке Unicode (.utf), символьных файлов Блэкбокса (.osf), кодовых файлов Блэкбокса (.ocf), а также текстовых файлов системы ETHOberonV2иV4. Если конвертер предназначен как для импорта, так и для экспорта (см. Converters), то он же будет использован по умолчанию при сохранении документа. Например, текстовый файл будет сохраняться как текстовый файл, а не как документ Блэкбокса.

Для создания нового документа служит команда File>New (Файлы>Новый). При этом открывается окно с (пустым) текстом, который можно редактировать. Дополнительные команды меню могут служить для открытия окон с иным, чем текст, содержимым. Как настраивать меню описано в разделе Настройка меню в руководствепользователя.

Сохраняется документ как во всех стандартных приложениях WIndows. В списке типов файлов можно выбрать конвертер, который будет использован при сохранении. Например, текст может быть сохранен как документ Блэкбокса или как обычный текстовый файл (.txt).

В диалоговом окне File->PageSetup... (Файл->Разметка страниц...) можно установить различные параметры, например, текущий размер страницы, коэффициент увеличения и т.д. Эти параметры зависят от текущего принтера. Дополнительно можно задать левое, верхнее, правое и нижнее поля на странице, то есть расстояния от соответствующих краев бумаги. Кроме того, может быть включен стандартный колонтитул (по умолчанию выключен). Он состоит из текущей даты и номера страницы.


2 Creating, opening, closing, saving, and printing text documents (Mac OS only)

As for other applications, the File menu is used for these purposes. To open a document use File->Open.... It will show all BlackBox documents, as well as directories and disks. If you click on the Morefiles check box, all the files which can be converted to BlackBox will be displayed as well. If there are several converters applicable to a given file, the appropriate one can be selected through the Format pop-up menu. Currently, converters for Mac OS plain texts (TEXT), Mac OS pictures (PICT), BlackBox symbol file (oOSF), BlackBox code files (oOCF), and ETH Oberon V2 and V4 text files are installed. If the converter is both an importer and an exporter (-> Converters), the same converter used for importing will be used as default for exporting, when saving the document. For example, a TEXT file will be written back as a TEXT file again, not as a BlackBox document.

To create a new document, the command File->New can be used. It opens a window containing an editable text. Custom menu commands may allow to open windows with other contents than text. For an introduction on how to edit the menu configuration see section "Menu Configuration" in the base system's usermanual.

Saving a document works the same way as in standard Mac OS applications. In the File->SaveAs... dialog box, the Stationery check box indicates whether the document should be written as a stationery pad. By default, this check box is unchecked. The Format pop-up menu indicates the converter to be used when saving the file. For example, a text may be saved as BlackBox document or as a TEXT (ASCII) file.

In the File->PageSetup... dialog box, various parameters can be set up, e.g., the currently selected paper size, a magnification factor, etc. These parameters depend on the current printer. In addition to them, the left, top, right, and bottom margins of a page can be set up. These values denote the distances from the respective paper borders. Furthermore, a standard header (off by default) can be switched on. This standard header consists of the current date and the page number.Этот раздел не был переведен. Чтобы увидеть оригинальный текст, щелкните по стрелке.


3 Основы редактирования

Текстовые вьюшки (views) Блэкбокса (т.е. объекты, отрисовывающие на экране текстовые документы прим. ред.) показывают либо выделенный фрагмент, либо точку вставки (каретку, caret). Чтобы выделить фрагмент текста, нажимают кнопку мыши в одном конце фрагмента и перемещают курсор в другой конец, где кнопку отпускают. Слова можно выделять двойным кликом по ним. Двойной клик вне текстового отображения справа или слева от строки служит для выделения строки целиком. (На MacOS это не действует для внедренных текстовых отображений). Также существующее выделение может быть расширено или сокращено щелчком мыши с нажатой клавишей shift. Печатаемый текст помещается за кареткой либо заменяет выделение. Клавиша delete очищает выделенный текст либо удаляет символ после каретки.

Атрибуты выделенного текста могут быть изменены через меню Атрибуты (Attributes) (и меню Шрифт (Font) под MacOS). В дополнение к этим системным атрибутам текст поддерживает вертикальные смещения отдельных символов. Ими можно управлять командами Надстрочный и Подстрочный (Superscript и Subscript) в меню Текст (Text).

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

Windows:
Используйте команду Окно->Новоеокно (Window->NewWindow) для того, чтобы открыть дополнительное окно для документа, который содержится в переднем окне.

Mac OS:
Команда Правка->Показатьвокне (Edit->ViewinWindow) открывает в новом окне другое отображение для так называемого фокусированного отображения. Фокусированное отображение является частью документа, который содержит выделение либо каретку. Иначе говоря, фокусированное отображение - это редактор, активный в настоящий момент.


4 Клавиши навигации

Клавиши стрелок могут использоваться для перемещения каретки влево, вправо, вниз или вверх. Если клавиша модификатора нажата вместе со стрелкой влево/вправо, то каретка смещается на целое слово, а не на символ, если вместе со стрелкой вверх/вниз - то каретка смещается на целый абзац, а не на строку.

Если используется комбинация клавиши shift и клавиш навигации, то соответствующим образом расширяется или сокращается текущее выделение. Так же клавиши shift и модификатор могут использоваться вместе.

Windows:
Клавиши Page Up и Page Down перемещают каретку на страницу вверх или вниз. Если используется клавиша модификатора, то каретка смещается к левому или правому краю страницы. Наконец, клавиши Home и End применяются для перемещения каретки к началу или концу текущей строки, либо к началу или концу документа, если используется клавиша модификатора.
Клавиши навигации могут быть использованы для прокрутки документа без перемещения каретки. Для этого нужно включить режим ScrollLock на клавиатуре.

Mac OS:
Клавиши навигации на расширенных клавиатурах (Page up/down, Home, End) могут использоваться для прокрутки по одной странице или перемещения к началу и концу документа.


5 Перетаскивание

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

Windows:
Если целевая точка не позволяет принять текст, то курсор сменяется на стоп-значок и ничего не происходит. Чтобы отменить операцию перетаскивания, сместите курсор на позицию, где показывается стоп-значок, или нажмите клавишу esc.
При перетаскивании куска текста и бросании его на новое место текст перемещается туда. При удержании клавиши модификатора брошенный кусок становится копией перетаскиваемого: копия выделенного куска вставляется на новое место. Копирование также может быть использовано удержанием правой кнопки мыши при операции перетаскивания.
Перетаскивание действует между приложениями, то есть, между BlackBox и любым другим приложением, которое поддерживает перетаскивание OLE. Если другое приложение понимает RTF (Rich Text Format), то при копировании сохраняются атрибуты текста.

Mac OS:
Если целевая точка не позволяет принять текст, то курсор сменяется на стоп-значок и ничего не происходит. Чтобы отменить операцию перетаскивания, передвиньте курсор на полосу прокрутки, заголовок окна или строку меню.
При перетаскивании куска текста и бросании его на новое место текст перемещается туда, если перетаскивание ведется в одном и том же документе, иначе кусок текста копируется. При перетаскивании куска текста и бросании его на новое место текст перемещается туда. При удержании клавиши модификатора брошенный кусок становится копией перетаскиваемого: копия выделенного куска вставляется на новое место. При пересечении границ документа перетаскиваемый объект копируется, даже если нажата клавиша модификатора. Для принудительного перемещения через границы документа нажмите клавишу control перед тем, как отпустить кнопку мыши. 
Перетаскивание работает только с BlackBox, но не с Finder и не с другими приложениями.

Перетаскивание синглтонов (см. далее) приводит к вставке синглтона как отображения. Не происходит никакого слияния. Например, синглтон текстового отображения, который перетаскивается в другой текст, не сливается с ним, а вставляется как отображение.


6 Поиск и замена

Команда Текст->Найтиизаменить...(Text->Find&Replace...) открывает диалоговое окно, которое позволяет искать и заменять текстовые строки. Поиск может вестись с учетом или без учета регистра (флаг Игнорироватьрегистр/IgnoreCase), и шаблон поиска может быть ограничен до соответствия лишь началу или концу слов, или тому и другому (флаги Началослова и Конец слова/ Wordbeginswith и Wordendswith).

Когда нет выделенного текста, то доступна кнопка Заменитьвсе (ReplaceAll). При этом заменяются все соответствующие фрагменты от начала до конца документа. Когда есть выделение, кнопка называется Зам.всеввыд. (Repl.AllInSel.), и команда заменяет соответствующие фрагменты только в выделенном тексте.

Все операции замены могут быть отменены. Замена всегда адаптирует текстовые атрибуты заменяемого фрагмента.

Текст->Повторпоиска (Text->FindAgain) ищет ранее выбранную строку от начала до конца выделения либо начиная с позиции каретки.

Text->Первоевхождение (Text->FindFirst) ищет выделенную текстовую строку с начала документа.

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

Также см. модуль TextCmds.


7Атрибуты

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

Текст характеризуется несколькими атрибутами: шрифтом, цветом и смещением по вертикали. Атрибутами шрифта являются: тип шрифта (например, Times), его размер, толщина (например, полужирный), стиль (например, курсив, подчеркнутый, или зачеркнутый). Вертикальные смещения могут быть установлены командами Текст->Поднять и Текст->Опустить (Text->Superscript и Text>Subscript), остальные атрибуты устанавливаются командами меню Атрибуты (Attributes) (и меню Шрифт (Font) в MacOS).
Существует тип шрифта по умолчанию и цвет по умолчанию. Эти значения можно использовать для текстов, которые не имеют предопределенного начертания и цвета. Обычно цвет по умолчанию черный, а шрифт по умолчанию - Arial (Windows)/ Helvetica (MacOS). Вся стандартная документация использует эти значения по умолчанию. Пользователь может выделить фрагмент текста, придать ему конкретный цвет или начертание, а затем установить цветовые/ шрифтовые умолчания по этому фрагменту. Все полосы текста, которые используют цвет/ шрифт по умолчанию, автоматически воспримут новые значения. Шрифтовые умолчания полезны для кросс-платформенных документов, поскольку на каждой платформе пользователь может сам решить, какой шрифт подходит лучше всего. Например, многие программисты Macintosh предпочитают шрифт Geneva.
Текстовая подсистема использует атрибуты по умолчанию, когда не установлены никакие иные. Чтобы изменить атрибуты по умолчанию для документа, выберите полосу текста, имеющую желаемый вид, и затем выполните команду Текст->Сделать атрибутами по умолчанию (Text->Make Default Attributes). Это позволит (даже для пустого документа) установить для текста шаблона ("канцелярии" на MacOS) правильные атрибуты.

Атрибуты могут быть скопированы и затем вставлены с помощью команд Правка>Копироватьсвойства и Правка->Вставитьсвойства (Edit->CopyProperties и Edit>PasteProperties). Замечание: при копировании атрибуты в выделении должны быть однотипными; при вставке они полностью замещают атрибуты в целевом выделении.


8 Перетаскивание с указанием (Drag & Pick)

Новой возможностью системы Блэкбокс является поддержка перетаскивания выделенного объекта в другое место для присвоения атрибутов. Текстовая система использует это средство для установки атрибутов выделенного фрагмента текста в те значения, которые используются некоторой другой видимой текстовой полосой. Для перетаскивания с указанием удерживайте нажатой клавишу alt (Windows)/ command (MacOS), когда начинаете перетаскивание. Затем переместите курсор на аналогичный объект, который имеет желаемые атрибуты. После отпускания кнопки атрибуты выделенного объекта будут заменены на соответствующие атрибуты объекта, на котором была отпущена кнопка. Подобно обычному перетаскиванию, перетаскивание с указанием также работает между окнами.


9 Тексты как контейнеры

Текст может содержать в себе произвольные вьюшки Блэкбокса, помещенные прямо в поток литер. Например, стандартное отображение часов показывает текущее время: .

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

Windows:
Чтобы увидеть, где расположены внедренные отображения, вы можете щелкнуть где-либо на белом пространстве, удерживая нажатой клавишу alt.

Mac OS:
Чтобы увидеть, где расположены внедренные отображения, вы можете щелкнуть по заголовку окна, удерживая нажатой клавишу модификатора.

Контейнер представляет собой отображение, которое может содержать другие произвольные отображения; текстовые отображения являются примером контейнеров. В контейнере может находиться основное содержимое (в данном случае, куски текста) и отображения. Основное содержимое и отображения могут выделяться вместе, например, если вы читаете этот текст в BlackBox, вы можете выделить все его содержание, включая весь текст и различные отображения, находящиеся в нем (попробуйте Правка->Выделить все / Edit->Select All). Однако иногда вы можете захотеть выбрать точно одно отображение, которое тогда называется синглтон (singleton). Синглтоны особым образом показывают, что они выделены: отображение обведено линией, с узлами для изменения размера, если отображение может его менять.

Отображение, которое содержит текущее выделение или каретку, называется текущим фокусом. Кроме самого внешнего отображения, фокус и все отображения, в которых он находится, показаны в рамке фокуса. Важно, что фокус - это не выделение, хотя он содержит выделение (если оно есть).

Windows:
Рамка фокуса рисуется вокруг отображения. Фокус может быть превращен в синглтон нажатием клавиши esc. Если отображение имеет выделение, нажатие esc снимает его, а второе нажатие превращает отображение в синглтон. Можно использовать shift-esc для снятия фокуса.

Mac OS:
Рамка фокуса состоит из двух серых или пунктирных линий вокруг отображения. Фокус может быть превращен в синглтон щелчком на рамке фокуса.

Если несколько отображений вложены друг в друга, пользователь может сфокусировать внутреннее простым щелчком на нем. Механизм простого щелчка на содержимом внедренных отображений называется вложенной активацией (inside-out activation). Она особенно удобна для глубоко вложенных отображений:A view
is a view is a view.
Конечно, иногда необходимо редактировать текст, окружающий вложенное отображение. Например, чтобы выделить внедренное отображение само по себе, вместо выделения его внутреннего внедренного отображения, становится нужной отмена вложенной активации. Это может быть сделано нажатием клавиши alt (Windows) / клавиши command (MacOS) при щелчке мышью. Чтобы выделить самое внешнее текстовое отображение, воспользуйтесь командой Правка->Выделить документ (Edit->Select Document). Это не то же самое, что Правка->Выделить все (Edit->Select All), которое просто выделяет содержимое фокуса. Фокусирование на вложенных отображениях может быть полностью запрещено командой Разработка->Режим разметки (Dev->Layout Mode). Это может быть удобно для графических контейнеров, которые предназначены для управления размещением. Это, например, редактор форм, который применяется для разметки диалоговых окон.

Можно изменить размер внедренного отображения, если это позволяет контейнер. Для этого сначала нужно выделить синглтон. После этого можно передвигать узлы рамки для интерактивного изменения размера отображения. Отображение может ограничивать размер допустимыми пределами - это будет сразу видно при попытке изменить размер. Удерживая клавишу shift, можно передвигать одновременно узел, который находится напротив, легко передвигая объект вместо изменения его размера. (Для некоторых контейнеров, таких как текст, свободное перемещение не разрешено.)

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

Mac OS:
Далее по тексту команда Windows Правка->Вставить объект (Edit->Paste Object) соответствует команде MacOS Правка->Вставить как часть (Edit->Paste As Part).

Примечательно, что буфер обмена поддерживает две различных операции вставки, называемые Правка->Вставить (Edit->Paste) и Правка->Вставить объект (Edit->Paste Object). В то время как простая вставка пытается соединить вырезанную модель (структуру данных, соответсвующую содержимому буфера) с местом назначения, вставка объекта всегда вставляет целое отображение, внедряет его. Простая вставка успешно объединяет вырезанную и целевую модели, если они имеют один тип. (Например, фрагмент текста, копированный в буфер обмена, копируется как отображение. Но когда вставка происходит в другой текст, отображение в буфере игнорируется и вырезанный текст вставляется прямо в существующий.) С другой стороны, если модели буфера и фокуса несовместимы, простая вставка действует так же, как вставка объекта.

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

Windows:
В дополнение к вставке объекта, может быть использована команда Правка->Вставить в окно (Edit->Paste to Window), которая открывает новое окно, в которое вставляется содержимое буфера обмена.


10 Набор текста

Текст может содержать обычные символы, внедренные отображения и различные управляющие символы. Управляющие символы и отображения влияют на то, каким образом полоса текста будет расположена в текстовом отображении: TAB (символ табуляции, вставляется клавишей tab) сдвигает следующее слово на следующую позицию табуляции, LINE (символ перевода строки, вставляется клавишей return или enter) завершает строку и одновременно с этим - абзац, PARA (вставляется командой Текст->Вставить абзац/ Text->Insert Paragraph) завершает строку и одновременно абзац, форматируя особым образом первую строку следующего абзаца. Если TAB вставлен в текст, для которого не заданы позиции табуляции, получается промежуток фиксированной ширины.

TAB в начале строки может использоваться для управления отступами в структурированном тексте, например, программе. После перевода строки символом LINE в начало новой строки будет вставлено столько же табуляций, сколько было в предыдущей (автоматические отступы). Команды Текст->Сдвиг влево и Текст->Сдвиг вправо (Text->ShiftLeft и Text->ShiftRight) изменяют отступ сразу для нескольких выделенных строк. Однако такая отбивка отступов действует как если бы вы использовали TAB, а не пробелы.

Разрывы слов могут управляться специальными дефисами. Стандартный дефис (вставляется сочетанием модификатор-минус) допускает разрыв слова, точно так же, как и гибкий дефис (вставляется командой Текст>Вставить возможный перенос/ Text->InsertSoftђHyphen). В то время как стандартные дефисы видны всегда, гибкие дефисы показываются только в случае, когда слово разрывается концом строки, или когда показывается разметка (Текст->Показать разметку / Скрыть разметку / Text->ShowMarks/HideMarks). Неразрывный дефис (вставляется командой Текст->Вставить неразрывный дефис / Text->InsertNonђBrkHyphen) запрещает разрыв слова после дефиса. Неразрывный пробел (вставляется командой Текст->Вставить неразрывный пробел / Text->InsertNonђBrkSpace) запрещает разрыв строки и может быть подчеркнутым. Цифровой пробел похож на неразрывный, но при этом его ширина равна ширине цифры "0" соответствующего шрифта. Цифровые пробелы правильного размера возможны не для всех шрифтов. 


11 Линейки для текстов
[редактировано: info21, 2010-09-26]

Линейки для текстов (TextRulers)  самые важные вьюшки (объекты изображения), которые влияют на текст. Каждый текст (точнее, текстовый объект) содержит невидимую линейку по умолчанию, которая определяет расположение текста в отсутствие других линеек. Новая линейка может быть вставлена командой Текст->Вставить линейку (Text->Insert Ruler). 
Линейки (как и символы конца абазаца PARA, которые выглядят примерно так: ) обычно невидимы; чтобы увидеть их, ипользуйте команду Текст->Показать разметку / Скрыть разметку (Text->ShowMarks/HideMarks).

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

Самая левая иконка позволяет включать (знак треугольника) или выключать (пустой прямоугольник) правое поле. Если правое поле включено, то именно оно определяет разбиение текста на строки независимо от установленной общей ширины текста. Если позиция правого поля оказывается правее правой границы текстового объекта (например, если треугольник передвинуть туда мышкой), то часть текста будет невидима. 
Если правое поле выключено, то разрыв строк осуществляется на правом крае текстового объекта, который (край) автоматически сдвигается при изменении размера текстового объекта. Ширина самого внешнего текстового объекта задается настройками страницы (Инструменты->Размеры документа... / Tools, Document Size ...). Обычно правое поле лучше выключать.

В левой части линейки расположены три иконки для управления модульной сеткой линий шрифта (grid), при этом клик по левому значку уменьшает, а по правому увеличивает шаг сетки. Посередине виден текущий размер шага сетки в типографских пунктах; если значение равно нулю, то сетка линий отключена. Если выделить эту иконку мышкой, то шаг сетки можно менять, используя меню Шрифт / Attributes. Двойной клик по этой иконке открывает диалоговое окно, в котором можно непосредственно указать шаг. По умолчанию сетка линий отключена (значение установлено в 0).

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

Следующие четыре иконки позволяют устанавливать режим выключки (выравнивания краев текста). Возможные режимы: выключка влево (флаговый набор), по центру, вправо и выключка по формату. Иконка текущего режима выделена. 
Следующая тройка иконок позволяет управлять отбивкой до абзаца (то есть дополнительным вертикальным расстоянием перед абзацем). Заметим, что новые абзацы создаются при вставке линейки или символа PARA (Текст->Вставить абзац / Text->Insert Para). Обычный символ конца строки LINE (вставляющийся при нажатии клавиши return) не начинает новый абзац! 
Наконец, последняя иконка задаёт при печати переход на следующую страницу в позиции перед линейкой. Пустые страницы не печатаются, т.е. чтобы страница напечаталась, она должна содержать хотя бы символ пробела.

В полоске табуляции и полей элементами можно манипулировать с помощью мыши. Два треугольника с левого края управляют абзацным отступом (верхний треугольник) и левым полем (нижний треугольник). Треугольник у правого края управляет правым полем. Треугольники остриём вверх показывают позиции табуляции; черточки под ними показывают режим выравнивания этих позиций. Новая позиция табуляции устанавливается кликом в свободном месте полоски; старые позиции табуляции убираются перетаскиванием их мышкой за пределы линейки. Позиции табуляции можно по отдельности передвигать мышкой, если же при этом нажимать клавишу модификатора (в ОС Windows это Ctrl), то одновременно будут передвигаться и все позиции справа.
Последовательные клики по значку табуляции циклически меняют соответствующее выравнивание: по левому краю (вариант по умолчанию), центрирование, по правому краю и снова по левому краю. Клик с нажатой клавишей модификатора показывает/прячет вертикальную линию в позиции табуляции.
Заметим, что если позиции табуляции не заданы, а пользователь вводит символ TAB, то он интерпретируется как промежуток фиксированной ширины. Другими словами, символ табуляции можно использовать и без установленных позиций табуляции; текстовая подсистема ведёт себя в этом случае разумным образом.

Текстовая подсистема использует невидимую линейку по умолчанию, когда нет никакой другой. Чтобы изменить линейку по умолчанию для данного документа, нужно выделить линейку с желаемыми свойствами и выполнить команду Текст->Сделать линейкой по умолчанию (Text->Make Default Ruler). Это позволяет (даже из пустых текстовых документов) создавать документы-шаблоны ("stationeries" в терминологии MacOS) с нужными свойствами форматирования, например, набором позиций табуляции.

Двойной клик где-нибудь в пассивной области линейки или между иконками открывает диалоговое окно, чтобы менять ещё некоторые настройки. В настоящее время есть две таких настройки, обе из них касаются разбиения текста на страницы. Первая настройка, избегать разрыва страниц внутри (avoid page breaks inside) требует от механизма верстки избегать разрыва страниц между этой и следующей линейкой. Но если текст слишком велик для одной страницы, разрыв все равно произойдет. Вторая настройка, на одной странице вместе со следующим (keep together with next) требует избегать разрыва страниц между текстом после этой линейки и текстом после следующей. (Эта настройка не имеет никакого эффекта, если линейка является последней в тексте.) Опять же, разрыв страницы всё равно произойдет, если блок текста превысит длину страницы.

12 Тексты как информационное пространство

Полная сетевая документация BlackBox доступна из диалогового окна Помощь (Help), через гиперссылки,подобныеэтой.

Mac OS:
В System7 меню помощи расположено в строке меню вторым элементом справа, со знаком вопроса.

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

Это - свернутый текст. Свернутые тексты ограничиваются отображениямискладок, которые имеют вид стрелок.Это - свернутая складка

Если вы щелкнете по одной из стрелок, текст развернется:

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


13 Режимы редактора и браузера

С текстами можно работать в двух различных режимах. Обычно используют режим редактирования (edit mode), в котором текст можно свободно править. Текст можно сохранять в режиме редактирования и открывать в окнах документов.

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

Тексты документации не нужно сохранять в режиме просмотра. Они сохраняются в режиме редактирования, и затем могут открываться, редактироваться и сохраняться вновь стандратными командами меню Файл (File). Гипертекстовая документация открывается командой StdCmds.OpenBrowser, которая открывает текстовый документ во вспомогательном окне переводит его в режим просмотра. Например, следующие команды показывают отличия между двумя режимами, по-разному открывая один и тот же текст:

 "StdCmds.OpenBrowser('Docu/ru/Tut-A', 'Краткая история Блэкбокса')"

 "StdCmds.OpenDoc('Docu/ru/Tut-A')"

Последняя команда соответствует Файл->Открыть (File->Open) и допускает редактирование.

Команда OpenBrowser принимает портируемое имя пути. Портируемое имя - это строка, которая именует файл машинно-независимым образом. Для этого в качестве разделителя используется знак "/", как в Unix или Интернет.

Команды обычно используются в ссылках.

См. также StdLinks и StdCmds.


14 Сочетания быстрого вызова

Кроме клавиатурных эквивалентов для различных команд меню, можно использовать следующие клавиши или комбинации:

Функции	Windows		Mac OS

OK / кнопка по умолчанию		return или enter
кнопка отмены		esc
отмена выделения		esc
активизация объекта	modifier + enter
деактивизация объекта	shift + esc
показать свойства	alt + enter
показать контекстное меню	shift + F10
удаление (правое)	delete		delete или forward delete*
удаление (левое)	backspace		backspace или delete*
новая строка с автоотступом		return или enter
неразрывный пробел		modifier + space
дефис		modifier + minus
гибкий дефис	modifier + shift + minus		command + minus
неразрывный дефис	alt + shift + minus		modifier + shift + minus
на один символ влево		стрелка влево
на один символ вправо		стрелка вправо
на одно слово влево		modifier + стрелка влево
на одно слово вправо		modifier + стрелка вправо
на один экран влево	modifier + page up
на один экран вправо	modifier + page down
на одну строку вверх		стрелка вверх
на одну строку вниз		стрелка вниз
на один абзац вверх		modifier + стрелка вверх
на один абзац вниз		modifier + стрелка вниз
на один экран вверх		page up
на один экран вниз		page down
на начало строки	home
на конец строки	end
на начало документа	modifier + home		home
на конец документа	modifier + end		end

* Зависит от клавиатуры

Windows:
Для совместимости со старыми версиями Windows, все еще поддерживаются некоторые устаревшие клавиатурные сочетания:  alt + backspace для отмены, shift + delete для вырезания, modifier + insert для копирования и shift + insert для вставки.


15 Правила построения пользовательских интерфейсов в системе Windows 95 (только Windows)

BlackBox в основном придерживается принципов пользовательского интефейса Windows, которые были заявлены в 1994 году для Windows95. Кроме перетаскивания, эти принципы также связаны с использованием второй кнопки мыши. Вторая (обычно правая) кнопка мыши может использоваться подобно первичной кнопке со следующими отличиями: если перетаскивание ведется второй кнопкой, то в конце всплывает контекстное меню. Это меню состоит из пунктов меню Правка (Edit): Вырезать, Копировать, Вставить и Вставить объект (Cut, Copy, Paste и PasteObject) плюс дополнительные команды в зависимости от текущего выделения.

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


16 Текстовые настройки (только Windows)

Адаптировать текстовую среду под свои нужды помогут некоторые глобальные параметры. Параметры необходимо установить только один раз, так как они сохраняются в реестре Windows и загружаются автоматически при запуске программы. Команда Правка->Настройки (Edit->Preferences) выводит диалоговое окно настроек. С его помощью можно изменить шрифт по умолчанию, метрику шрифта, используемую для отображения текста и способ перерисовки окон при прокрутке перетаскиванием ползунка полосы прокрутки. Если установлен флажок Использовать метрику TrueType (Use TrueType Metric), для размещения отдельных символов будет использоваться точная метрика. Это дает лучший результат при печати, но обычно затрудняет чтение с экрана. Если установлен флажок Показывать прокрутку (Visual Scrolling), то содержимое окна постоянно перерисовывается при перетаскивании ползунка на полосе прокрутки. В противном случае обновление будет происходить только после отпускания кнопки мыши.

Чтобы получить больше информации по программному интерфейсу подсистемы Text, обратитесь к документации модулей TextModels, TextMappers, TextRulers, TextSetters, TextViews, TextControllers и TextCmds. В подсистеме Obx можно найти конкретные примеры: ObxHello0, ObxHello1, ObxOpen0, ObxOpen1, ObxCaps, ObxDb, ObxTabs, ObxMMerge, ObxParCmd, ObxLinks и ObxAscii. Учебник по текстовой подсистеме можно найти в Главе5 сопроводительной книги по компонентному ПО и BlackBox Component Framework.