语音合成技术和文本语音转换 - Synthetic voice and Text to Speech technology - Синтетический голос и технологии преобразования текста в речь
 
TTS книги  Проверялка  ФорумФорум  RSS  ПоискПоиск  РегистрацияРегистрация  ВходВход  

Критика и предложения

Предыдущая тема Следующая тема Перейти вниз
На страницу : 1, 2, 3, 4  Следующий
АвторСообщениеКритика и предложения
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Вс Авг 15 2010, 18:32
Вс Авг 15 2010, 18:32

Тема для конструктивной критики и предложений по программе

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Пн Авг 16 2010, 03:09
Пн Авг 16 2010, 03:09

А что такое «Удалить EOL внутри абзацев»?

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Пн Авг 16 2010, 08:46
Пн Авг 16 2010, 08:46

Цитата :
А что такое «Удалить EOL внутри абзацев»?
Вот уже и веский повод для выпуска новой версии появился Smile

EOL - End Of Line - этож не человеческий язык, а жаргон программеров!

Написать этот п-т по русски: "Удалить разрывы строк внутри абзацев".

Смысл этой опции такой: каждый абзац превращается в одну длинную строку. При включенном режиме "Формат - Свертка", каждая такая строчка будет свернута обратно в абзац, независимо от размеров окна программы. Т.е. становится возможным автоматическое переформатирование абзацев.
Подобная опция "Удалить разрывы строк внутри абзацев" есть и в Балаболке и называется именно так - длинно, но зато понятно Smile

Еще одна мысля: намедни захотел 60 вордовских doc-ов просто в текст конвертнуть. Ну... вордом можно... по одному. Демагогом тож. Балаболкой.
А вот разом? Штоб отметить все нужные ф-лы doc, html, rtf. fb2 и всех забрить гамузом, разом под одну гребенку.... в txt!?

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Пн Авг 16 2010, 14:28
Пн Авг 16 2010, 14:28

flegont пишет:
Еще одна мысля: намедни захотел 60 вордовских doc-ов просто в текст конвертнуть. Ну... вордом можно... по одному. Демагогом тож. Балаболкой. А вот разом? Штоб отметить все нужные ф-лы doc, html, rtf. fb2 и всех забрить гамузом, разом под одну гребенку.... в txt!?
Таких программ предостаточно, можно даже макрос в MS Word использовать.

Первое, что приходит на ум, - бесплатная утилита ZD2T, которая используется в некоторых "читалках" книг. Это консольная программа, которая позволяет задавать маски имен файлов для конвертации. Сам я с ней дела не имел, но в других программных продуктах эта утилита работает нормально.

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Пн Авг 16 2010, 15:46
Пн Авг 16 2010, 15:46

Цитата :
Таких программ предостаточно...
М-да, возразить нечего. Согласен: не надо "умножать сущности сверх необходимого". Smile

Вернуться к началу Перейти вниз
Lexus
Эксперт
avatar


Сообщений : 408
Репутация : 32

 Lexus :: Пн Авг 16 2010, 16:31
Пн Авг 16 2010, 16:31

Чтобы сделать толковые предложения, хотелось бы узнать нишу, в которой Вы хотите позиционировать программу.

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Пн Авг 16 2010, 17:07
Пн Авг 16 2010, 17:07

о, отлично буду теперь к вам приставать :loveshower:

подскажите пожалуйста когда будет и будет ли поддержка более одного словаря а так же ini-словаря в программе :girl: а то уже как в говорилке сделали так к этому и привыкли

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

мне кажется что вкладки были бы удобнее чем разделение окна на части или если с разделением то чтобы была привязка между ними, например для команды "словарные замены" при клике в верхнем окне по правилу в нижнем автоматически будет показано это место в тексте, а если их несколько то последовательно все

если это не сильно сложно реализовать то этот вариант будет даже удобнее тогда

теперь вопрос про поиск омографов, я знаю что в программе как-то можно искать правила с омографами с помощью словаря но не совсем понятно как Suspect

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

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

например сделать три поля: в первом правило, во-втором фраза до замены а в третьем после

чтобы при редактировании правила автоматически было видно как меняется фраза в третьем поле

аналогично и с уже присутствующими в словаре правилами - при выборе правила из списка оно автоматически будет подставляться в первое поле (поле с правилом) где его при необходимости можно будет исправить

про сортировку если я все правильно понимаю, а может и нет warry, быстрый метод замен не применяет правило к одному и тому же слову дважды? сортировка словаря делается с учетом очередности применения правил или просто по алфавиту длине и т.п.?
было бы удобно видеть после сортировки последовательность правил как они будут применятся к тексту по убыванию или по возрастанию (т.е. какое будет первым или какое будет последним) ну и чтобы вернуть как было можно конечно rulzz

про поиск имен очень не хватает "быстрого прослушивания" как в балаболке, очень к этому привыкли уже

форматирование текста вот тот что удалить переносы, еще бы удалить лишние пробелы, пробелы после знаков препинания, большая\маленькая буква в начале строки и т.п. объединить в один раздел "форматирование текста"
очень сложно найти это все в программе, далеко спрятано Rolling Eyes

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Пн Авг 16 2010, 17:54
Пн Авг 16 2010, 17:54

