Полное описание HIP-стандарта

Следующий текст текст целиком взят со странички "Печатный двор". Ведущий странички — Михаил Гринчук (автор стандарта HIP): http://www.pechatnyj-dvor.narod.ru/docs/hip-9.html

=============================================================
ПРОЕКТ ИНВАРИАНТНОГО ПРЕДСТАВЛЕНИЯ ЦЕРКОВНОСЛАВЯНСКОГО ТЕКСТА
               (версия HIP-9, декабрь 2003 г.)
=============================================================

I. ОБЩИЕ ПРИНЦИПЫ

1. Инвариантное представление HIP предназначено для записи
в "читаемой" форме церковнославянских текстов с сохранением
всех деталей правописания. Оно в своей базовой форме не
обязано представлять внеязыковые элементы текста и детали
верстки: размер и вид шрифта, разного рода отступы, разбиение
на строки, столбцы и страницы и т. п. Кодируются только слова
(и числа) текста, знаки препинания, пробелы между словами и
разбиение на абзацы, а также (в самом общем виде) "побочные"
части текста, вроде сносок или пометок на полях.

Различного рода шрифтовая и логическая разметка текста
является расширением системы HIP. См. ниже п. 5.

2. В связи с тем, что церковнославянский язык изменялся со
временем и его "современная" версия с достаточно четкими
правилами правописания заметно отличается -- в том числе и по
набору используемых символов -- от языка старых книг и тем
более рукописей, базовые элементы кодировки HIP могут быть
отнесены к нескольким "уровням":

уровень 0 -- набор символов для современной ц.-сл. печати
(приблизительно с середины XIX века до наших дней);

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

уровень 2 -- набор символов, встречающихся в рукописях.

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

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

4. Также предоставлена возможность включения HIP-фрагментов
в документы и программы на других языках разметки (TeX, HTML
и т. п.). См. раздел III.

5. Для использования внетекстовой информации (далее она
именуется "комментариями") зарезервированы (пусть пока не
полностью формализованные) механизмы ее возможной вставки.
Любая конкретная реализация вставки внетекстовой информации
далее называется "расширенным HIP".

Примечание 1. Любой текст в виде базового HIP является
текстом в расширенном HIP. Любой текст в расширенном HIP
можно перевести в базовое HIP, удалив комментарии.

Примечание 2 -- о корректности терминологии. Комментарий в
"узком" смысле (некая пометка для памяти или кусок текста,
"отключенный" от документа) тоже является внетекстовой
информацией.

В данной версии стандарта HIP описаны спецкомментарии,
задающие "мягкие переносы", неразрывность пробелов и
некоторых других знаков, три вида шрифтовых выделений
(естественнее всего сопоставляемые с киноварью, разрядкой,
мелким подзаголовочным шрифтом), буквицы, указание
нескольких вариантов оформления сносок, и некоторые другие.

6. HIP -- это не кодировка в привычном смысле. Это надстройка
над любой системой записи информации, в которой можно
обозначить как минимум 136 различных "символов" и записывать
произвольные последовательности этих символов. На практике (и
в настоящем документе) эти символы отождествляются с
какими-то кодовыми позициями фиксированной 8-битовой
кодировки, но это, вообще говоря, не обязательно. Надо
отметить, что один и тот же символ HIP может кодироваться
несколькими способами (например, мы считаем латинское "A" и
русское "А" -- имеющие разные коды в большинстве ныне
используемых кодовых таблиц -- обозначениями одного и того же
HIP-символа).

Упомянутые выше 136 символов -- это два "белых" символа
(пробел и конец строки), а также следующие:

