Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » GoldenDict (часть 2)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175

Открыть новую тему     Написать ответ в эту тему

Maz



Дед Мазай
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Предыдущее обсуждение: Часть 1




 
Актуальная версия 1.5.0:
Windоws Qt 4.8.6 или Qt 5.12.3, последний EXE-файл: 1.5.0-18-g59363bc9.
Плагин dsengine.dll для Qt 5.6-based версии на Windows XP: dsengine_5.6.1_for_XP.7z
как собрать актуальный рабочий комплект для windows (без словарей)
MacOSX 1.5.0-18-g59363bc9 Intel; архив прежних версий: на github (09.2012–04.2019), на sourceforge (06.2016–04.2019)
 
Расширенная настройка интерфейса
 
GoldenDict — новая словарная программа, обладающая следующими особенностями:  
 
  • Графический интерфейс на основе табов, для создания которого использована библиотека Qt;
  • Интеграция с html-движком WebKit для корректного представления материалов в html-формате;
  • Поддержка подключения словарей в форматах: Babylon (.bgl/.gls), StarDict (.ifo/.dict./.idx/.syn), Dictd (.index/.dict), ABBYY Lingvo (.dsl тексты и аудиоматериалы .lsa/.dat, .lsd - только в Android), XDXF, AARD, SLOB, ZIM, MDX/MDD, EPWING;
  • Система морфологии, которая находит основы слов при поиске, улучшая его результаты, а также дает рекомендации по правильному написанию слов. Используются обычные словари Hunspell/Myspell;
  • Поддержка индексации звуковых файлов в директориях, формируя из них словари аудио-произношений;
  • Поддержка отправки запросов в Wikipedia, Wiktionary и другие MediaWiki сайты;
  • Режим работы в роли глобальной для всего десктопа всплывающей подсказки, позволяющий выводить информацию для выделенного или помещенного в буфер обмена слова из любого текста внешней программы;
  • Для загрузки доступна версия, имеющая в комплекте набор англо-русско-английских словарей, словарей морфологии и примеры произношения слов на английском языке.  
     
    Программа позиционируется как функциональная замена StarDict, поддерживающая большее количество форматов файлов и более качественное их отображение. Программа умышленно не вводит собственного формата файлов, ставя вместо этого задачу наиболее полно поддержать все популярные существующие.
     
    Официальные Early Access билды для Windоws :: для MacOSX :: для Linux.
    Официальные Development билды для Windоws.
    Официальный форум поддержки GoldenDict.
    Официальный баг-трэкер.
     
    Параллельные топики:
    GoldenDict - New Level - Разработка новых форматов словарей для GD: DSLGD, HTMLGD; подключение речевых движков; режим закладок; варианты полнотекстового поиска.
     
    Как сжимать словари в формат .dz для использования в GoldenDict :: DictZip 1.12.1 (latest) :: Оболочка DictUI
     
    Ссылки на готовые сборки
     
    Ссылки на словари для GoldenDict

  • Всего записей: 38836 | Зарегистр. 26-02-2002 | Отправлено: 11:50 23-02-2017 | Исправлено: yozhic, 22:10 16-03-2024
    Romul81



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
     
    https://stackoverflow.com/a/1732454/8043447
     
    Хотя, здесь даже не парсинг, а просто удаление тегов.
     
    P.S. А вообще, мне кажется, ничего тут не сделаешь. И на надо, наверное. Составители конвертировщики словарей сами должны думать о подобных вещах. И вообще, в HTML есть такое понятие как "санитизация". Если б она была осуществлена до компиляции словаря, то таких проблем бы не было.

    Всего записей: 1327 | Зарегистр. 03-03-2008 | Отправлено: 22:53 06-06-2017 | Исправлено: Romul81, 23:08 06-06-2017
    andreyefgs



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ^^^
    Посмеялся:

    Цитата:
    Even Jon Skeet cannot parse HTML using regular expressions

    Не зная кто это такой, наверное какой-то крутой хакер
    Но в целом верно.
     
     

    Всего записей: 1533 | Зарегистр. 16-10-2005 | Отправлено: 23:08 06-06-2017
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Romul81
    Ну и ладно. Тем более, что, хоть слипшиеся слова и не найдутся в режиме "Слова точно", всё можно найти в режиме "Простой текст".

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 23:10 06-06-2017
    toti794

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    gerxer
     
    У меня на лету:
    В левой (так мне удобнее) части монитора (где то 1/4 ширины) открыт АкелПад с словарем в ДСЛ формате. В остальной части ширины монитора сидит окрыт ГД (ну солидный он в ширине).
    Работаю в общем так. Редактирую в Акелом, над каким то словом, потом обязательно САВЕ (Сейф - без закрытия Акела). Потом КТРЛ+Ф5 в ГД, потом заголовок в ГД, перемещаемся на нужный словарь, смотрим что получилось.
    Потом опять (если нужно) редакция в Акел и так далее.
    Тоест у меня в текущии момент имеются открытыми и редактор (где можно делать редакции) и словарь (где можно посмотреть резултат) одновременно.
     
     
    Я забыл уточнить. Я !ЧАЙНИК! в области программирования.

    Всего записей: 7 | Зарегистр. 30-04-2017 | Отправлено: 23:20 06-06-2017 | Исправлено: toti794, 23:30 06-06-2017
    Romul81



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
    Сейчас проверил приведённый пример с javascript node.textContent. Результат - "languagetext-to-speech providing a variety of voices and accents". Так что косяк именно в HTML-коде.
     
    andreyefgs
    А мне понравилось:

    Цитата:
    ...the unholy child weeps the blood of virgins, and Russian hackers pwn your webapp.

    pwn
     
    Добавлено:
    Ну и в качестве эпилога. Вот код из OALD9:
    html
    Как видно, пробелы в нужных местах присутствуют. Если чуть поразмыслить, то можно понять, откуда растут ноги у подобных косячных моментов, как в словарях, процитированных ramanuki. Сграбленный веб-контент, как правило, отфоматирован как pretty-print в плане организации кода. Между спанами в таких случаях любое кол-во whitespace рендерится как один пробел, и текст, соответственно, не склеивается. Но для того, чтоб исходник сконвертировать в словарь, помимо всего прочего, код нужно "схлопнуть" в одну линию. И тут, если это сделать неаккуратно, и могут произойти подобные казусы. Один из правильных вариантов (и, вероятно, самый простой), это пропустить контент через упомянутый Nodereplacer и модуль Cheerio с опцией normalizeWhitespace: true. На выходе - искомый результат. И не надо мучаться с регулярками.

    Всего записей: 1327 | Зарегистр. 03-03-2008 | Отправлено: 23:23 06-06-2017 | Исправлено: Romul81, 23:44 06-06-2017
    ramanuki



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
    Какая-то странная ситуация у меня складывается - не могу понять причины, почему в следующей карточке FTS не может найти слово "miniscule" в группе En-Ru, сформированной в режиме "Авто группы" (не будем обращать внимания на ошибки в карточке):
     
    on the take
        [m2][*][ex][lang id=1033]The cops on the take never complain about miniscule salaries.[/lang] — Копы, который берут взятки, на маленькую зарплату никогда не жалуются.[/ex][/*][/m]
     
    Другие слова из того же предложения находятся, а miniscule - нет. Почему-то, чтобы его найти надо поменять в заголовке предлог "on" или написание самого слова "miniscule". А иначе ни один режим поиска не находит это слово в этой карточке.
     
    Может, подскажете, где тут собака порылась?

    Всего записей: 805 | Зарегистр. 07-08-2013 | Отправлено: 12:11 08-06-2017 | Исправлено: ramanuki, 12:15 08-06-2017
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ramanuki
    Хм. Скопировал ваш пример, воткнул в тестовый словарик - всё нашлось как положено.

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 13:14 08-06-2017
    data man



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    И вообще, в HTML есть такое понятие как "санитизация".

    Для этой цели рекомендую HTML Tidy (вдруг кто не знает . Хотя, как минимум для Notepad++, есть плагин на основе этой библиотеки).
    Тут свежесобранный положил.

    Цитата:

    Цитата:
    Even Jon Skeet cannot parse HTML using regular expressions
    Не зная кто это такой, наверное какой-то крутой хакер

    Это крутой сотрудник Гугл.
    Анфас / Профиль

    ----------
    Любой достаточно развитый тролль неотличим от подлинно помешанного на какой-либо идее.
    Кекс. Антибиотики. Ламбада.

    Всего записей: 1696 | Зарегистр. 13-10-2005 | Отправлено: 13:22 08-06-2017 | Исправлено: data man, 13:23 08-06-2017
    ramanuki



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
    У меня в группе Все находит, а в автосформированной группе En-Ru - нет.
     
    Закрыл основной свой ГД, установил дополнительно портабельную иную, 32-б. версию. Там ищет и находит по-всякому.
     
    Повторил поиск на основном ГД - нет. Соседние слова из того же предложения - ищутся. Сделал еще одну такую же карточку под другим заголовком - в ней ищется. Меняю написание слова "miniscule" - ищется. Меняю заголовок - ищется. Создал новую группу вручную и засунул туда словарь - ищется. Даже не закрывая окно FTS, меняю группу на En-Ru и повторяю поиск - нет. Чтобы лишний раз убедиться, ищу соседние слова из того же предложения - ищутся.  
     
    Непонятно, что может влиять на такое странное поведение...

    Всего записей: 805 | Зарегистр. 07-08-2013 | Отправлено: 14:25 08-06-2017 | Исправлено: ramanuki, 14:26 08-06-2017
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ramanuki
    Очень странно. Чтобы результат поиска конкретного слова (при том, что соседние ищутся) зависел от группы, в которой находится словарь... У вас там дубли словарей не водятся случаем? Кстати, а в логе ничего интересного нет?

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 14:41 08-06-2017
    ramanuki



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
    В логе ничего интересного нет. Впрочем и неинтересного там особо ничего нет. Дубля словаря полного нет.
     
    Нашел пока траблмейкера - им оказался словарь, результаты поиска в котором, похоже, попадая в окно FTS, блокируют это самый miniscule. Им оказался Cambridge En-Ru DSL-словарь. Если его отключить, то слово miniscule уже ищется, и наоборот - если включить, нет. Сейчас поковыряюсь в нем, проверю на ошибки.
     
    Добавлено:
    Ошибок в этом словаре не оказалось, только предупреждения о подвешенных ссылках.
     
    Причиной сбоя служат заголовки (в карточках которых была ссылка на слово miniscule), обрамленные с обеих сторон прямыми кавычками. По какой-то причине именно они блокируют вывод найденного в другом словаре слова. Я временно удалил кавычки (по задумке они нужны, так как ссылки на эти заголовки содержат кавычки), и  нормальный поиск восстановился. (На всякий случай сообщаю, что карточки состояли полностью из ссылок.)
     
    Примерно сымитировал ошибку на тестовом словарике - это она, повторяется, хотя и в другом виде - блокировка распространилась на карточку уже не в другом, а в своем словаре. Одним словом, на мой затуманенный взгляд, это что-то связанное с кавычками и ссылками в механизме ПТП.

    Всего записей: 805 | Зарегистр. 07-08-2013 | Отправлено: 14:54 08-06-2017 | Исправлено: ramanuki, 15:43 08-06-2017
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ramanuki
    Так если у вас уже есть тестовые словарики, на которых глюк воспроизводится, давайте их, будем посмотреть.

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 15:56 08-06-2017
    ramanuki



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
    Возьмите, если будет непонятно, я подскажу, как вызвать ошибку.
     
    Для начала попробуйте посмотреть результаты ПТП слова "miniscule" при включенном и выключенном словаре "Cambridge".

    Всего записей: 805 | Зарегистр. 07-08-2013 | Отправлено: 16:14 08-06-2017 | Исправлено: ramanuki, 16:17 08-06-2017
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ramanuki
    Посмотрел - находит обе статьи в Test. Что при включённом Cambridge, что при выключенном.

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 16:38 08-06-2017
    ramanuki



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
    А в окне ПТП у вас присутствуют заголовки "Small" и "Extremely small"? Или только "heading 5" и "on the take"? Или есть и те, и другие?
     
    Добавлено:
    У меня так (в группе En-Ru):  
    Cambridge отключен:
       
     
    Cambridge включен:
       
     
    Всё, что делалось между картинками выше, - включался словарь Cambridge и повторялся ПТП. В выдаче - совсем другие результаты.

    Всего записей: 805 | Зарегистр. 07-08-2013 | Отправлено: 16:53 08-06-2017 | Исправлено: ramanuki, 17:02 08-06-2017
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ramanuki

    Цитата:
    А в окне ПТП у вас присутствуют заголовки "Small" и "Extremely small"?  

    Нет.

    Цитата:
    Или только "heading 5" и "on the take"?

    И "miniscule", когда включён Cambridge. А у вас откуда заголовок "miniscule" в Test?

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 17:06 08-06-2017
    ramanuki



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62

    Цитата:
    Нет.

    А внутри этих карточек ("Small" и "Extremely small") из Cambridge  есть miniscule в виде ссылки. Если я не ошибаюсь, ссылки участвуют в ПТП и должны выводиться?
     

    Цитата:
    А у вас откуда заголовок "miniscule" в Test?

    На эти "miniscule" / "minuscule" не обращайте внимания (они не из Test), там есть из Cambridge и др. словарей (я их не отключал).
     
     
     

    Всего записей: 805 | Зарегистр. 07-08-2013 | Отправлено: 17:12 08-06-2017 | Исправлено: ramanuki, 17:15 08-06-2017
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ramanuki
    Разобрался. Криво сортировались заголовки в кавычках, остальное следствие.
    Вот, пробуйте - goldendict-1.5.0-RC2-130-g3adc5c0(EXE only).7z.

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 19:48 08-06-2017
    ramanuki



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62

    Цитата:
    Вот, пробуйте - goldendict-1.5.0-RC2-130-g3adc5c0(EXE only).7z.

    Спасибо! Сейчас всё хорошо ищет. Мне даже показалось, что и быстрее.

    Всего записей: 805 | Зарегистр. 07-08-2013 | Отправлено: 20:14 08-06-2017
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ramanuki

    Цитата:
    Мне даже показалось, что и быстрее.

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

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 20:17 08-06-2017
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175

    Компьютерный форум Ru.Board » Компьютеры » Программы » GoldenDict (часть 2)


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru