полиглоссия конфликтует с \.{S}, но не с \.{R}

полиглоссия конфликтует с \.{S}, но не с \.{R}

Загрузка Polyglossia каким-то образом отключает команду, \.{S}но не влияет на другие, например \.{R}и \.{G}. Это странно, может кто-нибудь подумать, почему это происходит и что сделать, чтобы \.{S}снова начать работать? Я создаю документ с помощью XeLatex.

МВЭ:

\documentclass{book}
\usepackage{polyglossia}    % This will prevent \.{S} from working.

\begin{document}
\.{S}
\.{R}
\end{document}

решение1

Пакет polyglossiaна самом деле не задействован и его fontspecдостаточно для воспроизведения проблемы (он загружается polyglossia).

В шрифте Latin Modern, используемом по умолчанию, по-видимому, есть ошибка с размещением точки над буквой S.

Простым решением может быть

\documentclass{book}
\usepackage{fontspec}    

\DeclareTextCompositeCommand{\.}{TU}{S}{\accent"02D9 S}

\begin{document}

\.{S}
\.{R}

\end{document}

введите описание изображения здесь

Может быть лучше:

\documentclass{book}
\usepackage{fontspec}

\DeclareTextCompositeCommand{\.}{TU}{S}{\mydottedS}
\newcommand{\mydottedS}{%
  \leavevmode\vbox{%
    \offinterlineskip
    \halign{\hfil##\hfil\cr\char"02D9\cr\noalign{\kern-1.15ex}S\cr}%
  }%
}

\begin{document}

\.{S}
\.{R}

\end{document}

введите описание изображения здесь

Другие шрифты не страдают от этой проблемы. Например, CMU Serif:

\documentclass{book}
\usepackage{fontspec}

\setmainfont{CMU Serif}

\begin{document}

\.{S}
\.{R}

\end{document}

введите описание изображения здесь

Связанный контент