flegont пишет:
EOL - End Of Line - этож не человеческий язык, а жаргон программеров!

Написать этот п-т по русски: "Удалить разрывы строк внутри абзацев".
Да, теперь понятно. Дякую.Smile

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Пн Авг 16 2010, 23:14
Пн Авг 16 2010, 23:14

1) Поддержка более чем 1-го словаря - будет обязательно, но срок еще не определен.

2) Насчет ini-словаря - честное слово, не знаю. Smile

3) Сохранение окон статистики - красивая идея: каждому виду статистики - свою вкладку. И, соответственно, свой экземпляр компонента RichEdit - это утяжелит прогу. Пока что результаты статистики можно сохранять в файлы через вызов контекстного меню (правый клик в окне статистики и "Сохранить как").

3) Поиск омографов и вообще чего угодно: "Статистика - Найти по списку". Список - текстовый файл, содержащий слова, записанные в столбик, без знаков препинания.
Слово м.б. задано маской со звездочками в начале и/или конце.
Результат выдается в окно статистики: слово из списка и напротив него фрагмент текста, его содержащий. Например:

# Выборка из текста "ogogo.txt" по списку "10 самых частых Ё-омографов.txt"

берег | - _Z_ Берег родины за туманом? _Z_
берег | - Если берег есть, - вставил денщик.
берег | - на берег. Остальных - кончить. Рон,
берег | _E_ _Z_ Берег вырос впереди неодолимой кручей
берег | А скалистый берег, заворачивая к северо-востоку, далеко
...

Пустые строки в тексте показаны как _E_, начала абзацев как _Z_.
Найденный фрагмент содержит 2 слова до и 4 слова после заданного. (Пустые строки и абзацные отступы входят в этот счет).
Результат отсортирован по алфавиту.

4) Насчет проверки словарных правил "на лету". Вопрос назрел и давно. Сделать что-то вроде: ввести правило; выделить в тексте исследуемый фрагмент; и тутже увидеть как этот фрагмент выглядит, измененный по этому правилу.

Что касается редактирования словаря, вводя части правила в разные окошки, чтобы затем все это собиралось воедино в словаре... Я никогда не понимал: почему нельзя просто записать правило в словаре, так, как в обычном тексте добавляют новые строки.
Не забывать только ставить знак "=", разделяющий левую и правую части Smile
Если правую часть правила в словаре выделить и нажать Ctrl+C F9 - то услышим, как это звучит.

5) Множественные замены в быстром методе - реализованы давно. Пример:

антигравитация
анти'гра<вита<ция

Примененные правила (словарь Микеланджело):

$анти*=анти'
*ация*=а<ция
антиграв*=антигра<в

Сортировка правил - более сложная, чем в калассическом методе: правила, входящие в ОДНО СЛОВАРНОЕ ГНЕЗДО сортируются в порядке убывания длины. Словарное гнездо определяется ПЕРВЫМ словом в левой части правила, знаки препинания (если есть) - учитываются. Поэтому правила "все надоело=всё надоело" и "все, хватит!=всё, хватит!" попадут в разные словарные гнезда: ВСЕ и ВСЕ,

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

6) Про быстрое прослушиание при поиске имен - пока не готов ответить, просто не знаю что это такое, никогда этой опцией в Балаболке не пользовался Smile

7) Да, вместо "удалить переносы" логично сделать опцию "Форматирование текста" с соотв. субменю: убиение переносов, лишних пробелов и т.п.

-----

А теперь и у меня вопрос. Мы всё говорим о том, чего в программу добавить. А что бы из нее такое выкинуть, за ненадобностью? Wink

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Вт Авг 17 2010, 02:01
Вт Авг 17 2010, 02:01

flegont пишет:
Мы всё говорим о том, чего в программу добавить. А что бы из нее такое выкинуть, за ненадобностью?
Я за то, чтобы выкинуть опцию поддержки картинок!
Моё мнение однозначное и непокобел...непоколебимое, Smile картинки в тексте НЕ нужны!!!

Вернуться к началу Перейти вниз
Sekuka
Посетитель


Сообщений : 29
Репутация : 8

 Sekuka :: Вт Авг 17 2010, 09:55
Вт Авг 17 2010, 09:55

Если воплотить в жизнь пожелания evilone получится балаболка N2, а если evmir1 получится MP3book, или говорилка, бог знает какой номер.
А, что хочет разработчик, остается тайной за семью замками.

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Вт Авг 17 2010, 11:29
Вт Авг 17 2010, 11:29

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

у меня пока только поверхностное знание программы, поэтому возможно еще не до конца все плюсы и минусы понятны, однако уже видно что в программе есть много полезного и нового аналогов чему пока нету у других программ

по-моему сейчас самый большой недостаток программы это ее внешний вид точнее как сейчас модно говорить ее usability

очень неудобно расположены отдельные пункты меню, много лишних кнопок, многих нужных кнопок нет, отсутствие удобного открытия более одного файла и\или словаря
очень много непонятно и приходится по несколько раз перечитывать справку к программе, а ведь 99% пользователей вообще ничего не читают Smile если у них не получается они ищут что-то другое

в балаболке, в отличии от остальных программ, этот вопрос очень здорово реализован,
все интуитивно понятно, в справку почти заглядывать не хочется, только иногда и по самым "странным" вопросам Rolling Eyes

