База Знаний: Настройка. Расширения. Проверка орфографии в двуязычных текстах в OpenOffice.org 3.x
База Знаний: Настройка. Расширения. Работа с иностранными языками
В случае, когда в тексте присутствует только один иностранный язык, можно использовать быстрый способ для разметки текста - присвоению иностранным словам атрибута соответствующего языка.
Обработка отдельных слов
Для этого необходимо выполнить следующие действия:
- открыть окно поиска,
- в дополнительный параметрах включить регулярные выражения, и
- Найти: [A-Za-z\-]+( )*
- Заменить: &
- Формат: Английский (или другой язык)
- нажать кнопку "Заменить все".
Обратите внимание - внутри скобок () пробел.
Возможны варианты поискового запроса: "[A-Za-z]" и "[A-Za-z]+", равноценные с точки зрения результата (даже при замене по одному символу OpenOffice.org самостоятельно объединяет рядом идущие диапазоны с одинаковыми стилями, для этого не требуется специальных действий). Вариант "[A-Za-z]+" работает несколько быстрее за счёт захвата и замены группы символов ([...]+) за один раз.
Однако, рекомендуется именно первый вариант "[A-Za-z\-]+( )*", поскольку он даёт более приемлемый результат:
Код:
<text:p text:style-name="P1"> <text:span text:style-name="T1">The first case</text:span> </text:p>
, который получается при захвате пробелов, идущих после английских слов, сравните с вариантом [A-Za-z]+:
Код:
<text:p text:style-name="P1"> <text:span text:style-name="T1">The</text:span>_ <text:span text:style-name="T1">second</text:span>_ <text:span text:style-name="T1">case</text:span> </text:p>
знаком "_" показаны пробелы. P1 - стиль абзаца с русским языком по умолчанию.
Несомненно, что наилучший результат
Код:
<text:p text:style-name="P2">The third case</text:p>
получается при замене языка у абзаца, а не у выделения.
Обработка абзацев
Для обработки целых абзацев так же есть простое решение.
Если текст содержит целиком английские абзацы, достаточно выполнить замену:
- Найти: ^[A-Za-z\-\.;,_ ]+$
- Заменить: &
- Формат: Английский (или другой язык)
- нажать кнопку "Заменить все".
Обратить внимание на пробел и знак подчёркивания внутри []. Если английские абзацы содержат какие-либо ещё символы, их нужно добавить внутрь [].