0 1 2 3 4 5 6 7 8 9 ( [ { < / ' + . : ! "
= ~ @ # $ % ^ & * _ ) ] } > \ ` - , ; ? |
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц
а б в г д е ж з и й к л м н о п р с т у ф х ц
Ч Ш Щ Ъ Ы Ь Э Ю Я D F G I J L N Q R S U V W Z
ч ш щ ъ ы ь э ю я d f g i j l n q r s u v w z

7. Синонимичными обозначениями для пробела мы считаем все
управляющие символы "горизонтального действия" (собственно
пробелы, в том числе неразрывные, а также TAB, BS и т. п.).

Синонимичными обозначениями для "конца строки" (EOL) мы
считаем все управляющие символы "вертикального действия"
(собственно конец строки, а также FF, VT, EOF и т. п.)

Визуально неразличимые символы и сочетания символов ("е"
русское и "e" латинское, например) обозначают ВО ВСЕХ
СИТУАЦИЯХ одно и то же (см. ниже п. 10). Более того, мы
считаем неразличимыми строчные буквы, если соответствующие
прописные неразличимы, и наоборот. Список "неразличимых" букв
такой:

Аа Вв Ее Кк Мм Нн Оо Рр Сс Тт Уу Хх
Aa Bb Ee Kk Mm Hh Oo Pp Cc Tt Yy Xx

Этот же принцип "неразличимости" распространяется и на
другие символы, визуально неотличимые от указанных выше,
если таковые присутствуют в используемой кодировке текстовых
файлов (в частности, некоторые кодировки кириллицы содержат
дополнительные кириллические буквы Ss, Jj, Ii и т. д.).

8. По той же причине визуальной неразличимости (но не только)
HIP не замечает пробелов рядом с EOL, рассматривает любое
число соседних пробелов как один и любое число пустых строк
(строк, состоящих только из пробелов) как одну -- логический
конец абзаца. Одиночный символ EOL (пустая строка -- это пара
EOL'ов) считается эквивалентным пробелу.

9. В HIP включено обозначение для явного конца абзаца (см.
ниже). Оно эквивалентно паре символов EOL EOL (то есть пустой
строке) и так же, как эта пара символов, взаимодействует с
соседними пробелами и EOL.

10. Выбор обозначений системы HIP обусловлен прежде всего
желанием того, чтобы HIP-закодированный текст можно было
читать и без применения каких-либо программ.

11. Также учтена простота преобразования HIP-текста из
uppercase в lowercase и обратно. Из этих соображений в
многобуквенных обозначениях предусмотрены синонимы типа
JА и Jа.

12. В предыдущих версиях (до 6 включительно) стандарта HIP
существовали варианты HIP-A и HIP-B; позже они были сведены
воедино, с тем чтобы одна и та же программа могла
воспринимать оба способа записи. В результате также возникли
синонимичные обозначения, список которых см. ниже, в
комментариях к символу "_".

13. Еще один источник синонимичных обозначений -- соглашение
о том, что акценты, пристраиваемые к символу, имеющему
какой-либо надстрочник "по умолчанию", убирают этот
надстрочник. Поэтому I' = <I>', <W>' = <_W>' и т. п.
(и даже И' = Й').

II. ПОЧТИ ФОРМАЛЬНАЯ ГРАММАТИКА HIP

HIP-ТЕКСТ есть последовательность вида

Р[0] С[1] Р[1] С[2] Р[2] ... С[N-1] Р[N-1] С[N] Р[N]

где С[1] ... С[N] -- СЛОВА, а Р[0] ... Р[N] -- РАЗДЕЛИТЕЛИ
(Р[0] и Р[N] могут отсутствовать, остальные элементы
обязательны)

РАЗДЕЛИТЕЛИ бывают двух сортов: РАЗДЕЛИТЕЛИ_СЛОВ и
РАЗДЕЛИТЕЛИ_АБЗАЦЕВ.

РАЗДЕЛИТЕЛЬ_СЛОВ есть последовательность пробелов, EOL'ов,
КОММЕНТАРИЕВ и ПЕРЕКЛЮЧЕНИЙ_ЯЗЫКА, содержащая не более
одного EOL и не состоящая только из КОММЕНТАРИЕВ и
ПЕРЕКЛЮЧЕНИЙ_ЯЗЫКА.

РАЗДЕЛИТЕЛЬ_АБЗАЦЕВ есть последовательность пробелов,
EOL'ов, явных символов конца абзаца, КОММЕНТАРИЕВ и
ПЕРЕКЛЮЧЕНИЙ_ЯЗЫКА, не являющаяся РАЗДЕЛИТЕЛЕМ_СЛОВ и не
состоящая только из КОММЕНТАРИЕВ и ПЕРЕКЛЮЧЕНИЙ_ЯЗЫКА.

СЛОВО есть последовательность ЗНАКОВ, КОММЕНТАРИЕВ и
ПЕРЕКЛЮЧЕНИЙ_ЯЗЫКА, содержащая хотя бы один ЗНАК.

Примечание 3. В этом описании есть некоторая формальная
неоднозначность (куда относить КОММЕНТАРИЙ или
ПЕРЕКЛЮЧЕНИЕ_ЯЗЫКА, попавшие ровно на границу между СЛОВОМ и
РАЗДЕЛИТЕЛЕМ?). Там, где от этого что-то зависит -- а
именно, в спецкомментариях %[, %], %( и %) -- считаем, что
РАЗДЕЛИТЕЛЬ находится с внешней стороны "скобок" %( и %), но
внутри стороны "скобок" %[ и %].

ПЕРЕКЛЮЧЕНИЕ_ЯЗЫКА (точнее, системы письменности) -- одна из
5 возможных записей: <::слав>, <::рус>, <::лат>, <::греч>,
<::глаг>. ПЕРЕКЛЮЧЕНИЕ_ЯЗЫКА действует глобально, до
следующего переключения или до конца HIP-ТЕКСТА. В начале
HIP-ТЕКСТА подразумевается режим <::слав>. В зависимости от
текущего языка изменяется интерпретация символов и акцентов
(см. ниже).

ЗНАК есть ПРОСТОЙ_ЗНАК или последовательность ПРОСТЫХ_ЗНАКОВ,
соединенных символами "&".

ПРОСТОЙ_ЗНАК есть БАЗОВЫЙ_ЗНАК, за которым следует несколько
(в том числе один или ни одного) АКЦЕНТОВ.

КОММЕНТАРИЙ есть либо запись %{...}, внутри которой соблюдена
парность фигурных скобок, либо байт-символ "%" плюс один
непробельный байт-символ, отличный от "{".

Комментарии вида %{!...} -- в которых сразу за открывающей
скобкой следует восклицательный знак -- имеют специальное
значение, см. ниже.

БАЗОВЫЕ_ЗНАКИ и АКЦЕНТЫ зависят от языкового режима.

II.1. Множество 136 элементарных HIP-символов разобьем
на две группы:

СПЕЦИАЛЬНЫЕ: пробел, EOL, {, }, <, >, &, %

ОБЫЧНЫЕ: все остальные

II.2. В каждом языковом режиме один или несколько ОБЫЧНЫХ
элементарных символов могут быть объявлены ПРЕФИКСНЫМИ.
В любом языковом режиме ПРЕФИКСНЫМИ является символы
"_", "\" и "|". В режимах <::слав>, <::рус>, <::глаг>
префиксными также являются "J" и "j".

II.3. Обозначения БАЗОВЫХ_ЗНАКОВ и АКЦЕНТОВ бывают
односимвольные и многосимвольные.

II.4. Для односимвольных обозначений допустимы все ОБЫЧНЫЕ
символы, кроме ПРЕФИКСНЫХ.

II.5. Многосимвольные обозначения имеют одну из следующих форм:

5.1) записи вида <...>, где внутри уголков может быть любая
последовательность ОБЫЧНЫХ символов, в том числе и пустая;

5.2) записи, начинающиеся с ПРЕФИКСНОГО символа, за которым
следуют один или несколько ОБЫЧНЫХ символов;

5.3) записи вида {...} с произвольным HIP-текстом внутри;

5.4) записи вида \{...} с произвольным HIP-текстом внутри;

