????? #855 ?????? ???????? ???????? CyrTeX-ru@vsu.ru
??: Alexey Kryukov <CyrTeX-ru@vsu.ru>
?????: Re: Re[3]: Xelatex и руссий язык в формулах
?????: Fri, 12 Dec 2008 19:49:36 +0300
???: Cyrillic TeX Users Group <CyrTeX-ru@vsu.ru>
On Thursday 11 December 2008, admin2 wrote:
> Здравствуйте, уважаемые експерты
> Такая ситуация
> В тестовом файле если закоментировать
> \SetSymbolFont{letters}{normal}{EU1}{\rmdefault}{m}{it},
> то знаки препинания в формуле отображаються правильно.
> С включенной строкой в запятой и точке появляется лишняя точка
> посередине.

Это потому, что определения математических символов в LaTeX
рассчитаны на специальные шрифты со специфической кодировкой,
а мы пытаемся подсунуть вместо них юникод. Варианты решения проблемы
такие: можно, во-первых, попытаться переопределить проблемные
символы, благо их не так много. Например:

\DeclareMathSymbol{.}{\mathord}{letters}{`\.}
\DeclareMathSymbol{,}{\mathpunct}{letters}{`\,}

Правда, с греческими буквами этот номер не пройдет, поскольку
команда \DeclareMathSymbol не умеет обрабатывать коды свыше 255.

Другой вариант -- отказаться от переопределения алфавита letters,
а русские буквы в формулах помещать в аргумент команды \mathrm.

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

--
Regards,
Alexej Kryukov <anagnost at yandex dot ru>

Moscow State University
Historical Faculty
???????? (FEED) ????? ???????? (DIGEST) ????? ???????? (INDEX) ?????? ????? ???????? ???? ???????? ??? Listmaster