Q. Возникла необходимость набирать дореформенный текст. Использую MikTeX и cm-super. Текст не церековный, шрифтовых извращений не требуется. Hе подскажете ли, каким образом получить в LaTeX буквы, использовавшиеся в старой русской орфографии (ять, фита, ижица)?
A [Vladimir Volovich]. Эти буквы есть в кодировках X2 и OT2. Поэтому:
\usepackage[X2,T2]{fontenc}
\DeclareTextSymbolDefault{\CYRYAT}{X2}
\DeclareTextSymbolDefault{\CYRFITA}{X2}
\DeclareTextSymbolDefault{\CYRIZH}{X2}
\DeclareTextSymbolDefault{\cyryat}{X2}
\DeclareTextSymbolDefault{\cyrfita}{X2}
\DeclareTextSymbolDefault{\cyrizh}{X2}
и набирать их как \CYRYAT, \CYRFITA, \CYRIZH, \cyryat, \cyrfita, \cyrizh.
[Waldenfels] Если InputEncoding - utf8x, то можно писать этими буквами непосредственно.
[neGODnick]
Эти буквы есть в кодировках X2 и OT2.
При этом не забываем, что в кодировке X2 отсутствуют латинские символы. А символы латинского алфавита нужны практически всегда — хотя бы для тех же интернет-ссылок, адресов электронной@почты, ISBN и т. д. Поэтому в большинстве случаев придётся использовать две кодировки. При указании нескольких кодировок для пакета fontenc основной считается та, которая указана последней. Так, если мы укажем в преамбуле
\usepackage[X2,T2A]{fontenc}
то основной кодировкой будет T2A, но для отображения ятей и т. д. необходимые символы будут браться из кодировки X2.
[Waldenfels] пишет: Если InputEncoding - utf8x, то можно писать этими буквами непосредственно.
Это было бы особенно удобно, если использовать типографскую раскладку. Я сделал себе собственную раскладку клавиатуры и она мне сильно облегчает жизнь, но
Кроме этого, делать такую преамбулу и набирать просто так нельзя! Если в тексте, например, будут формулы или английские буквы, обозначения и т. п., то они будут перекорёжены до неузнаваемости из-за конфликта кодировок. Необходимо явно задавать смену кодировок в тексте:
Код:
Вот мы пишем обычный текст на русском или на english-ском,
а теперь {\fontencoding{X2}\selectfontпишемъ н\cyryatчто въ старой ор\cyrotldограф\cyriiи},
а начиная с запятой пошёл снова обычный текст
Результат:
Вот мы пишем обычный текст на русском или на english-ском, а теперь пишемъ нѣчто въ старой орѳографіи, а начиная с запятой пошёл снова обычный текст
Понятно, что постоянно набирать такое — мучение, поэтому лучше сделать в преамбуле спец. команды для отдельных букв. Я себе сделал так:
\usepackage[X2,T2A]{fontenc}
\usepackage[cp1251]{inputenc}
\newcommand{\И}{{\fontencoding{X2}\selectfont\CYRII}} % Буква И-десятеричное ЗАГЛАВНАЯ на рус. клавише «Ии»
\newcommand{\и}{{\fontencoding{X2}\selectfont\cyrii}} % Буква И-десятеричное строчная
\newcommand{\Е}{{\fontencoding{X2}\selectfont\CYRYAT}} % Буква Ять ЗАГЛАВНАЯ на рус. клавише «Ее»
\newcommand{\е}{{\fontencoding{X2}\selectfont\cyryat}} % Буква Ять строчная
\newcommand{\Ф}{{\fontencoding{X2}\selectfont\CYROTLD}} % Буква Фита ЗАГЛАВНАЯ на рус. клавише «Фф»
\newcommand{\ф}{{\fontencoding{X2}\selectfont\cyrotld}} % Буква Фита строчная
\newcommand{\Ы}{{\fontencoding{X2}\selectfont\CYRIZH}} % Буква Ижица ЗАГЛАВНАЯ на рус. клавише «Ыы»
\newcommand{\ы}{{\fontencoding{X2}\selectfont\cyrizh}} % Буква Ижица строчная
Раскладка выбрана такая:
| Буква | Клавиша Рус / En | Почему на этой клавише |
|---|---|---|
| Іі И‑десятеричное | Ии/Bb | Потому что это тоже «И» :—) |
| Ѣѣ Ять | Ее/Tt | Используется аналогично букве «Е», а не «Я» |
| Ѳѳ Фита | Фф/Aa | По названию, хотя по использованию ближе к русскому «Т», лат. «Th» |
| Ѵѵ Ижица | Ыы/Ss | Ижица примерно соотв. лат. «Yy» по использованию (а ещё точнее «Υυ» — греческому «Эпсилон»), в русском соотв. «И» или «В», но мы помещаем на Ыы/Ss — так легче запомнить и отыскать потом в коде (и не спутаешь). Употреблялась и раньше всё равно очень редко. |
Теперь я могу набирать любые тексты как обычно, вводя по отдельности необходимые короткие команды из слеша и одной-единственной буквы (фактически, просто добавляя \):
Вот мы пишем обычный текст на русском или на english-ском, а теперь пишемъ н\ечто въ старой ор\фограф\ии, а начиная с запятой пошёл снова обычный текст
Обратите внимание, что я сделал команды для ввода старых русских букв тоже на русском, чтобы не было необходимости переключать раскладку клавиатуры.