5.5) записи вида |{...} с произвольным HIP-текстом внутри;

II.6. От языкового режима зависит, какие одно- и многосимвольные
обозначения являются БАЗОВЫМИ_ЗНАКАМИ, а какие -- АКЦЕНТАМИ.

II.7. Если односимвольное или многосимвольное (вида 5.1 и 5.2)
обозначение кодирует букву какой-либо письменности, то оно
должно содержать в себе хотя бы одну "компьютерную" букву.
Регистр (прописная/строчная) "текстовой" буквы при этом
определяется регистром первой из "компьютерных" букв ее
обозначения. Обозначения для пары соответствующих друг другу
прописной и строчной "текстовых" букв должны отличаться лишь
регистром "компьютерного" представления.

II.8. Если же односимвольное или многосимвольное (вида 5.1 и
5.2) обозначение кодирует знак, не являющийся буквой
[оговорка на будущее: или являющийся буквой такой
письменности, где разделения на прописные/строчные нет], то
регистр "компьютерных" букв, входящих в это обозначение,
несущественен.

Примечание 4. С учетом сказанного выше, далее HIP-обозначения
будут приводиться только в строчном варианте.

II.9. Небольшое число обозначений должно содержаться во всех
языковых режимах. Это <hip>, </hip>, <::слав>, <::рус>,
<::греч>, <::лат>, <::глаг>, а также:

<> или _/    разделитель абзацев, синонимичный паре EOL EOL;

<_> или __   разделитель слов, в оригинале написанных слитно;
             а также "пустой" БАЗОВЫЙ_ЗНАК "естественной ширины"
             для демонстрации АКЦЕНТОВ самих по себе

