База Знаний: Языки. Проверка орфографии в двуязычных текстах в OpenOffice.org 3.x

From Apache OpenOffice Wiki
< RU‎ | kb
Revision as of 10:31, 10 February 2011 by Sancho (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


В случае, когда в тексте присутствует только один иностранный язык, можно использовать быстрый способ для разметки текста - присвоению иностранным словам атрибута соответствующего языка.

Обработка отдельных слов

Для этого необходимо выполнить следующие действия:

  1. открыть окно поиска,
  2. в дополнительный параметрах включить регулярные выражения, и
  3. Найти: [A-Za-z\-]+( )*
  4. Заменить: &
    • Формат: Английский (или другой язык)
  5. щёлкнуть кнопку  Заменить все .

Обратите внимание - внутри скобок () пробел.


Возможны варианты поискового запроса: "[A-Za-z]" и "[A-Za-z]+", равноценные с точки зрения результата (даже при замене по одному символу Apache OpenOffice самостоятельно объединяет рядом идущие диапазоны с одинаковыми стилями, для этого не требуется специальных действий). Вариант "[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>

получается при замене языка у абзаца, а не у выделения.


Обработка абзацев

Для обработки целых абзацев так же есть простое решение.

Если текст содержит целиком английские абзацы, достаточно выполнить замену:

  1. Найти: ^[A-Za-z\-\.;,_ ]+$
  2. Заменить: &
    • Формат: Английский (или другой язык)
  3. щёлкнуть кнопку  Заменить все .

Обратить внимание на пробел и знак подчёркивания внутри []. Если английские абзацы содержат какие-либо ещё символы, их нужно добавить внутрь [].






S. Bormant
2010










Personal tools