Тема: Общая тема

Общая тема

Общая тема


Сайт программы

mytts/download Demagog


SAPI4 / SAPI5 - совместимый синтезатор речи (Text To Speech software); OS Windows 10, 8, 7, XP.
Demagog - говорящий текстовый редактор. (c) Венедикт Ли


Возможности:

  • Редактирование текстов

  • Полная поддержка Юникода

  • Чтение текста вслух

  • Поддержка чтения многоязычных текстов

  • Конвертация текста в аудио-файл

  • Пакетная запись аудио

  • Запись аудио в виде сериала, т.е. с делением на фрагменты заданного размера

  • Поддержка словарей корректировки произношения популярного формата .dic

  • Поддержка аналогичных словарей формата .rex, основанных на регулярных выражениях

  • Подключение одновременно нескольких словарей

  • Импорт рисунков из документов MS Word и E-Books, fb2, ePub

  • Развитая система поиска и замены в тексте

  • Подсветка орфографических ошибок, омографов, и близко стоящих похожих слов (опция "Свежий взгляд")

  • Пользовательские настройки окна редактирования: шрифт, фон или фоновая картинка

  • До 15 одновременно открытых файлов

  • Встроенный интерпретатор для создания пользовательских скриптов: например, экспресс-анализа текстов или математических расчетов.

  • В число поддерживаемых форматов файлов входит .dxt - документ Demagog. По функциональным возможностям он соответствует известному межплатформенному формату .rtf

Примечание:
Под управлением Windiws 10 формат dxt обладает расширенными возможностями.
Доступны дополнительно "Выравнивание текста по ширине" и вставка рисунков перетаскиванием или из Буфера обмена непосредственно в текст; изменение ширины столбцов таблицы перетаскиванием их границ мышью.

Общая тема



Многоязычный интерфейс:

  • Английский

  • Русский

  • Украинский - перевод Evgeniy Miroshnychenko

  • Эсперанто

  • Испанский

Простота добавления новых языков интерфейса.


Для поддержки регулярных выражений Demagog использует библиотеку SkRegExp, разработанную Shuichi Komiya - http://skregexp.komish.com. Библиотека лицензирована под MPL 2.0.

Фрагменты исходного кода Demagog'a были использованы разработчиками широко известного погодного робота Meteonova - http://www.meteonova.ru/.

В 2009 г. Demagog занял 3-е место в конкурсе Soft.Mail.ru "Самые популярные программы года" в номинации "Текст".

Одно из авторитетнейших компьютерных изданий - выходящий на 15 языках журнал "CHIP" (№5/2014), назвал Demagog в числе наиболее известных программ для управления речевыми движками.

Издание на Google books: "250 лучших бесплатных программ" так же включило Demagog в свой список, раздел "Преобразование текста в звук".


28.10.2007 - день рождения программы Demagog.

Re: Общая тема

Формат *.dxt удобный и практичный:
a. все закладки, картинки\таблицы, выделение шрифтом и цветом сохраняются.
Можно подготовить список слов\фраз, выделить проблемные моменты, проиллюстрировать скринами, и переслать другу.

b. уменьшение размера больших сборников в 1.5-3 раза.


17.06.15
версия 7.28.296

Изменения:
1) Добавлена опция "Сервис - Статистика - Необработанные омографы";

За скромным названием скрывается вот что; возникла идея списка строк "неучтённых омографов"... но как?

1). открыть текст, отметить галочками словарь alenka.hmg и все словари замен

2). включить опцию, и программа отобразит строки со всеми омографами, не входящими в состав правил замен

Упрощённые примеры:
правило в словаре - анализ крови=анализ крОви
фраза в тексте - анализ его крови показал...

Демагог прописывает строку - крови | анализ его крови показал...
------
правило в словаре - арки ворот=арки ворОт
фраза в тексте - у арки замковых ворот...

Демагог прописывает строки -
ворот | у арки замковых ворот...
замковых | у арки замковых ворот...

Некоторые замечания:
a. у моих примеров 3-4 слова всего, Демагог же прописывает строку с омографом в окружении пяти предшествующих и пяти следующих слов.

b. в принципе анализируются только 3 *.dic словаря - Словарь замены ударений, Большой словарь замен и Расширенный словарь замен. Т.к. другие не ассоциируются с alenka.hmg.
Но если кто-то захочет поэкспериментировать с *.rex - пожалуйста.

c. есть возможность запретить программе отображать строки с указанными омо. Перед поиском омографов выдается запрос: какие не искать.
Введите перечень через ;