<|>          "пустой" БАЗОВЫЙ_ЗНАК нулевой ширины (для постановки
             АКЦЕНТА не над каким-либо символом, а между ними)

?            БАЗОВЫЙ_ЗНАК, обозначающий неразборчивый или
             неоднозначно интерпретируемый символ.

Также общими являются упомянутые ранее: пробел, EOL,

&        (1) символ явной склейки лигатур: <::слав>л&ю, м&ю,
             jа&к, ш&т, #&<s>; <::греч>с&т, о&v, п&е&р&i;
             <::лат>s&t, f&i, e&t и т. п.
         (2) символ соединения знака и текста сноски:
             вот так*&{текст сноски} делается сноска со звездочкой
         (3) символ, используемый для включения текста внутрь
             конструкций <покрытие>&{...}, <титло>&{...},
             <тьма>&{...}, <легион>&{...} и т. п.
         (4) символ присоединения вариантов толкования неразборчивого
             или неоднозначно интерпретируемого символа:
             ?&{вар-т 1}&{вар-т 2}&...&{вар-т N}

%            символ начала (спец)комментария -- короткого,
             напр. %< или %- , или длинного, в форме %{...}

{ и }    (1) символы начала и конца сносок и других подобных
             выделений:  {текст} или ЗНАК&{текст}  -- в первом
             случае подразумевается, что значок или номер
             сноски будет добавлен программно
         (2) символы, ограничивающие "длинный"
             (спец)комментарий: %{...}
         (3) символы начала и конца надстрочного текста:
             ...абвгд\{текст над буквой "д"}ежзий...
         (4) символы начала и конца подстрочного текста:
             ...абвгд|{текст под буквой "д"}ежзий...

II.10. Список обозначений вида 5.1 является, вообще говоря,
расширяемым. А вот обозначения 5.2 для каждой письменности
фиксируются один раз и в последующих версиях HIP-спецификации
не изменяются. Сейчас они таковы (приведен только "строчный"
вариант):

<везде>          __ _/
                 "\" + один НЕПРЕФИКСНЫЙ ОБЫЧНЫЙ СИМВОЛ
<::слав>         jь jа jе jя ju jjь
                 _i _w _е _о _у _кс _пс
<::рус>          jь ju
<::греч>         _i _с _кс _пс

При этом _-обозначения букв в режимах <::слав> и <::греч>
синонимичны <...>-обозначениям: _кс = <кс> и т. п.; они
введены для более компактной записи только орфографически
необходимых букв "классического варианта" ц.-сл. и греч.
письменностей.

II.11. АКЦЕНТЫ в настоящее время таковы:

<везде>     "\"-обозначения, в том числе \{...}
<везде>     "|"-обозначения, в том числе |{...}
<::слав>    ' ` ^ = $ ~ "
<::греч>    ' ` ^ = $ ~ <i> _i "
<::лат>     ' ` ^ ~ "
<::глаг>    ' ` ^ = $ ~ "
<::рус>     ' ` ^ "

Смысл этих обозначений см. в таблицах ниже. Остальные
упомянутые там обозначения -- БАЗОВЫЕ_ЗНАКИ.

Примечание 5. При наличии нескольких АКЦЕНТОВ они
записываются слева направо и снизу вверх. Поэтому в
сочетаниях придыхания с ударением сперва пишем знак
придыхания, а потом знак ударения:

