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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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

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



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
    Благодарю за информацию.
     
    Хотел было еще задать вопрос (по предыдущей версии):  
     
    ====
    В  моей папке со словарем отсутствует папка с картинками ("Ru-Ru Музыкальная энциклопедия.dsl.files"), но почему при одной и той же по сути ошибке:
     
    Warning: DSL: Failed loading resource "4.jpg" for "Музыкальная энциклопедия (Ru-Ru)", reason: Can't open C:\Users\...\Музыкальная энциклопедия\Ru-Ru Музыкальная энциклопедия.dsl.files\4.jpg: No error
     
    Warning: DSL: Failed loading resource "2.jpg" for "Музыкальная энциклопедия (Ru-Ru)", reason: Can't open C:\Users\...\Музыкальная энциклопедия\Ru-Ru Музыкальная энциклопедия.dsl.files\2.jpg: Invalid argument
     
    предупреждение идет то как "No error", то как  "Invalid argument"?
    ===
     
    перепроверил в новой версии - та же ошибка выдала только варианты "Invalid argument".
     
    С одной стороны, вопрос отпадает, но пишу - на тот случай, если вдруг эта информация что-то значит для вас.
     
     
    И в этой версии проявилось:
     
    Warning: DSL: Failed loading resource "4.jpg" for "Музыкальная энциклопедия (Ru-Ru)", reason: Can't open C:\Users\...\Ru-Ru Музыкальная энциклопедия.dsl.files\4.jpg: Invalid argument
     
    Warning: DSL: Failed loading resource "2.jpg" for "Музыкальная энциклопедия (Ru-Ru)", reason: Can't open C:\Users\...\Ru-Ru Музыкальная энциклопедия.dsl.files\2.jpg: No error
     
    Warning: DSL: Failed loading resource "3.jpg" for "Музыкальная энциклопедия (Ru-Ru)", reason: Can't open C:\Users\...\Ru-Ru Музыкальная энциклопедия.dsl.files\3.jpg: Invalid argument
     
     
     
     
    Добавлено:
    ...Между тем, я всё посматриваю в лог.
     
    В теле карточек одного из словарей создатель словаря забыл экранировать собак (@).
    К тому же, собаки попали между тегами url (vlаd@htmlbook.ru).
    ГД порвал эти ссылки на подкарточки.
    В логгинг же ошибка шла как:
     
    Warning: No corresponding opening tag for closing tag "url" found in "Справочник_по_HTML (теги) v1.0", article "a    ".
     
    С одной стороны, собаки в ссылках дело редкое, но может, есть возможность и стоит дать приоритет ошибке отсутствия экранировки собак?

    Всего записей: 805 | Зарегистр. 07-08-2013 | Отправлено: 15:52 02-07-2017 | Исправлено: ramanuki, 16:39 02-07-2017
    data man



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

    Цитата:
    В смысле?

    Расчитывать md5 только имени файла, без полного пути.
    Кстати, а зачем такие сложности с именем индексного файла? Почему бы не присваивать ему имя словаря?
     

    Цитата:
    А оно надо? GD новые фишки не пользует, а баги и в 5.6 должны правиться - она заявлена как "Long-term support".

    В 5.9 чего-то там наоптимизировали, может и GD на пользу пойдёт.

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

    Всего записей: 1696 | Зарегистр. 13-10-2005 | Отправлено: 16:36 02-07-2017
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ramanuki
    Последствия давнего перехода с сишного FILE* на QFile. Функциональность переписана, а сообщения старые остались. Поправил - goldendict-1.5.0-RC2-141-g02941ba(EXE only).7z.

    Цитата:
    С одной стороны, собаки в ссылках дело редкое, но может, есть возможность и стоит дать приоритет ошибке отсутствия экранировки собак?

    А как их отличать?
     
    data man

    Цитата:
    Кстати, а зачем такие сложности с именем индексного файла? Почему бы не присваивать ему имя словаря?

    Так было задумано автором изначально. И позволяет работать со словарями с одинаковыми именами (например, разные версии).

    Цитата:
    В 5.9 чего-то там наоптимизировали, может и GD на пользу пойдёт.

    Новые фичи зачастую тянут за собой и новые баги.

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

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 17:05 02-07-2017 | Исправлено: Abs62, 17:07 02-07-2017
    ramanuki



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

    Цитата:
    А как их отличать?  

     
    В подкарточке в заголовке, @ должен обязательно стоять на новой строке после пробела или табуляции (допускается несколько таких заголовков). И обязательно в конце подкарточки на новой строке @ еще раз (опять же - после пробела или табуляции).
     
    Если собака встречается в иной позиции (кроме как после \n\t или \n_), то это не подкарточка.
     
    Можно еще так перефразировать:
     
    - если после \n\t@ идет текст, то это заголовок подкарточки (и обязательно должен быть еще дальше на отдельной строке закрывающий \n\t@)
     
    - если после \n\t@ нет текста, то это конец карточки
     
    - все остальные собаки к подкарточкам отношения не имеют (компилятор их не пропускает: {{Ошибка: Неправильное использование символа начала подкарточки "@".}}, но я бы рекомендовал для ГД просто не обращать на "остальные" внимания, оставив их как есть)
     
    То есть делать подкарточки и выдавать Ахтунг надо только для собак на отдельной строке после пробела/табуляции.
     

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



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

    Цитата:
    - если после \n\t@ идет текст, то это заголовок подкарточки (и обязательно должен быть еще дальше на отдельной строке закрывающий \n\t@)

    Здесь, наверное, стоит уточнить, что в подкарточке может быть несколько заголовков, при этом закрывающая собака \n\t@ (одна) закрывает их все разом.
     
    Детали можно посмотреть здесь.

    Всего записей: 1327 | Зарегистр. 03-03-2008 | Отправлено: 18:00 02-07-2017
    ramanuki



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

    Цитата:
    Поправил - goldendict-1.5.0-RC2-141-g02941ba(EXE only).7z.  

    Спасибо!
    Теперь равномерненько ГД выдал:
     
    ...\2.jpg: The system cannot find the path specified.
     
    Емко и понятно. Может, разве что, только так разнообразить:
     
    The system cannot find the path/file specified.

    Всего записей: 805 | Зарегистр. 07-08-2013 | Отправлено: 18:00 02-07-2017 | Исправлено: ramanuki, 18:00 02-07-2017
    gerxer

    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Можно сделать так чтобы словарь не открывался, просто звук шёл когда слово выбираешь, ну чтобы так было как на скриншоте чтоб понятнее:
     
    http://prntscr.com/fqps20

    Всего записей: 565 | Зарегистр. 19-06-2014 | Отправлено: 18:05 02-07-2017
    ramanuki



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

    Цитата:
    Детали можно посмотреть здесь.

     
    Автор картинки немного переборщил со строгостью пробелов после собаки.
    На самом деле после пробела может быть пробел, может не быть, можно даже табуляцию поставить - роли не играет, игнорируется.
     
    А что до конца строки, то Win и Unix дружат*, можно и то, и другое. Но не Mac - это не пройдет!
     
    *Единственная программа из попавшихся мне, которая может исказить вид в Windows из-за Unix-конца строки - Notepad.
     
    Добавлено:
    Romul81

    Цитата:
    Здесь, наверное, стоит уточнить, что в подкарточке может быть несколько заголовков, при этом закрывающая собака \n\t@ (одна) закрывает их все разом.

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

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



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

    Цитата:
    Может, разве что, только так разнообразить

    Текст конкретной ошибки возвращает QFile, GD лишь вставляет его в варнинг.
    Насчёт собак будем посмотреть.
     
    gerxer
    Понятнее не стало. Какой словарь не должен открываться?

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

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



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

    Всего записей: 1327 | Зарегистр. 03-03-2008 | Отправлено: 18:26 02-07-2017
    gerxer

    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62 Верхний, красным обвёл, чтобы он открывался в свёрнутом виде в главном окне и всплывающем. Чтобы вид окна был таким образом как на скриншоте.
     
    http://prntscr.com/fqqiu5

    Всего записей: 565 | Зарегистр. 19-06-2014 | Отправлено: 19:23 02-07-2017
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    gerxer
    Автоматическое сворачивание определяется размером статьи и никак не зависит наличия в ней ссылок на звуки. Размер задаётся в настройках.


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

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



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
     
    Подскажите еще, пожалуйста, что значит сообщение?:
     
    Warning: QIODevice::read (QNetworkReplyDataImpl): device not open
     

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

    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
     
    Поставил галку, написал более 1 символа, но не сворачивает ничего.

    Всего записей: 565 | Зарегистр. 19-06-2014 | Отправлено: 21:19 02-07-2017
    Abs62



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

    Цитата:
    Подскажите еще, пожалуйста, что значит сообщение?:
     
    Warning: QIODevice::read (QNetworkReplyDataImpl): device not open

    Внутренняя диагностика Qt.

    Цитата:
    Поставил галку, написал более 1 символа, но не сворачивает ничего.

    Совсем ничего? Если речь о словарях Longman в mdx, эти хитровывернутые конструкции действительно не сворачиваются, но с остальными-то должно работать.

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

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 22:12 02-07-2017
    Abs62



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ramanuki
    Пробуйте новую обработку собак - goldendict-1.5.0-RC2-144-g413b355(EXE only).7z.

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

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



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

    Цитата:
    Пробуйте новую обработку собак - goldendict-1.5.0-RC2-144-g413b355(EXE only).7z.

     
    Например, имеем словарный код:
     

    Код:
    heading 6
        dictionary
        1) словарь
        2) справочник
        @ explanatory dictionary {{ заголовок подкарточки № 1 }}
        толковый словарь {{ перевод в подкарточке № 1 }}
        @ standard dictionary {{ заголовок подкарточки № 2 }}
        нормативный @nonstandard dictionary {{ это всё перевод в подкарточке № 2, здесь собака должна быть обычным (как будто экранированным) символом и игнорироваться, так как не соответствует требованиям для начала подкарточки }}
        @ dictionary making {{ заголовок подкарточки № 3 }}
        составление словарей {{ перевод в подкарточке № 3 }}
        @ какой-то текст(ы) {{ это не может быть заголовком, так как далее нет ни перевода, ни закрывающей собаки; значит ЭТО закрывающая собака и просто текст, который нужно считать ошибочно помещенным на этой строке вместо следующей }}
     

    Этот в/у код смотрится так:
       
     
    По идее, должен смотреться так:
       
     
     
    В случаях № 1, 2 и 3 требования DSL соблюдены (компилятор принимает), а с "нормативный @nonstandard dictionary" и "@ какой-то текст(ы)" - нет (компилятор не принимает).
     
    Добавлено:
    Предлагаю считать, что  
    - если составитель забыл закрыть подкарточку собакой, то она не считается подкарточкой.
    - если составитель забыл в "неправильной позиции" экранировать собаку, то она считается автоматически экранированной.

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



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

    Цитата:
    По идее, должен смотреться так:

    Обработку собаки в середине строки поправлю.  

    Цитата:
    Предлагаю считать, что если составитель забыл закрыть подкарточку собакой, то она не считается подкарточкой.

    А что в таких случаях предлагает Lingvo? А то в той схеме обработки, которая задействована в GD, реализовывать такое очень неудобно.

    Цитата:
    - если составитель забыл в "неправильной позиции" экранировать собаку, то она считается автоматически экранированной

    С выдачей диагностики в лог.

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

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 20:40 03-07-2017 | Исправлено: Abs62, 20:41 03-07-2017
    ramanuki



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

    Цитата:
    А что в таких случаях предлагает Lingvo? А то в той схеме обработки, которая задействована в GD, реализовывать такое очень неудобно.  

     
    Если правила расстановки (@ после \n\t или \n_) не соблюдены, то получаем ошибку:
     
    {{Ошибка: Неправильное использование символа начала подкарточки "@". (Файл: "C:\...\TEST.dsl", Строка: 46)}}  
     
    Если составитель забыл закрыть подкарточку собакой, а правила расстановки (@ после \n\t или \n_) соблюдены, то
     
    {{Ошибка: Подкарточка не окончена. ...

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



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

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

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 23:21 03-07-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