flegont пишет:
Насчет ini-словаря - честное слово, не знаю
имеется в виду словарь который поддерживает правила замены используя регулярные выражения как в балаболке

flegont пишет:
Поиск омографов и вообще чего угодно
теперь яснее, а может ли программа учитывать уже "готовые правила" при поиске новых чтобы не повторялись одни и те же результаты для разного текста?
например: есть список слов и список (словарь) замен с этими словами, нужно - найти выборку из текста только того чего нету в словаре и что содержит слова из списка слов

flegont пишет:
Что касается редактирования словаря, вводя части правила в разные окошки, чтобы затем все это собиралось воедино в словаре... Я никогда не понимал: почему нельзя просто записать правило в словаре, так, как в обычном тексте добавляют новые строки.
это как раз вариант для
flegont пишет:
проверки словарных правил "на лету"
просто с формами удобнее и логичнее это сделать в словаре, чтобы было под рукой и помогало при редактировании словаря

про сортировку имелось в виду если есть к примеру словарь:
2. $анти*=анти'
3. *ация*=а<ция
1. антиграв*=антигра<в

то после сортировки правила в нем переставятся так как если бы они применялись к тексту например: сначала к тексту применяется 1 потом 2 и потом 3, после сортировки будет:

1. антиграв*=антигра<в
2. $анти*=анти'
3. *ация*=а<ция

чтобы визуально была видна "очередь" замен

flegont пишет:
никогда этой опцией в Балаболке не пользовался
попробуйте "это вкусно, это очень вкусно" rulzz

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Вт Авг 17 2010, 17:16
Вт Авг 17 2010, 17:16

Sekuka пишет:
Цитата :
Если воплотить в жизнь пожелания evilone получится балаболка N2, а если evmir1 получится MP3book, или говорилка, бог знает какой номер.
Есть некая сермяжная правда в этих словах, есть... Smile Поэтому разработчик ВСЕ предложения фиксирует в балшом-балшом блакноте, но ожидать что кинется их все без исключения реализовывать, наверное не надо. Smile

Чего хотел разработчик? Иметь в распоряжении прогу-блокнот под свои нужды, более для него удобную, чем Блокнот виндовз. И тут случайно наткнулся в Сети на "Говорилку" А.Рязанова. Не может быть! Прога разговаривает?! ...А как это устроено? Попробовал разобраться... увлекся ненароком... вот. Wink

Открытие более одного файла и подключение более одного словаря - в перспективе будет Smile

Очередь замен показывать в их рельно выполненном порядке - да, надо сделать.

Поиск по списку с проверкой: есть ли уже это слово в словаре - можно сделать. И чтоб оба варианта поиска были доступны: искать все подряд и искать, исключая уже имеющиеся в словаре.

Просмотр картинок - да, безусловно, это лишнее Sad, но хосподи, как красиво!! И служит элементом пиара. Поэтому сохраняется в программе.

Насчет кнопок надо опрос провести: какие - лишние? Убрать недолго Smile



Вернуться к началу Перейти вниз
Sekuka
Посетитель


Сообщений : 29
Репутация : 8

 Sekuka :: Ср Авг 18 2010, 21:53
Ср Авг 18 2010, 21:53

В целом приоритеты здесь правильно обозначили.
Главные из них два пункта:
-Возможность использования множества словарей
-Возможность использовать словари на основе регулярных выражений
Причем, для того чтобы пользователи балаболки хотя бы попробовали программу, она должна работать со словарями аналогичным образом.
А для того, что бы она могла понравиться больше, можно добавить несколько изюминок, а именно регулярные выражения в Vbscript имеют бедный синтаксис. Я бы рекомендовал Perl. Плюс возможность использовать регулярные выражения не только в начале обработки но и в конце.
Хороший продуманный интерфейс, это конечно нужно. Но без обозначенного, вряд ли он кого-нибудь заинтересует.
С балаболкой соревноваться трудно, но можно. Другие программы просто аутсайдеры. И используются либо в силу привычки, либо крайне не требовательными пользователями.
-Готов ли разработчик закатать рукава и не спать ночами?
-Имеет ли концепцию и стратегию развития?
-Будет ли его программы переведена когда либо в разряд платных?
От этого будет зависеть и пользовательский отклик.

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Чт Авг 19 2010, 00:29
Чт Авг 19 2010, 00:29

Sekuka пишет:
От этого будет зависеть и пользовательский отклик.
Отклик зависит также от функциональных "изюминок". А их в последнее время появилось достаточно, для работы с текстом. Это опции; слова в столбик, табуляция-4 строки, сверхбыстрая замена любых символов, открытие и работа с огромными текстами, поддержка юникода и пр.
Автор работает, хотя летом нужно отдыхать!:beach:

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Чт Авг 19 2010, 17:01
Чт Авг 19 2010, 17:01

1) Единственность словаря - напрягает и самого автора, поэтому он работает над этой проблемой

2) Регулярные выражения - штука, посильнее "Фауста" Гете, но есть разные реализации компонентов для Дельфи по работе с РВ - надо внимательно разбираться. Сие - планы долгосрочные.