=' =` =^ $' $` $^

Из тех же соображений акцентированные варианты буквы
"от" пишем так:

     w\т'           ("от" с ударением)
     w\т\ъ          ("от" с паерком)
     w\т~           ("от" с титлом)

Примечание 6. Сама же по себе сочетаемость АКЦЕНТОВ друг с
другом и с БАЗОВЫМИ_ЗНАКАМИ представляет собой вопрос не
HIP-кодировки, а орфографической и типографской корректности
текста, а потому в данном документе не оговаривается.
Однако для некторых сочетаний указано их значение.

III. ИНТЕГРАЦИЯ КОДИРОВКИ HIP И СИСТЕМ РАЗМЕТКИ ТЕКСТА

HIP-фрагменты можно включать в документы и программы на
других языках разметки (TeX, HTML и т. п.) двумя способами:
с использованием препроцессора и напрямую.

СПОСОБ 1. Пользователь готовит "смешанный" документ,
в котором "внешняя" разметка и текстовое HIP-наполнение
пишутся каждое по своим правилам (так что одинаковые с виду
части смешанного документа могут обозначать разные вещи,
вроде <i> -- которое в HTML есть команда включения курсива, а
в HIP -- обозначение одной из букв); переходы же от
"внешнего" языка разметки к HIP и обратно отмечены метками
<hip> и </hip>. Затем применяется программа-препроцессор,
превращающая этот смешанный документ в корректный входной
файл для соответствующей системы. При использовании этого
способа надо следить за тем, чтобы не возникало "ложных"
меток <hip> и </hip> (в том числе и в комментариях).

СПОСОБ 2. 136 элементарных "символов" (см. выше п. I.6)
кодируются какими-либо последовательностями, допустимыми во
"внешнем" языке разметки -- с тем единственным условием,
чтобы из любой корректной (с точки зрения HIP) их
последовательности получилась корректная же запись в этом
внешнем языке разметки. Например, для вложения HIP в HTML
можно большинство HIP-символов оставить "самими собой", а три
("<", ">" и "&") закодировать последовательностями "&lt;",
"&gt;" и "&amp;", как принято в HTML. Или даже можно остаться
в рамках побайтового представления HIP-информации, используя
для этих трех символов какие-либо незадействованные кодовые
позиции (например, в HTML в кодировке CP-1251 можно для этих
трех HIP-обозначений использовать позиции, занятые одиночными
угловыми кавычками и знаком параграфа).

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

Также подразумевается, что в начале каждого фрагмента стоит
языковой режим <::слав>, а все шрифтовые выделения отключены.

IV. ТАБЛИЦЫ СИМВОЛОВ HIP

IV.1. Переключения письменности (действуют глобально,
до следующего переключения)

<::слав> переключение в "славянский" режим ([полу]уставная кириллица)
<::рус>  переключение в "русский" режим (гражданская кириллица)
<::глаг> переключение в глаголический режим
<::греч> переключение в греческий режим
<::лат>  переключение в латинский режим

IV.2. Знаки, случайно общие для всех пяти нынешних языковых
режимов (необходимо общие знаки были приведены в II.9):

Знаки 0123456789.,:;!()[]/ обозначают сами себя.

 -    дефис
<->   тире (в режиме <::лат> -- короткое тире)
<?>   вопросительный знак обычного вида (в том числе в режиме <::слав> )
 '    острое ( /-образное ) ударение (акут) или иной знак той же формы
 `    тяжелое ( \-образное ) ударение (гравис) или иной знак той же формы
 ''   //-образный надстрочный знак
 ``   \\-образный надстрочный знак
 ^    облеченное ударение (циркумфлекс) или иной знак той же формы:
      в виде "шапочки", круглой или остроконечной (для <::рус> и <::лат>)
 "    два надстрочных штриха, наклон которых неважен или определен контекстом
<((>  <<-образная или ((-образная (в греческом режиме) кавычка
<))>  >>-образная или ))-образная (в греческом режиме) кавычка
 \.   точка над буквой
 \:   две точки над буквой ( Ё = Е\: )
 \@   U-образный надстрочный знак, обычно символ краткости ( Й = И\@ )
<.>   точка на средней линии строки
 \-   черта над буквой (в режиме <::слав> -- знак "покрытие")
 |.   точка под буквой
 |-   черта под буквой
 |о   кружок под буквой

<покрытие>&{...}  надчеркнутый текст (многобуквенный); в режимах <::слав>
                  и <::глаг> кончики линии загнуты вниз

IV.3. Специфические знаки режима <::слав>
IV.4. Специфические знаки режима <::рус>
IV.5. Специфические знаки режима <::лат>
IV.6. Специфические знаки режима <::греч>
IV.7. Специфические знаки режима <::глаг>

IV.8. Комментарии и спецкомментарии

