Новости Энциклопедия переводчика Блоги Авторский дневник Форум Работа

Декларация Поиск О нас пишут Награды Читальня Конкурсы Опросы








ГП-цитатник

Прописать правило сегментирования для слова с пробелом

Re: Прописать правило сегментирования для слова с пробелом

Сообщение esperantisto » Пн май 17, 2021 14:35

Покажите свой файл правил сегментирования.
«И вообще погаными тряпками гнать этих переводчиков. Ишь чего удумали — переводить. Да ещё, чтоб удобно им было, хотят.» (на форуме разработчиков ПО)
esperantisto

 
Сообщения: 7035
Зарегистрирован: Ср фев 25, 2004 12:14
Откуда: Менск
Язык(-и): En→Ru/Be, De→Ru/Be





Re: Прописать правило сегментирования для слова с пробелом

Сообщение AsIs » Пн май 17, 2021 23:24

Всё уже, неактуально?
Я ещё одну фишку выяснил: когда меняешь вручную формат текста, меняются и тэги. Я не знаю, почему это происходит, но почему-то происходит. Например, если в фразе Our ref. no. is 12345 поставить курсор внутри слова is и трижды нажать Shift+F3 (переключение регистра), то есть из is сделать Is, потом IS, а потом снова is, то внешне текст в Word останется таким же (желтый маркер), а в OmegaT после обновления появятся тэги: <t0/>i<t1/>s <t2/>. И правило уже не будет действовать. То же касается и разметки языка. Если текст на английском размечен как английский, правило работает при условии отсутствия вышеописанных тэгов. Если текст на английском размечен как русский, правило* не работает.
Изображение
*Правило другое
AsIs

 
Сообщения: 1081
Зарегистрирован: Ср сен 22, 2010 16:13
Язык(-и): RU-EN-RU

Re: Прописать правило сегментирования для слова с пробелом

Сообщение esperantisto » Вт май 18, 2021 09:15

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

Для OmegaT без разницы, какой язык выставлен в документе. Работа правил сегментирования зависит от языка перевода проекта (точнее — от локали).
«И вообще погаными тряпками гнать этих переводчиков. Ишь чего удумали — переводить. Да ещё, чтоб удобно им было, хотят.» (на форуме разработчиков ПО)
esperantisto

 
Сообщения: 7035
Зарегистрирован: Ср фев 25, 2004 12:14
Откуда: Менск
Язык(-и): En→Ru/Be, De→Ru/Be

Re: Прописать правило сегментирования для слова с пробелом

Сообщение AsIs » Вт май 18, 2021 12:37

esperantisto писал(а):Тэги меняются из-за того, что Word везде, где можно, запихивает всякие анальные зонды. Всё, разумеется, во благо пользователя.
Понятно.
esperantisto писал(а):Для OmegaT без разницы, какой язык выставлен в документе. Работа правил сегментирования зависит от языка перевода проекта (точнее — от локали).
А тут не очень понятно. Я в файле прописал три раза одно и то же предложение. Отличаются они только тем, что первые два размечены как английский язык, а третье — русский. Ну и во втором предложении был циклично изменен формат одного слова. Из скрина видно, что получилось с третьим — оно буквально сегментировано по словам. Но вам виднее, я не знаю эту программу. Вероятно, что-то не так делаю. Хотя автору поста, похоже, главное вопрос было задать))
AsIs

 
Сообщения: 1081
Зарегистрирован: Ср сен 22, 2010 16:13
Язык(-и): RU-EN-RU

Re: Прописать правило сегментирования для слова с пробелом

Сообщение esperantisto » Вт май 18, 2021 14:26

В третьем случае в Word выставлен неверный язык, и он пометил все слова как ошибочные — отсюда тэги вокруг каждого слова, которые, да, влияют на сегментирование. Сделайте то же самое в LibreOffice Writer — результат будет совершенно другой (точнее, результата не будет никакого — предложение в окне редактирования OmegaT будет выглядеть так же, как и с правильным языком).