3) Касательно интерфейса - на вкус и цвет товарисчей нет. На сайте автора "Разное - Пожалейте свои глаза" есть подборка отзывов пользователей, там и про интефейс, и про отказ от Балаболки в пользу Демагога... - дело вкуса, короче.
Что не исключает, со временем, того или иного усовершенствования интерфейса.

4) Ни с кем автор не соревовался, не соревнуется и соревноваться не будет - неинтересно ему это. Но так уж вышло, что в рейтинге Софт-Майл-ру "Самые популярные программы 2009 года" у Демагога 3-е место в номинации "Текст" Wink

5) По ночам автор спит. А рукава засучивает разве что когда унитаз приходится чистить Smile

6) Концепция программы: минимализм. Отсюда и стратегия: "Лучше ничего не делать, чем сделать что-нибудь не то" (Параграф 1-й устава легионеров Римской империи)
Поэтому скороспелые, поспешные изменения / дополнения - недопустимы.

7) А задумывалось-то всё изначально, как упражнение для программеров на Дельфи - чисто для украшения сайта автора - не корысти ради, а прикола для. Отсюда, кстати, и открытый код

8/ Демагог - бесплатная программа, таковой и останется.

И не надо сравнивать Балаболку и Демагог, гармонь и грабли. Балаболка - более "мультимедийная", Демагог - все ж ближе к текстовым редакторам. С гаррмошкой неча делать в огороде, а с граблами за празничным столом.
Не будет никогда Демагог синхронно с проигрыванием МР3 показывать текст. Но чёртову "Парадигму по Зализняку" в 31 МБ весом окучил именно он... Smile

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Чт Авг 19 2010, 19:00
Чт Авг 19 2010, 19:00

flegont пишет:
Но чёртову "Парадигму по Зализняку" в 31 МБ весом окучил именно он... Smile
И сделал из неё конфетку!:crazy: Теперь с ней можно плотно работать.

Вернуться к началу Перейти вниз
Sekuka
Посетитель


Сообщений : 29
Репутация : 8

 Sekuka :: Чт Авг 19 2010, 22:32
Чт Авг 19 2010, 22:32

Для меня остается большой загадкой, зачем нужно в текстовом редакторе обрабатывать Зализняка. Примерно 20 строчек кода на языке высокого уровня. Открыть файл, отфильтровать, записать в файл. (и еще можно много чего сделать при этом). Таких словарей единицы. И под единицу вводить опцию в программу? Чисто академическая опция. Это так, критика. Раз уж критиковать можно.
А в остальном желаю успехов в развитии программы и конечно же новых находок. Спасибо за "быстрый" метод. Ради одного его стоило заниматься программой.

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Пт Авг 20 2010, 09:19
Пт Авг 20 2010, 09:19

Sekuka пишет:
Примерно 20 строчек кода на языке высокого уровня
Мне непонятна эта фраза.:botan:
Я не хочу Зализняка записывать в файл! Надо просто все слова из него вычитать, и труднопроизносимые исправить. И как это можно было сделать, если слова расположены в одну длииииинную строчку, разделённые запятыми и решёткой?! А ещё апострофы, которые также следует убрать, а то Алёна будет заикаться. Что уж тут говорить, если Notepad++ убирал только запятые (около 2500000) в течении 1ч. 15м.!
С Демагогом же, я удалил ВСЕ лишние символы за несколько минут!!!
А опция "Слова в столбик", чтобы открыть список с. в Экселе, и там уже фильтровать, сортировать и т.д.
Кстати, таких словарей хватает.
Может кому-то эта работа покажется бессмысленной, но Демагог реально облегчил мне задачу, и 19000 с. уже исправлено.
Присоединяюсь к словам благодарности Автору!




Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Пт Авг 20 2010, 10:24
Пт Авг 20 2010, 10:24

Цитата :
Для меня остается большой загадкой, зачем нужно в текстовом редакторе обрабатывать Зализняка. Примерно 20 строчек кода на языке высокого уровня.
Скажем так: не "нужно", а "можно" - т.к. прога быстро делает массовые замены в очень больших текстах.

Опция в столбик - не только для этого исключительного случая. В Балаболке и в Демагоге есть опция "сравнение файлов" - при этом ф-лы сравниваются построчно.
Бывает, требуется сравнить файлы "по словам" - и... как быть? Приз в студию: расположить слова обоих файлов в столбик и сравнивать.

Насчет 20 строчек кода - совершенно верно отмечно. (Примерно таков размер скрипта на Питоне - отладка заняла полчаса).
Но, далеко не каждый человек - программист, хотя бы средней руки... Smile

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

Вернуться к началу Перейти вниз
Sekuka
Посетитель


Сообщений : 29
Репутация : 8

 Sekuka :: Пт Авг 20 2010, 11:23
Пт Авг 20 2010, 11:23

evmir1
http://ru.wikipedia.org/wiki/Высокоуровневый_язык_программирования

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Пт Авг 20 2010, 18:30
Пт Авг 20 2010, 18:30

Sekuka пишет:
http://ru.wikipedia.org/wiki/Высокоуровневый_язык_программирования
Дякую.

Вернуться к началу Перейти вниз
Sekuka
Посетитель


Сообщений : 29
Репутация : 8

 Sekuka :: Ср Сен 01 2010, 14:51
Ср Сен 01 2010, 14:51


Очень позитивные последние изменения. Это наверное полная совместимость с PCRE. А можно еще одно?
Добавление OLE Automation для обработки текста словарями из текстового файла в файл, сделает программу просто незаменимой.
Можно, хотя это и значительно хуже, добавить использование из командной строки.
Ну и добавление таких же опций на конвертацию в звук, чуть позже. Надо ж сначала погонять словари.

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Ср Сен 01 2010, 17:10
Ср Сен 01 2010, 17:10

Насчет полной совместимости с PCRE со всей решимостью утверждать не берусь, но был использован компонент (с кой-какими поправками), позиционируемый, как подмножество регулярных выражений языка Perl.

Добавление OLE Automation - оч. интересная идея на будущее.

Пока ограничусь тестированием уже сделанного (и поправками, ежли возникнет необходимость) - бо катастрофическая нехватка времени... Sad

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Ср Сен 01 2010, 17:18
Ср Сен 01 2010, 17:18

Поддержка INI-словарей - отличная реализация! Автору большой плюс.

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Ср Сен 01 2010, 21:51
Ср Сен 01 2010, 21:51

flegont пишет:
Насчет полной совместимости с PCRE со всей решимостью утверждать не берусь, но был использован компонент (с кой-какими поправками), позиционируемый, как подмножество регулярных выражений языка Perl.
Взяли компонент Андрея Сорокина TRegExpr и дописали русские буквы в константу RegExprWordChars? Smile

Сложно сказать, правильное это решение проблемы или нет; тоже думал над этим, но к окончательному выводу так и не пришел. Не знаю, почему VBScript, компоненты и библиотеки для работы с регулярными выражениями не считают буквы национальных алфавитов за буквы. Возможно, в этом есть какой-то смысл.

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Ср Сен 01 2010, 21:58
Ср Сен 01 2010, 21:58

Цитата :
Взяли компонент Андрея Сорокина TRegExpr и дописали русские буквы в константу RegExprWordChars?
Совершенно верно. Проверил - работает. Кроме того, после создания объекта сделал ему ModifierR := False, ибо эта хитрость с помещением букв Ёё в общий диапазон - вызывает у меня (мягко говоря) подозрения. Лучше уж указывать, как все привыкли [А-яЁё] - тогда все гарантированно ОК.

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Чт Сен 02 2010, 03:26
Чт Сен 02 2010, 03:26

Проверил некоторые INI-словари с этого форума - есть отличия между VBScript и TRegExpr. Например, в таком правиле (из словаря Романько для единиц Си):

Код:
@(\d*[02-9]|\D|^)1-(ого|ому|ом|ым|ых|ое|ая|ую|ый|ой)([^А-яЁё\-]|$)=<дес$10> пЕрв$2 $3

VBScript трактует запись "$10" как "$ один и ноль", а TRegExpr - как "$ десять". То есть, какие-то из правил в существующих словарях могут перестать работать. Sad

Я готов перейти на использование TRegExpr - чтобы обеспечить единый способ обработки правил INI-словарей во всех программах; но составителям словарей придется протестировать свои списки правил.

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Чт Сен 02 2010, 06:52
Чт Сен 02 2010, 06:52

Да, я тоже заметил небольшие отличия в применении правил, экспериментируя со словарями в Балаболке и Демагоге. В итоге решил, что это не смертельно, т.к. единого совсем уж общепринятого стандарта РВ все равно не существует.
Ну, а TRegExpr предпочел из-за открытости текста, небольшого размера и некоторой, скажем так, относительной проверенности временем.
Например, в известном файловом менеджере Total Commander есть поиск по РВ и реализован он через TRegExpr Smile

Вернуться к началу Перейти вниз
Lexus
Эксперт
avatar


Сообщений : 408
Репутация : 32

 Lexus :: Чт Сен 02 2010, 12:23
Чт Сен 02 2010, 12:23

Цитата :
Не знаю, почему VBScript, компоненты и библиотеки для работы с регулярными выражениями не считают буквы национальных алфавитов за буквы. Возможно, в этом есть какой-то смысл.
Смысла, в этом однозначно нет. Это всего лишь недоработка, одна из многих.
PCRE (Perl Compatible Regular Expressions) http://ru.wikipedia.org/wiki/Pcre
Я бы советовал использовать для проверки правильности применения регулярных выражений программы совместимые с этим стандартом. Одна из них - редактор Edit Pad Pro начиная с 6-й версии.
Там корректно обрабатываются русские буквы. И не только. Полная совместимость со стандартом это и возможность использования заглядывания вперед и прочих штучек, чего начисто решен бедный синтаксис Vbscript.
Но в балаболке лучше не сразу отказываться от Vbscript, а постепенно. Дав возможность в начальном периоде выбирать из вариантов применения RE.
Это нужно, для выявления возможных ошибок компонента и приведения словарей к общему знаменателю.

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Чт Сен 09 2010, 15:10
Чт Сен 09 2010, 15:10

а будет ли в программе поддержка старого метода применения правил замены "говорилка" для поддержки старых словарей и если да то можно ли будет сделать какой-то "переключатель" для словарей чтобы можно было использовать за один проход два вида словарей для быстрого и стандартного методов, например сделав в словаре какую-то загогулину вида:
Код:
# STANDART
правила для стандартного метода
# FAST
правила для быстрого метода
# INI
правила - регулярные выражения
или как-то в настройках самой программы на панели словарей?

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Чт Сен 09 2010, 16:36
Чт Сен 09 2010, 16:36

Цитата :
а будет ли в программе поддержка старого метода
Я когда-то подумывал об этом, к определенному выводу так и не пришел, но все же мое мнение несколько ближе к "нет", чем к "да" Smile

Цитата :
использовать за один проход два вида словарей для быстрого и стандартного
Нет, это невозможно, поскольку в обоих случаях проходы выполняются в абсолютно разном порядке. Для классического метода - проход правилам словаря с поиском совпадений в тексте; для быстрого метода - проход по словам текста с поиском совпадений в словарной хеш-таблице.
Теоретически можно было бы объединять в одном словаре правила для классического метода и для ini - здесь проход идет в обоих случаях по правилам из словаря с поиском совпадений в тексте.

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Чт Сен 09 2010, 18:42
Чт Сен 09 2010, 18:42

flegont пишет:
Нет, это невозможно, поскольку в обоих случаях проходы выполняются в абсолютно разном порядке.
да, нет имелось в виду не одновременно а просто по одному нажатию Smile т.е. чтобы сначала одним а потом сразу вторым но с учетом изменений по первому, чтобы можно было подключать два словаря и слушать текст "на лету" и не мучатся с переключением между одним и вторым и третьим и...

flegont пишет:
мое мнение несколько ближе к "нет"
:46:жаль, еще много консерваторов не до конца решили перейти на новый метод, как и на новый голос, кстати rulzz

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Чт Сен 09 2010, 19:07
Чт Сен 09 2010, 19:07

Теперь я понял... Но по каласическому и быстрому методу результаты замен совпадают больше чем на 99% - стОит ли ради оставшейся ничтожной доли гонять один за другим 2 словаря, тем более что классич. метод жутко медленный и "на лету" эти тормоза будут оч. явными.
Ну, а над включением классического метода, как запасного варианта... можбыть как-нибудь соберусь подумать Smile

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Пт Дек 31 2010, 11:58
Пт Дек 31 2010, 11:58

Ситуация с INI-словарями

В силу неких веских причин, пользователь выполнил опцию Windows,"Восстановление системы".
Система при этом "откатилась" к состоянию, допустим, недельной давности.
И тут пользователь с неприятным удивлением обнаружил, что все его, любовно и тщательно правленные INI-словари также "восстановились" к виду недельной давности.
Потому что система сочла файлы *.ini "своими", настроечными и включила их в список восстанавливаемых.

У кого какие по этому поводу мнения?

Первое, что приходит в голову, это последовать примеру создателя DIC-словарей, давшему им "мнемонический" тип от слова DICtionary - "словарь".

Вот вариант: REX, от слов REgular eXpressions - "регулярные выражения".

Заодно, Rex означает "король", король словарей, самое мощное средство предварительной обработки текста.

Wink

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Вс Янв 02 2011, 18:48
Вс Янв 02 2011, 18:48

flegont пишет:
Вот вариант: REX, от слов REgular eXpressions - "регулярные выражения".
Я не против, в этом предложении есть смысл. В принципе, можно сделать так, чтобы программы считывали правила как из INI-файлов, так и из REX-файлов (чтобы облегчить "переход" от одного расширения файлов к другому).

Если пользователи поддержат эту инициативу, то можно реализовать. Но если им всё равно, если расширение INI их устраивает, то не вижу насущной необходимости самим что-то менять.

Расширение INI досталось программе "Балаболке" по наследству от одной немецкой программы для чтения вслух: пользователи из Германии ссылались на нее и просили добавить поддержку VBScript. Эта немецкая программа больше не существует, так что ни одна иностранная TTS программа больше не использует правила в INI-словарях.

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Вс Янв 02 2011, 21:00
Вс Янв 02 2011, 21:00

balabolka пишет:
Если пользователи поддержат эту инициативу, то можно реализовать.
Я по сути 1-й пользователь, поддерживающий данную идею. Это у меня произошло чудо - восстановление INI-словаря!Sad

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Вс Янв 02 2011, 22:42
Вс Янв 02 2011, 22:42

Возможный вариант: программа, встретив среди словарей файл *.ini, автоматом переименовыает его *.rex, (может быть, выдав пользователю сообщение, для информации...) Очень скоро у пользователей все ini-словари станут rex-словарями.


Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Пт Янв 07 2011, 23:18
Пт Янв 07 2011, 23:18

flegont пишет:
Очень скоро у пользователей все ini-словари станут rex-словарями.
это все конечно очень здорово, и кому-то очень нужно, наверно, но когда же появится возможность пользоваться стандартным методом замен в программе? :musicwhisper:

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Сб Янв 08 2011, 10:26
Сб Янв 08 2011, 10:26

Это - важный политический вопрос, товарищи.

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

В свое время на этом высоком форуме Илья высказывался в том смысле, что в будущем стандартный метод будет исключен из "Балаболки".
Можем ли мы с вами, товарищи, сходу игнорировать и это мнение?

Поэтому вопрос требует дальнейшей проработки с привлечением к обсуждению широких трудящихся масс.