%<   включение шрифтового выделения 1 (по умолчанию -- киновари)
%>   выключение шрифтового выделения 1 (по умолчанию -- киновари)
%[   включение шрифтового выделения 2 (по умолчанию -- разрядки)
%]   выключение шрифтового выделения 2 (по умолчанию -- разрядки)
%(   включение шрифтового выделения 3 (по умолчанию -- подзаголовочный мелкий шрифт)
%)   выключение шрифтового выделения 3 (по умолчанию -- подзаголовочный мелкий шрифт)

     Все эти шрифтовые переключения глобальны:

     идет черный текст %<а теперь красный {началась сноска
     красным %[плюс с этого места и вразрядку%> теперь
     черным вразрядку} основной текст после сноски идет
     черным вразрядку %[второй раз включили разрядку, но
     ничего не изменилось%] разрядка кончилась, текст
     обычный черный%> лишнее переключение на черный
     ничего не меняет

%-   мягкий перенос: w=б%-ра'%-до%-вал%-ся
%^   указание к.-л. программе превратить след. букву в прописную
%_   указание к.-л. программе превратить след. букву в строчную
%&   (1) признак неразрывности следующего пробела: вот%& так
     [если пробел обозначен сложной последовательностью
     пробелов, EOL и комментариев (см. выше), то он неразрывен,
     если спецкомментарий %& написан раньше хотя бы одного
     пробела или EOL]
     (2) знак запрета разрыва страниц между абзацами
     [действует, если после него идут возможные
     пробелы, EOL'ы и комментарии, а потом -- явный разделитель
     абзацев <> или _/ ; а также, если разделение абзацев
     обозначено двумя или более EOL'ов, и %& стоит раньше
     последнего из них]
     (3) признак неразрывности знаков -, <->, <-->, /
     (по которым обычно можно рвать строку): как%&-то так
     (4) указание программам расстановки мягких пробелов
     для запрета переноса в данном месте: по%&длинный
%{ ... }   произвольные комментарии (внутри них символы { и }
           допустимы только при условии соблюдения парности)
%{! ... }  общий вид зарезервированных спецкомментариев
%{![ ... } общий вид "открывающих" зарезервированных спецкомментариев
%{!] ... } общий вид "закрывающих" зарезервированных спецкомментариев
           (конструкции %{![...}...%{!]...} не обязаны быть вложенными;
           запись вроде абв%{![zzz}где%{![qqq}жзи%{!]zzz}клм%{!]qqq}ноп
           также корректна)

%{!версия=9} идентификатор версии формата, необходимый в самом
             начале HIP-файла и после каждого <hip> в смешанном документе

%{!Внутри}   следующая сноска -- текст на внутренних полях
%{!НаПолях}  следующая сноска -- текст на полях
%{!Слева}    следующая сноска -- текст слева на полях
%{!Снаружи}  следующая сноска -- текст на внешних полях
%{!Справа}   следующая сноска -- текст справа на полях
%{!БезЗнака} следующая сноска -- без номера или иного знака

%{!Число}    (1) последующие буквы, титла и точки есть запись числа
             (2) последующие цифры есть запись числа, подлежащего
             к.-л. обработке (напр., преобразованию в кириллицу)
%{![Число}...%{!]Число} "скобочная" разметка числа (напр., в случаях
             вроде в\ъ %{![Число}г~%{!]Число}е лjьто... )

%{!Буквица}  последующее есть буквица
%{![Буквица}...%{!]Буквица} "скобочное" обозначение буквиц

БУКВИЦЫ. Допустимо два стиля их использования: указывать
только начало:

   %{!Буквица}Жили-были старикъ со старухой
   %{!Буквица}О<у> самаго синяго моря...

или и начало, и конец:

   %{![Буквица}Ж%{!]Буквица}или-были старикъ со старухой
   %{![Буквица}О<у>%{!]Буквица} самаго синяго моря...

-------------------------------------

УПРАЗДНЕННЫЕ ИЛИ ИЗМЕНЕННЫЕ (ПО СРАВНЕНИЮ С HIP-8)
ОБОЗНАЧЕНИЯ HIP-9

Было                            Стало

?&{вар1|вар2|...|варN}          ?&{вар1}&{вар2}&{...}&{варN}
%{!Число}...%{!/Число}          %{![Число}...%{!]Число}
%{!Буквица}...%{!/Буквица}      %{![Буквица}...%{!]Буквица}
<W> <w> _W _w (режим <::слав>)  <_W> <_w>
<W>=^ <w>=^ _W=^ _w=^           допустимо также <W> <w> _W _w
                                (то есть мы вернулись к HIP-7)

Надстрочник \f (режим <::слав>) по умолчанию решено считать
не имеющим взмета.

УПРАЗДНЕННЫЕ ИЛИ ИЗМЕНЕННЫЕ (ПО СРАВНЕНИЮ С HIP-7)
ОБОЗНАЧЕНИЯ HIP-8

Было                            Стало

<W> <w> _W _w (режим <::слав>)  <W>=^ <w>=^ _W=^ _w=^
<сноска>&{...}                  {...}
<паралл>&{...}                  отменено
<тьма>&а и т. п.                <тьма>&{а} и т. п.

Hosted by uCoz