Кстати, есть такая маленькая хитрость: перед переводом открыть файл в LO, задать для текста язык, соответствующий языку перевода. В таком случае файл перевода уже получится с нужным языком, что полезно для проверки правописания/грамматики.
«И вообще погаными тряпками гнать этих переводчиков. Ишь чего удумали — переводить. Да ещё, чтоб удобно им было, хотят.» (на форуме разработчиков ПО)
esperantisto

 
Сообщения: 7035
Зарегистрирован: Ср фев 25, 2004 12:14
Откуда: Менск
Язык(-и): En→Ru/Be, De→Ru/Be

Re: Прописать правило сегментирования для слова с пробелом

Сообщение AsIs » Вт май 18, 2021 17:03

esperantisto писал(а):В третьем случае в Word выставлен неверный язык, и он пометил все слова как ошибочные — отсюда тэги вокруг каждого слова, которые, да, влияют на сегментирование. Сделайте то же самое в LibreOffice Writer — результат будет совершенно другой (точнее, результата не будет никакого — предложение в окне редактирования OmegaT будет выглядеть так же, как и с правильным языком).
А, вон как. Понятно. Если когда-нибудь понадобится, буду иметь в виду. Спасибо.
AsIs

 
Сообщения: 1081
Зарегистрирован: Ср сен 22, 2010 16:13
Язык(-и): RU-EN-RU

Re: Прописать правило сегментирования для слова с пробелом

Сообщение sparkster » Ср май 26, 2021 22:39

esperantisto писал(а):Ещё раз: сначала следует добавить правило, чтобы не разбивать Reg. и no., что-то типа:
перед:
Код: Выделить всё
Reg\.

после:
Код: Выделить всё
\s\no\.



Я не поленился установить OmegaT на чистый компьютер без правил. Это правило все равно не работает, предложения разбиваются.
Что нужно прописать, чтобы предложение не разделялось? Подскажите пожалуйста.
Аватара пользователя
sparkster

 
Сообщения: 93
Зарегистрирован: Чт фев 26, 2015 08:04

Re: Прописать правило сегментирования для слова с пробелом

Сообщение Константин Лакшин » Ср май 26, 2021 23:29

Я обычно в подобных случаях просто до импорта (неважно во что) тупо заменяю проблемный сегмент на что-нибудь без пробелов/знаков препинания, но с достаточно легко идентифицируемыми «тегами». Для себя любимого вставляю KL в произвольных количествах в зависимости от того, что заменяю (KL=пробел, KLKL = точка и т. д.). Или KLprobel и далее...
Переводчик в свободное время, 24/7/365.
Константин Лакшин

 
Сообщения: 2427
Зарегистрирован: Вт авг 26, 2003 20:36
Блог: Просмотр блога (68)

Re: Прописать правило сегментирования для слова с пробелом

Сообщение mikhailo » Ср май 26, 2021 23:33

Чтобы вам помогли
а) выложите пример текста
б) выложите все те правила, которые создавали вы и которые не дали результата
в) прогоните привычность мысли, и если Магомет не идёт к горе, значит надо заставить гору идти к Магомету - может быть стоит подумать, как обработать исходник, чтобы нужные вещи не бились в программе на стандартных правилах - например объединением Reg. no. в Reg.no. или вставкой между ними неразрывного или нестандартного пробела, по которому программа не будет разбивать....
Any man who is under 30, and is not a liberal, has not heart; and any man who is over 30, and is not a conservative, has no brains. - Sir Winston Churchill
mikhailo

 
Сообщения: 3880
Зарегистрирован: Пн июл 12, 2004 07:22
Язык(-и): EN,DE,IT>RU; СУРДОПЕРЕВОД

Re: Прописать правило сегментирования для слова с пробелом

Сообщение AsIs » Чт май 27, 2021 05:02

sparkster писал(а):Это правило все равно не работает, предложения разбиваются.
Что нужно прописать, чтобы предложение не разделялось? Подскажите пожалуйста.