Wink

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Сб Янв 08 2011, 19:10
Сб Янв 08 2011, 19:10

flegont пишет:
Можем ли мы проявить непоследовательность и развернуть теперь нашу стратегию на 180 градусов
ну речь не про замену а только про добавление по выбору пользователя, это пока единственное что отталкивает от использования программы - быстрый метод, как показала практика, не везде удачное решение, поэтому было бы здорово оставить выбор пользователю и ничего ему не навязывать.

flegont пишет:
В свое время на этом высоком форуме Илья высказывался в том смысле, что в будущем стандартный метод будет исключен из "Балаболки"
в любом случае последнее слово всегда за разработчиком, поэтому что-то загадывать наперед смысла наверно нет?

сначала долгий путь доведения до ума быстрого метода (как долго просили добавить замену слова звездочкой), потом отказ от поддержки VBScript, осталось только убрать стандартный метод наверно Rolling Eyes

хотя мне кажется, если у вас появится что-то новое, интересное и полезное то это, возможно, появится и у "Балаболки", как это было с компонентом для ini-словарей Wink

Вернуться к началу Перейти вниз
Sekuka
Посетитель


Сообщений : 29
Репутация : 8

 Sekuka :: Пн Янв 10 2011, 10:00
Пн Янв 10 2011, 10:00

Вот уж не раз пожалел, и посыпаю голову пеплом, за свое необдуманное предложение ввести в программу PCRE обработку регулярных выражений.
К Демагогу претензий собственно нет. Но то, как это отразилось на балаболке, оттолкнуло от нее не одного пользователя.
Не то, чтобы новый метод плох. Он просто новый и работает не всегда предсказуемо.
Каждое протестированное ранее правило, нужно проверять снова. Зачем пользователю эта дополнительная работа?
Нужно не навязывать улучшения насильно, а предлагать методы, на которые пользователь сам будет иметь горячее желание перейти.
P.S. Не добавляйте больше таких новых опций.

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Пн Янв 10 2011, 11:36
Пн Янв 10 2011, 11:36

Sekuka пишет:
P.S. Не добавляйте больше таких новых опций.
Автор вправе добавлять любые опции, какие пожелает - на то он и автор! Вы же не будете обвинять Л. Толстого за то, что он убил князя Болконского.rulzz
Просто не читайте "Войну и мир".

Вернуться к началу Перейти вниз
Sekuka
Посетитель


Сообщений : 29
Репутация : 8

 Sekuka :: Пн Янв 10 2011, 16:57
Пн Янв 10 2011, 16:57

Здесь более уместна аналогия с Анной Корениной, которую поезд переехал, из-за обманутой любви.

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Пн Янв 10 2011, 18:27
Пн Янв 10 2011, 18:27

Sekuka пишет:
Вот уж не раз пожалел, и посыпаю голову пеплом, за свое необдуманное предложение ввести в программу PCRE обработку регулярных выражений.
ВЫ предложили?! То есть, это не мы с Региной Мюллер из Франкфурта-на-Майне пять года назад решили добавить в программу поддержку регулярных выражений, а это была ВАША идея?! Обалдеть!

При переходе с VBScript на новый компонент "всплыла" лишь одна проблема с выражениями вида "$10", и эта проблема была решена совместными усилиями в течение недели. Других различий в синтаксисе что-то не припомню, так что не надо преувеличивать серьезность проблем, возникающих при последних изменениях программ.

Но я согласен, что менять существующий механизм применения правил не стоит. Два вида словарей вполне достаточно для решения самого широкого круга задач.

Конечно, было бы неплохо разработать какой-нибудь универсальный формат словарей, по примеру TextAloud - где для каждого отдельного правила можно выбирать, является ли его шаблон регулярным выражением, маской или обычным текстом, где каждое правило привязывается к конкретному голосу, производителю голосов, языку или диалекту языка. Но результатом использования такого словаря является то, что после начала чтения программа "задумывается" на минуту, деля текст на части и применяя правила. То есть, я хочу сказать, что нет идеального решения, так что приходится "нащупывать" приемлемый вариант, идя на компромиссы.

Вернуться к началу Перейти вниз
Sekuka
Посетитель


Сообщений : 29
Репутация : 8

 Sekuka :: Пн Янв 10 2011, 20:44
Пн Янв 10 2011, 20:44

Цитата :
ВЫ предложили?! То есть, это не мы с Региной Мюллер из Франкфурта-на-Майне пять года назад решили добавить в программу поддержку регулярных выражений, а это была ВАША идея?! Обалдеть!
Если почитать немного выше данную тему, относящуюся к развитию программы Демагог, то можно заметить следующее высказывание:

Цитата :
В целом приоритеты здесь правильно обозначили.
Главные из них два пункта:
-Возможность использования множества словарей
-Возможность использовать словари на основе регулярных выражений
Причем, для того чтобы пользователи балаболки хотя бы попробовали программу, она должна работать со словарями аналогичным образом.
А для того, что бы она могла понравиться больше, можно добавить несколько изюминок, а именно регулярные выражения в Vbscript имеют бедный синтаксис. Я бы рекомендовал Perl.
Конечно, еще ранее и evilone в этой же теме высказалась в том же духе:
Цитата :
подскажите пожалуйста когда будет и будет ли поддержка более одного словаря а так же ini-словаря в программе а то уже как в говорилке сделали так к этому и привыкли
Возможно появление в программе Демагог компонента по обработке словарей с использованием регулярных выражений, а потом и в Вашей программе, указывающего на Перл-совместимость всего лишь случайность. Готов принести свои извинения за излишнее самомнение.
Но скорее всего Вы немного поспешили с осуждением.