Данная функция полезна для "все\всё всем\всём" потому что:

  • на данном этапе задача омографа "все\всё всем\всём" нерешаема

  • из форумских .dic-словарей изъяты все правила с этими омо

  • Венедикт Ли подтвердил и уточнил мою догадку, что словарь vse_vsyo.rex эффективен на 60%

  • если пользователям захочется помучиться, они смогут отобразить строки с "все\всё всем\всём" намного быстрее с помощью Поиска и Шаблона DIC

Ну и самый главный вопрос - зачем это надо?!

Проанализировав полученный список каждый пользователь имеет возможность быстро сформировать свой собственный словарь замен... сообразно своих литературных предпочтений.
Ведь список будет содержать омограф в контексте.

Спасибо автору за воплощение идеи.

Re: Общая тема

Demagog расширенно толкует правила для словарей формата .DIC, в которых есть символ *
Он обозначает изменяемую часть слова.

Например: *стрелил*=стрелИл

Но, отличие от сложившегося стандарта, звездочка может стоять не только в начале и/или конце левой части правила. А так же в начале и/или конце любого слова в левой части правила.

ворот* города=ворОт гОрода

Звездочка также может стоять отдельно от других слов, обозначая любое слово:

все * *ло= всё ло

все давно прошло. --> всё давно прошло.
все вокруг потемнело. --> всё вокруг потемнело.
все мне надоело. --> всё мне надоело.

*ный, * *, берег=ный, , бЕрег

черный, усыпанный ракушками, берег -->  черный, усыпанный ракушками, бЕрег
песчаный, покрытый мусором, берег --> песчаный, покрытый мусором, бЕрег
мрачный, наводящий ужас, берег --> мрачный, наводящий ужас, бЕрег

И т.д. и. т.п...

(2017-11-26 02:46:53 отредактировано tonio_k)

Re: Общая тема

Для понимания работы со словарями в Demagog в сравнении с Балаболка,
прошу ответить на вопросы.
//Ответы по Балаболке   тут mytts/ds

1) В какой последовательности идёт замена по списку файлов словарей (кто раньше) REX или DIC?
2) В какой последовательности идёт обработка файлов словарей REX между собой - по алфовиту?
3) В какой последовательности идёт обработка  файлов словарей DIC между собой - по алфовиту?
4) В какой последовательности идёт оброка строк правил внутри самого словаря? (REX / DIC) с первой строки и далее вниз?
5) какие словари по производительности быстрее работают? Какому отдать предпочтение для скорости обработки текста  REX или DIC ?
6) если отсортировать правила внутри словаря по алфовиту или по длине строки или ещё по какому признаку это как то влияет на ускорение процесса обработки словаря (REX / DIC)
7) большой размер файла DIC. Может его лучше разбить на несколько небольших? или можно смело объединять в один файл? Или нет разницы и на производительность не влияет?

Если отличия единичны, то, пожалуйста, укажите только эти отличия.

35

Re: Общая тема

flegont пишет:

*ный, * *, берег=ный, , бЕрег
черный, усыпанный ракушками, берег -->  черный, усыпанный ракушками, бЕрег
песчаный, покрытый мусором, берег --> песчаный, покрытый мусором, бЕрег
мрачный, наводящий ужас, берег --> мрачный, наводящий ужас, бЕрег

зелёный, такой пупырчатый, берёг его..   mytts/ag

33

Re: Общая тема

зелёный, такой пупырчатый, берёг его..   mytts/ag

Да и к первому правилу, которое я приводил в качестве примера: все * *ло=всё ло
можно подобрать исключение: все друзья весело уселись за стол  mytts/bm
Русский язык велик и могуч - его не так просто алгоритмизировать mytts/suspect

Re: Общая тема

tonio_k пишет:

Для понимания работы со словарями в Demagog в сравнении с Балаболка,
прошу ответить на вопросы.

Помоему в самом начале форума даны на это ответы...
Без разницы где. если одновременно подключины rex  и dic , в первую очередь сработают  rex.
Все словари работают по принципу; кто первый встал - того и тапки... Т. е. до первого совпадения.
Словарей много не должо быть.  и длинные фразы - это в основном разовые... но впереди.

30

Re: Общая тема

tonio_k пишет:

Для понимания работы со словарями в Demagog в сравнении с Балаболка,
прошу ответить на вопросы.

