reactjs / ru.react.dev

React documentation website in Russian / Официальная русская версия сайта React

Home Page:https://ru.react.dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Некорректное отображение «кавычек-елочек»

IgorLesnevskiy opened this issue · comments

Обнаружил на странице https://ru.reactjs.org/docs/forwarding-refs.html некорректное отображение кавычек - https://take.ms/8IRqS.

При этом в .md все указанно корректно - https://take.ms/mNZWm.

Насколько понимаю, может быть следствием #35

Спасибо вам за ваш ишью, действительно это связано с плагином для Gatsby, а в частности связано с gatsby-remark-typography и Typograf и последовательностями нескольких символов *»:.

Можно я попытаюсь найти, в чём проблема?

Я продебажил чуток, и проблема заключается в том, что текст разбит на разные части, и в общем

Например, вот этот компонент будет называться «*ForwardRef*»:

разбивается на следующие части:

  1. Например, вот этот компонент будет называться «
  2. ForwardRef (скорее всего из-за *)
  3. »:

Когда »: проходит через Typograf, то, насколько я понимаю, он считает, что эта кавычка - первая попавшаяся в этой строке, и поэтому пытается её превратить в «. Не знаю, как здесь лучше решить эту проблему - ведь Typografу нужно всё предложение, чтоб правильно расставить кавычки и прочее.

То есть просто использовать двойные кавычки (ведь они и так потом во французские преобразуются )в исходных текстах? Или я не так понял проблему?

Не в этом проблема. Проблема в том, что текст разбивается на токены, мы фильтруем по типу text и потом каждый text токен передаём в Typograf: https://github.com/reactjs/ru.reactjs.org/blob/ad78b8eb0fb01d6ba5feed2959c9a1f5cb977483/plugins/gatsby-remark-typography/index.js#L7-L20

Но начало и конец токенов не всегда соответствуют началу и концу предложения/абзаца.

Насколько я понимаю, та же самая проблема существует и в https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-remark-smartypants (там по сути аналогичный код), просто в английском не настолько заметно.

Не актуально, старая документация уже не поддерживается и нет необходимости исправлять проблему с "кавычками-ёлочками"