Вернуться к началу Перейти вниз
Андрей28
Участник


Сообщений : 74
Репутация : 8

 Андрей28 :: Чт Янв 13 2011, 00:05
Чт Янв 13 2011, 00:05

Есть мысли. Позвольте выскажу…
Прямой перебор - долго и некрасиво (с точки зрения программиста) - слов нет.
Ваш алгоритм - быстр, но оставляет много вопросов по применению правил, которые накладываются друг на друга.
Положение, по которому правила располагаются соответственно их длине - может оказаться - совсем не правильным и отличаться от мыслей автора правил. Да и поиск ошибочных влияний нескольких правил осложнен, а устранение - может оказаться невозможным.

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

Все правила, попавшие в словарное гнездо, должны быть применены в порядке следования в словаре замен. И на эти правила, найденные в хеш-таблице, должен распространяться прямой перебор.

Потеря скорости? Конечно. Но не нужно постоянно бежать быстрее стрелы, чтобы ее поймать. Нужно бежать и на одной с ней скорости, чтобы ее схватить.

Вернуться к началу Перейти вниз
Андрей28
Участник


Сообщений : 74
Репутация : 8

 Андрей28 :: Чт Янв 13 2011, 00:55
Чт Янв 13 2011, 00:55

evilone_ пишет:
про сортировку если я все правильно понимаю, а может и нет , быстрый метод замен не применяет правило к одному и тому же слову дважды? сортировка словаря делается с учетом очередности применения правил или просто по алфавиту длине и т.п.?
было бы удобно видеть после сортировки последовательность правил как они будут применятся к тексту по убыванию или по возрастанию (т.е. какое будет первым или какое будет последним) ну и чтобы вернуть как было можно конечно

flegont пишет:
Сортировка правил - более сложная, чем в калассическом методе: правила, входящие в ОДНО СЛОВАРНОЕ ГНЕЗДО сортируются в порядке убывания длины. Словарное гнездо определяется ПЕРВЫМ словом в левой части правила, знаки препинания (если есть) - учитываются. Поэтому правила "все надоело=всё надоело" и "все, хватит!=всё, хватит!" попадут в разные словарные гнезда: ВСЕ и ВСЕ,


Мое сообщение выше - было написано по мыслям, после чтения вашего сайта.
Не сразу заметил, что эти мысли - уже были здесь.

Вот о чем я подумал:
я всегда относился к запятой - как к слову, состоящему из одной буквы. А вы ее прибавляете к слову, получая два разных слова. Но по сути своей слово, с которого начинаются эти два правила ("все надоело=всё надоело" и "все, хватит!=всё, хватит!") - остается - одно.
И проблема будет решена, если знаки препинания рассматривать, как слова.

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Чт Янв 13 2011, 01:20
Чт Янв 13 2011, 01:20

Андрей28 пишет:
я всегда относился к запятой - как к слову, состоящему из одной буквы. А вы ее прибавляете к слову, получая два разных слова.
Иногда запятая очень важна, сравните:
все пошли домой=все пошли домой
все, пошли домой=всё, пошли домой
Smile
Русский язык - мощная штука!

Вернуться к началу Перейти вниз
Андрей28
Участник


Сообщений : 74
Репутация : 8

 Андрей28 :: Чт Янв 13 2011, 01:28
Чт Янв 13 2011, 01:28

evmir1 пишет:
Иногда запятая очень важна, сравните:
все пошли домой=все пошли домой
все, пошли домой=всё, пошли домой
Русский язык - мощная штука!

Я ничего не писал про "не важность запятой".

Спасибо за сказку на ночь "Казнить нельзя помиловать"

Андрей28 пишет:
И проблема будет решена, если знаки препинания рассматривать, как слова.

Нет, ошибся я. Это - просто мысли и они не решат проблемы, поскольку к слову "все" без запятой при методе переборки не будут применены оба этих правила. (точно так-же, как и в вашем)

Проблема - в другом. При фразе в тексте: "хватит болтать", сначала будут применены правила из гнезда "ХВАТИТ", а потом из "БОЛТАТЬ". И это не поправить простым изменением очереди в гнезде.

Вернуться к началу Перейти вниз
Спонсируемый контент




 Спонсируемый контент ::


Вернуться к началу Перейти вниз

Критика и предложения

Предыдущая тема Следующая тема Вернуться к началу
Критика и предложения
Страница 1 из 4Страница 1 из 4На страницу : 1, 2, 3, 4  Следующий
Этот сайт не предоставляет электронные версии программного обеспечения и полнотекстовых электронных изданий, а занимается лишь
подборкой и каталогизацией ссылок, присылаемых и публикуемых на форуме нашими читателями.

Создать форум | ©phpBB | Бесплатный форум поддержки | Сообщить о нарушении
Создать форум | © phpBB | Бесплатный форум поддержки | Сообщить о нарушении | Создать свой блог