|
|
Автор | Сообщение | Словарь коррекции текста |
---|
evilone_ Участник «online словари»
Сообщений : 859
Репутация : 317
| evilone_ | :: Пн Сен 20 2010, 19:43 | Пн Сен 20 2010, 19:43 | |
| Словарь коррекции текста (дополнительный словарь для основного словаря замен корректирующий текст для лучшей расстановки ударений). В словаре используются правила на основе регулярных выражений работающие одинаково по стандарту VBScript и PCRE. Данный словарь предназначен для использования в программах для чтения вслух и записи в аудиофайл текстовых файлов с использованием пакетов речевых функций SAPI4\SAPI5. В зависимости от нужных функций в словаре предусмотрен расширенный выбор правил. Для исключения нужного правила используйте символ #(решетка) в начале нужной строки. Для лучшей расстановки замен в программе "балаболка" в настройках нужно выбрать опцию "Применять правила к большим по размеру частям текста"Для лучшей расстановки замен в программе "демагог" в настройках необходимо включить режим совместимости со стандартом VBScript в общих настройках меню сервис. Особенности словаря:- Ошибки распознавания текста. Используется для текста содержащего латинские буквы одинаковые по начертанию с кириллицей содержащиеся в русских словах. Данное правило существенного замедляет работу для большого по объему текста.
- Замена звездочек паузой. Данное правило актуально только для голоса Acapela-Group Alyona (Алёна) с подключенным лексиконом для запрета чтения разделительных знаков. Для остальных голосов предусмотрено использовать аналогичную замену через SAPI4\SAPI5 теги, предварительно закомментировав правило №8.
- Удаление лишних звездочек в тексте. Все разделители в тексте, как правило, три звездочки можно заменить паузой, все остальные удаляет данное правило.
- Удаление ссылок и html-мусора в тексте.
- Замена тире и дефиса. Только для голоса Acapela-Group Alyona (Алёна) (словарь corector.rex) производится удаление тире и дефиса. Для приведения к стандарту словаря замен, использующегося для разметки омографов в тексте, все знаки тире и дефиса в тексте удалены!
- Дубликаты символов. Данное правило удаляет более одного идущего подряд символа для любителей злоупотреблять в тексте конструкциями вида: «---------------------», «===========», «!!!???» и т.п.
- Удаление букв через дефис в словах, напр. Ура-а-а-а! А-а-а-а! и т.п.
- Разрыв строки внутри абзаца. Удаляет переносы строк внутри абзаца. Актуально для текста обработанного программой «Книгодел». Аналогична функциям форматирования текста в программах «Балаболка» и «Демагог».
- Замена нескольких пустых строк одной. Удаляет лишние пустые строки в тексте.
- Удаление текста в скобках {}[]<>. Для использования в тексте SAPI4\SAPI5 тегов данное правило необходимо закомментировать.
- Удаление более одного пробела. Удаляет в тексте лишние пробелы.
- Пробел между буквой и цифрой. Корректирует правильную расстановку пробелов между буквой и цифрой согласно правилам набора текста.
- Пробел между буквой и знаком препинания. Корректирует правильную расстановку пробелов возле знаков препинания согласно правилам набора текста.
- Коррекция ошибок произношения (только для голоса Acapela-Group Alyona (Алёна)). Правила для исправления ошибок произношения.
- Коррекция произношения слов с частицей "-то" образующей особые формы слов.
- Коррекция ошибок произношения при произношении сложносоставных слов с числительными вида 123слово.
- Замена ударных гласных. Нужно только для использования со словарями от голосового движка «Алена» для других голосов. Замена производится в два этапа: на первом этапе необходимо подключить словари corector-olga.ini и omograph.dic (словарь замен Аленки), на втором словарь-фильтр alenka-to-olga.dic для Ольги или alenka-to-nikolai_SAPI4.dic для Николая соответственно. В самом тексте, сначала производится замена всех ударных гласных на строчные, затем производится поиск и расстановка ударений для омографов, и на последнем этапе, замена ударных гласных формата Аленки к формату Ольги или Николая соответственно.
Как альтернативу можно использовать словари-фильтры alenka-to-olga.dic для Ольги или alenka-to-nikolai_SAPI4.dic непосредственно на словаре omograph.dic (словарь замен Аленки) приведя его к нужному формату и затем использовать как основной словарь замен. Кому как удобнее.
| Словарь коррекции текста для Acapela-Group (Алёна) (зеркало) | | Словарь коррекции текста для Loquendo Olga (Ольга) | | Словарь коррекции текста для IVONA Tatyana (Татьяна) & Maxim (Максим) (зеркало) |
По мере добавления новых правил описание будет обновляться. Все найденные ошибки и замечания пишем сюда. |
|
|
| |
Андрей28 Участник
Сообщений : 74
Репутация : 8
| Андрей28 | :: Вс Янв 23 2011, 14:11 | Вс Янв 23 2011, 14:11 | |
| В словарях .rex есть такая строчка: ([\x20])+=$1 эта строчка меняет каждую встречную группу пробелов на один пробел. Штука в том, что каждый одиночный пробел она - тоже меняет на один пробел. (потеря времени) Рекомендую: (\x20)\x20*=$1 Эта строка будет менять - только два и более пробелов на один. |
|
|
| |
al2055 Постоялец
Сообщений : 95
Репутация : 23
| al2055 | :: Вс Янв 23 2011, 14:51 | Вс Янв 23 2011, 14:51 | |
| - Андрей28 пишет:
- (\x20)\x20*=$1
Эта строка будет менять - только два и более пробелов на один. Совершенно верно. Я использую то же самое, но чуть проще запись: - Код:
-
(\x20){2,}=$1 Но об этом, наверное, не здесь. |
|
|
| |
evilone_ Участник «online словари»
Сообщений : 859
Репутация : 317
| |
| |
Андрей28 Участник
Сообщений : 74
Репутация : 8
| Андрей28 | :: Вс Янв 23 2011, 23:58 | Вс Янв 23 2011, 23:58 | |
| - evilone_ пишет:
- а какой вариант лучше?
Лучше вариант - al2055
(\x20){2,}=$1 |
|
|
| |
al2055 Постоялец
Сообщений : 95
Репутация : 23
| al2055 | :: Пн Янв 24 2011, 12:55 | Пн Янв 24 2011, 12:55 | |
| Есть у кого-нибудь варианты коррекции слов с повторяющимися буквами? Типа - Код:
-
да-а-а-а; н-е-е-ет; ну-с-с-с-с; ого-о-о-о и т.д. Словарями замен не очень получается. Разные авторы разное кол-во букв пишут и т.д. Я делаю так: - Код:
-
-?(а)(-а)+-?([^а]|\b)=$1$3 И такое правило для каждой буквы, кот. надо отследить. Но тут возникает проблема. Приходится предварительно записать правила, убирающие дефис в словосочетаниях типа - Код:
-
так-как; год-другой; еле-еле; из-за; тут-то и т.п., довольно большой список. Может имеется более изящное решение? |
|
|
| |
Андрей28 Участник
Сообщений : 74
Репутация : 8
| Андрей28 | :: Пн Янв 24 2011, 17:29 | Пн Янв 24 2011, 17:29 | |
| al2055,
Более того... Написание этого мусора - тоже имеет некоторые разновидности: приве-е-е-е-е-е-ет прив-е-е-е-е-е-е-ет приве-е-е-е-е-е-е-т прив-е-е-е-е-е-е-е-т
Есть варианты, которые исправлять - не берусь, поскольку могут и другие слова пострадать. Вот такие: приве-ет прив-е-т прив-ет приве-т
Все остальное - имеет следующие варианты(кроме количества повторов): приве-е-ет прив-е-ет приве-е-т прив-е-е-т
Для них - предлагаю четыре строчки: ([^\x2D])([А-яЁё])(\x2D\2){2,}([^\x2D])=$1$2$4 (\x2D)([А-яЁё])(\x2D\2)+([^\x2D])=$2$4 ([^\x2D])([А-яЁё])(\x2D\2)+(\x2D)=$1$2 (\x2D)([А-яЁё])(\x2D\2)+(\x2D)=$2
Строчки местами не меняйте, поскольку некоторые из них - предполагают, что кое-какие разновидности - уже исправлены. Некоторые круглые скобки - не обязательны, но даны для более удобного восприятия. |
|
|
| |
al2055 Постоялец
Сообщений : 95
Репутация : 23
| al2055 | :: Пн Янв 24 2011, 20:16 | Пн Янв 24 2011, 20:16 | |
| Согласен, Ваш способ быстрее и менее трудоемок, мой точнее и более универсален. Проверте на - Код:
-
приве-ет например. |
|
|
| |
evilone_ Участник «online словари»
Сообщений : 859
Репутация : 317
| evilone_ | :: Пн Янв 24 2011, 20:47 | Пн Янв 24 2011, 20:47 | |
| Андрей28,
al2055, а какая вероятность попадания такого слова в тексте? это правда, очень часто попадаются слова вида: Бр-р-р-р, М-м-м-м, Ага-а-а-а и т.п. но слова "приве-ет" очень редкие, мне кажется нету смысла так сильно на них зацикливаться, хотя если много свободного времени...
|
|
|
| |
Андрей28 Участник
Сообщений : 74
Репутация : 8
| Андрей28 | :: Пн Янв 24 2011, 20:55 | Пн Янв 24 2011, 20:55 | |
| - al2055 пишет:
- Проверте на
приве-ет Вообще-то я - специально исключил эти слова, поэтому не буду проверять Могу все поубирать, но тогда пострадает слово: "верхне-егунево" какое-нибудь... Без этих исключений правило было бы проще...
- Андрей28 пишет:
Есть варианты, которые исправлять - не берусь, поскольку могут и другие слова пострадать. Вот такие: приве-ет прив-е-т прив-ет приве-т |
|
|
| |
al2055 Постоялец
Сообщений : 95
Репутация : 23
| al2055 | :: Пн Янв 24 2011, 20:57 | Пн Янв 24 2011, 20:57 | |
| - evilone_ пишет:
- мне кажется нету смысла так сильно на них зацикливаться
Да мы и не зацикливаемся именно на этом. Но, кажется, остальные, в том числе, указанные Вами варианты успешно разрулены. Просто мне было интересно, какие еще варианты есть. На все хорошее всегда найдется лучшее). |
|
|
| |
Андрей28 Участник
Сообщений : 74
Репутация : 8
| Андрей28 | :: Пн Янв 24 2011, 21:01 | Пн Янв 24 2011, 21:01 | |
| - al2055 пишет:
- На все хорошее всегда найдется лучшее).
Точно - просто спорт, не более)))))) |
|
|
| |
szasz Посетитель
Сообщений : 34
Репутация : 28
| szasz | :: Вс Янв 08 2012, 16:28 | Вс Янв 08 2012, 16:28 | |
| Может кому пригодится. Замена нумерации частей текста, отделенных пустыми строками, на паузы. - Код:
-
(\r\n)\d\d(\r\n)=$1<silence msec="2000"/>$1 (\r\n)\d(\r\n)=$1<silence msec="2000"/>$1 Удаление сносок и текста внутри вместе со скобками []. - Код:
-
(\[)(.*)(\])= Пауза перед новой частью или главой с нумерацией. - Код:
-
(\r\n)(Книга\s\d|Часть\s\d|Глава\s\d)=$1<silence msec="2000"/>$1$2 Обозначение начала и конца сноски с добавлением паузы. - Код:
-
(\[\d\d)=. Сноска, <silence msec="1000"/> (\[\d)=. Сноска, <silence msec="1000"/> (\])= <silence msec="1000"/> Конец сноски. <silence msec="1000"/> Пауза на месте пустой строки - Код:
-
(\r\n)(\r\n)+=$1<silence msec="3000"/>$1 |
|
|
| |
vova0 Наблюдатель
Сообщений : 1
Репутация : 0
| vova0 | :: Вт Фев 21 2012, 08:13 | Вт Фев 21 2012, 08:13 | |
| Всё это хорошо но ни словом ни пол словом не сказано как и куда прикручивать этот словарь например в той же Балаболке |
|
|
| |
evilone_ Участник «online словари»
Сообщений : 859
Репутация : 317
| evilone_ | :: Вт Фев 21 2012, 13:06 | Вт Фев 21 2012, 13:06 | |
| vova0, смотрите условные обозначения вот тут, там же описаны установка и подключение словарей для программы "балаболка", сейчас ini это rex, просто изменилось название, программа сама его переименует, должна |
|
|
| |
evilone_ Участник «online словари»
Сообщений : 859
Репутация : 317
| |
| |
fabe Новичок
Сообщений : 11
Репутация : 0
| fabe | :: Сб Сен 12 2015, 21:38 | Сб Сен 12 2015, 21:38 | |
| как их подключить в textaloud 3 ? |
|
|
| |
evilone_ Участник «online словари»
Сообщений : 859
Репутация : 317
| evilone_ | :: Пт Окт 23 2015, 23:22 | Пт Окт 23 2015, 23:22 | |
| nordost9, мы обновили корректор попробуйте проверить с ним на наличие ошибок теперь знаки препинания должны сохраняться |
|
|
| |
nordost9 Посетитель
Сообщений : 37
Репутация : 1
| nordost9 | :: Вт Окт 27 2015, 13:38 | Вт Окт 27 2015, 13:38 | |
| - Цитата :
nordost9, мы обновили корректор попробуйте проверить с ним на наличие ошибок теперь знаки препинания должны сохраняться
Этот сбой идет с включенными, обновленными словарями коррекции текста, от 25.09.2015: - corector_ivona_ru.rex - corector_ivona_ru_maxim.rex |
|
|
| |
wasyaka Опытный
Сообщений : 170
Репутация : 20
| wasyaka | :: Вт Окт 27 2015, 20:28 | Вт Окт 27 2015, 20:28 | |
| - evilone_ пишет:
- nordost9, мы обновили корректор попробуйте проверить с ним на наличие ошибок
теперь знаки препинания должны сохраняться
В прихожей стояли ещё пятеро, не менее благообразные.
после корректора В прихожей стояли ещё пятероъ , не менее благообразные.
|
|
|
| |
evilone_ Участник «online словари»
Сообщений : 859
Репутация : 317
| evilone_ | :: Чт Окт 29 2015, 15:58 | Чт Окт 29 2015, 15:58 | |
| wasyaka, судя по всему, единственно "правильный" вариант устранения сбоя это удаление а не замена, так что вернули как было - обновите, но знаки будут удалены |
|
|
| |
|
Словарь коррекции текста |
---|