1) В какой последовательности идёт замена по списку файлов словарей (кто раньше) REX или DIC?
2) В какой последовательности идёт обработка файлов словарей REX между собой - по алфовиту?
3) В какой последовательности идёт обработка  файлов словарей DIC между собой - по алфовиту?
4) В какой последовательности идёт оброка строк правил внутри самого словаря? (REX / DIC) с первой строки и далее вниз?
5) какие словари по производительности быстрее работают? Какому отдать предпочтение для скорости обработки текста  REX или DIC ?
6) если отсортировать правила внутри словаря по алфовиту или по длине строки или ещё по какому признаку это как то влияет на ускорение процесса обработки словаря (REX / DIC)
7) большой размер файла DIC. Может его лучше разбить на несколько небольших? или можно смело объединять в один файл? Или нет разницы и на производительность не влияет?

Если отличия единичны, то, пожалуйста, укажите только эти отличия.

Отличия лишь в словарях DIC.

1)
Demagog поймет любой dic-словарь от Балаболки, но обратное - неверно.
Если правило в левой части содержит звездочки, то в классическом формате DIC (придуманном много лет назад автором "Говорилки" Антоном Рязановым) звездочки могут быть только в начале и/или в конце левой части правила. Пример:

ворот*=ворОт
ворота --> ворОта
воротах --> ворОтах
...

Такое правило одинаково отработает в Demagog'e и в Балаболке.
Но в Demagog'e звездочка в dic-словаре может стоять и внутри левой части правила. Пример 2:

ворот* города=ворОт гОрода

Текст:
Ворота города отворились. У ворот города началась битва. Над воротами города реяли стяги. Изменников повесили на воротах города.

Измененный текст в Demagog'e:
ворОта гОрода отворились. У ворОт гОрода началась битва. Над ворОтами гОрода реяли стяги. Изменников повесили на ворОтах гОрода.

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

2)
Проверка текста в Demagog'e по словарю DIC выполняется не одинарным прогоном по тексту, а до тех пор, пока текст изменяется. Словарь:

*^*=
муха=слон

Текст: м^у^ха

Измененный текст в Балаболке: муха, в Demagog'e: слон.

P.S. DIC словари обрабатываются быстро и разбивать их на части для "ускорения" совершенно не нужно.
А REX словари имеют важную особенность: правила в них применяются к тексту строго в порядке их следования в словаре. При этом предыдущие правила могут быть "подготовительными" для работы последующих. И разбив такой REX-словарь на части, вы рискуете просто испортить его и получить непредсказуемые результаты.

P.P.S. В среднем, dic-словари работают заметно быстрее rex-словарей. Но rex-словари обладают значительно бОльшей гибкостью. Это - плюс. Плата за мощь и универсальность - сложность языка регулярных выражений. Это - минус. Пользователь сам решает, какие словари ему удобнее в применении.

Re: Общая тема

После долгой работы в текстовых редакторах с функциональными клавишами, с непривычки очень трудно принять:
Demagog Version 7.29.330
стою на тексте книги, нажимаю Ctrl+F - появляется окно поиска. В строке поиска ввожу поисковое слово, нажимаю Enter и ничего не происходит - надо для поиска кликать мышкой на кнопку "Найти далее".
Нашел слово в книге, решил выделить и скопировать из книги маленький участок текста для его дальнейшего поиска по всему тексту.

Активирую окно поиска, выделяю в строке поиска старый поисковый запрос, нажимаю Ctrl+V что бы в строке поиска старое заменилось содержимым буфера обмена, однако вместо этого, содержимое буфер обмена вставляется в сам текст книги.
Таким образом, окно поиска не поддерживает стандартные комбинации функциональных клавиш - только через вызов меню правой кнопки мыши

35

Re: Общая тема

tonio_k пишет:

содержимое буфер обмена вставляется в сам текст книги.

Это - давний глюк, он и меня достал  mytts/cf mytts/wall
Подумаю, как исправить в следующей версии.

Re: Общая тема

есть возможность поменять путь к папке и само имя папки со словарями?

29

Re: Общая тема

Нет. И не планирую.

Когда-то в очень ранних версиях словарь можно было подгружать с любого места на компе. Для портируемой программы это оказалось неудобно - скопировал папку с прогой на флешку и пошел. А потом вспомнил, что самое ценное-то и забыл: словари! Они в другом месте лежали  mytts/cf

Re: Общая тема

Привет,
что можно сделать когда русский текст отображается таким образом

Общая тема

Пробовал открывать fb2, txt, UTF8 txt файлы, все одно и тоже.
Заранее спасибо.

29

Re: Общая тема