Так вам разве ответ нужен? Реплика "Покажите свой файл правил сегментирования" (Пн май 17, 2021 15:35), наверное, вам адресована была, а не космосу. Хотя бы можно было сказать: "не покажу, у меня там писька нарисована". Ну или хоть как-то отреагировать. А вы задали вопрос и слились на 10 дней. И зачем в таком случае вам помогать? Вам это не надо.
AsIs

 
Сообщения: 1081
Зарегистрирован: Ср сен 22, 2010 16:13
Язык(-и): RU-EN-RU

Re: Прописать правило сегментирования для слова с пробелом

Сообщение AsIs » Чт май 27, 2021 05:15

Шаблон до: ref\.|Ref\.
Шаблон после: \sno\.|\sNo\.

Шаблон до: no\.|No\.
Шаблон после: \s[0-9a-z]+
Если ещё будут другие двусоставные сокращения, например Reg. No., то можно по такому же принципу через знак | дописывать их в тех же строках: ref\.|Ref\.|reg\.|Reg\. и т.д.
Изображение
AsIs

 
Сообщения: 1081
Зарегистрирован: Ср сен 22, 2010 16:13
Язык(-и): RU-EN-RU

Re: Прописать правило сегментирования для слова с пробелом

Сообщение mikhailo » Чт май 27, 2021 10:49

AsIs
[Rr]e[gf]\. (или более правильно (R|r)e(g|f)\.) и после \s

Не думаю, что в документе (R|r)e(g|f)\. встречается в конце предложений.
Any man who is under 30, and is not a liberal, has not heart; and any man who is over 30, and is not a conservative, has no brains. - Sir Winston Churchill
mikhailo

 
Сообщения: 3880
Зарегистрирован: Пн июл 12, 2004 07:22
Язык(-и): EN,DE,IT>RU; СУРДОПЕРЕВОД

Re: Прописать правило сегментирования для слова с пробелом

Сообщение AsIs » Чт май 27, 2021 17:16

mikhailo писал(а):Не думаю, что в документе (R|r)e(g|f)\. встречается в конце предложений.
Вот и я тоже сначала не подумал. Поэтому пришлось искусственно создать такую ситуацию, чтобы сокращение было написано разными регистрами и шло в конце предложения, перед цифрами и перед буквами (чтобы правило работало в любой из этих ситуаций). При этом там, где Ref. No. идёт в конце предложения, сразу начинается следующее предложение, без знака абзаца. Это тоже учтено в правилах.
Изображение
Последний раз редактировалось AsIs Чт май 27, 2021 17:41, всего редактировалось 2 раз(а).
AsIs

 
Сообщения: 1081
Зарегистрирован: Ср сен 22, 2010 16:13
Язык(-и): RU-EN-RU

Re: Прописать правило сегментирования для слова с пробелом

Сообщение AsIs » Чт май 27, 2021 17:19

mikhailo писал(а):AsIs
[Rr]e[gf]\. (или более правильно (R|r)e(g|f)\.)
Кроме того, ваш "более правильный" вариант сгодится только для двух сокращений: Reg. no. и Ref. no.
А мой вариант можно дописывать до бесконечности при условии, что сокращение состоит из двух слов, каждое из которых сокращено точкой.
Например, если вам понадобится добавить atm. press., или Atm. Press., или atm. Press., или Atm. press., то правило можно дописать таким образом:
Шаблон до: ref\.|Ref\.|reg\.|Reg\.|atm\.|Atm\.
Шаблон после: \sno\.|\sNo\.|\spress\.|\sPress\.

И второе правило:
Шаблон до: no\.|No\.|press\.|Press\.
Шаблон после: \s[0-9a-z]+
AsIs

 
Сообщения: 1081
Зарегистрирован: Ср сен 22, 2010 16:13
Язык(-и): RU-EN-RU

Пред.


Словари русского языка

www.gramota.ru
Словарь Мультитран
Язык

Вернуться в OmegaT

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

cron