Впечатление такое, что выбранный шрифт не поддерживает юникод.
Попробуйте "Формат - Шрифт" или кнопку "Т" - появится диалог выбора шрифта.
Выберите какой-нибудь другой шрифт, например "Microsoft Sans Serif" - этот шрифт поддерживает юникод.

Re: Общая тема

flegont пишет:

Выберите какой-нибудь другой шрифт, например "Microsoft Sans Serif" - этот шрифт поддерживает юникод.

"Microsoft Sans Serif" и был уже выбран. "Arial" решил проблему, спасибо mytts/shakehand
Пайпы на вкладках к сожалению остались.

32

Re: Общая тема

Вкладки в Demagog используют системный шрифт MS Sans Serif
Значит, и с этим шрифтом на Вашем компьютере - проблема.

Re: Общая тема

Спасибо, теперь знаю в какую сторону копать.
Сегодня вечером попробую обновить эту виртуальную машину.

28

Re: Общая тема

хочу сделать хитрое правило для фразы  И еще я очень скучаю по дяде Тому.
пытаюсь
$ Тому= тОму
или
$* Тому=  тОму
т.е. если Тому с большой буквы и перед ним есть пробел, то заменить на тОму
не катит.
Подскажите как можно?

29

Re: Общая тема

$* Тому=* тОму

Хотя, надо соблюдать осторожность. Одинокая звездочка слева - захватит любое слово, даже если оно принадлежит предыдущему предложению. Бог весть, к чему это приведет на реальных текстах.
Он вспомнил! Тому случаю минуло много лет... --> Он вспомнил! тОму случаю минуло много лет...

Может, лучше принять простое правило:

$дяде Тому=дяде тОму

Вероятность ложных срабатываний - минимальна.

Re: Общая тема

такой "длинный" вариант:
$*а Тому=а тОму
$*б Тому=б тОму
$*в Тому=в тОму
           ...
$*я Тому=я тОму
в этом случае моя задача "если Тому с большой буквы и перед ним есть пробел, то заменить на тОму"
Выполняется?

а если:
$в* Тому=в тОму
для:
Он вспомнил! Тому случаю минуло много лет
то как правило сработает на восклицательный знак? Он входит в эту звездочку?

28

Re: Общая тема

Да, конечно входит. * справа означает любые символы вправо до первого встретившегося пробела.

Re: Общая тема

если Тому с большой буквы и перед ним есть пробел, то заменить на тОму

Тут надо еще уточнить: Тому - с большой буквы, а перед ним пробел, а перед пробелом нет знака . ! ?
Т.е. Тому должно заведомо находиться в середине предложения, тогда с очевидностью это - имя.

(2017-12-04 16:43:38 отредактировано wasyaka)

Re: Общая тема

flegont пишет:

Тут надо еще уточнить: Тому - с большой буквы, а перед ним пробел, а перед пробелом нет знака . ! ?
Т.е. Тому должно заведомо находиться в середине предложения, тогда с очевидностью это - имя.

в dic:
$* тому= томУЪ
$*, тому=, томУЪ
$* - тому= - томУЪ
$*, - тому=, - томУЪ
$* Тому= тОмуЪ
$*, Тому=, тОмуЪ
$* - Тому= - тОмуЪ
$*, - Тому=, - тОмуЪ
$Тому=тому

в rex:
@([А-яЁё])\s\bтому\b=$1 томУЪ
@([А-яЁё])\,\s\bтому\b=$1, томУЪ
@([А-яЁё])\s\-\s\bтому\b=$1 - томУЪ
@([А-яЁё])\,\s\-\s\bтому\b=$1, - томУЪ
@([А-яЁё])\s\bТому\b=$1 тОмуЪ
@([А-яЁё])\,\s\bТому\b=$1, тОмуЪ
@([А-яЁё])\s\-\s\bТому\b=$1 - тОмуЪ
@([А-яЁё])\,\s\-\s\bТому\b=$1, - тОмуЪ
@\bТому\b=тому

tonio_k это ВСЁ есть на форуме. Я ж вас просил - учите матчасть.

27

Re: Общая тема

пожелание по самой программе Demagog
На время работы словаря (после нажатия на кнопку "Измененый текст")   кнопка "Измененый текст" должна быть недоступна/неактивна. Вот так это сейчас выглядит

29

Re: Общая тема

Да, это - не есть хорошо. Спасибо, что заметили. Исправлю в 331-й версии, которая еще в процессе подготовки.
А пока выложил промежуточную 330b. Правило с "дядей Томом" должно теперь работать корректно