Перейти из форума на сайт.Реклама на Ru.Board


Система IP-видеонаблюдения "Линия". Скачать бесплатную демо-версию для 16 камер. НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаФотогалереяГазетаКто в 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

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

Maz



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




 
Актуальная версия 1.5.0:
Windоws RC2-85 Qt 4.8.6 или Qt 5.6.2, последний EXE-файл: goldendict-1.5.0-RC2-114-g82ebf1e(EXE only).7z.
Плагин dsengine.dll для Qt 5.6-based версии на Windows XP: dsengine_5.6.1_for_XP.7z
MacOSX RC2-85 (Qt 562) (рекомендуется для Mavericks & Yosemite); RC2-85 (Qt 580) (рекомендуется для Sierra); RC 483 (Qt 532) (рекомендуется для Mountain Lion); RC 425 (Qt 486)
 
GoldenDict — новая словарная программа, обладающая следующими особенностями:  
 
  • Графический интерфейс на основе табов, для создания которого использована библиотека Qt;
  • Интеграция с html-движком WebKit для корректного представления материалов в html-формате;
  • Поддержка подключения словарей в форматах: Babylon (.BGL), StarDict (.ifo/.dict./.idx/.syn), Dictd (.index/.dict(.dz)), ABBYY Lingvo (.dsl тексты и аудиоматериалы .lsa/.dat, .lsd - только в Android), XDXF, AARD, 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

  • Всего записей: 34252 | Зарегистр. 26-02-2002 | Отправлено: 11:50 23-02-2017 | Исправлено: Abs62, 20:28 18-05-2017
    andreyefgs



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Обнаружил что ключи  --group-name= и --popup-group-name= можно использовать вместе.
    Это очень хорошо.
    Я когда фичу просил просто не подумал, что такое потребуется.

    Всего записей: 1261 | Зарегистр. 16-10-2005 | Отправлено: 22:26 10-03-2017 | Исправлено: andreyefgs, 22:28 10-03-2017
    andreyefgs



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

    Цитата:
    А можно как-то открывать картинки по щелчку на них через просмотрщик, принятый в системе по умолчанию?  

     
    Я бы если делал GLS словарь с большими картинками, то такой вариант использовал (за неимением других)
     
    Код
    значение max-height можно менять, max-width нежелательно
     

    Всего записей: 1261 | Зарегистр. 16-10-2005 | Отправлено: 01:30 11-03-2017
    ramanuki



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

    Цитата:
    Не-а. А зачем?

    Удобнее по щелчку просматривать в полном виде в отдельном окошке - наподобие того, как в Lingvo реализовано. А в GD приходится или окно программы разворачивать / увеличивать или пользоваться лифтами.
     
    Добавлено:
    andreyefgs

    Цитата:
    Я бы если делал GLS словарь с большими картинками, то такой вариант использовал (за неимением других)  

     
    Это хорошее решение для создания миниатюр.
     
    Но для неискушенного пользователя будет неведомо о существовании такой фичи, т.к. курсор не меняет свою форму при наведении - не подсказывает о возможности щелчка.
     
    К тому же, открывается в картинка в этом же окне и надо пользоваться лифтами / распахиванием окна.
     
    Лучше всего передавать картинку специализированной на то программе в ОСе (и к тому же там можно пользоваться всеми ее фичами).

    Всего записей: 262 | Зарегистр. 07-08-2013 | Отправлено: 09:54 11-03-2017
    Abs62



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

    Цитата:
    Удобнее по щелчку просматривать в полном виде в отдельном окошке - наподобие того, как в Lingvo реализовано.

    Ну, тут надо временный файл делать и уже его во внешнюю программу передавать. А потом как его убирать? Засирать папки для временных файлов, вообще-то, дурной тон...

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

    Всего записей: 4871 | Зарегистр. 22-10-2005 | Отправлено: 11:56 11-03-2017
    andreyefgs



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ramanuki
     
    Вот относительно рабочее решение:
     
    собака
    dog <a href="file:///E:/GoldenDict/content/dic/test/dog.png"><img src="dog.png"></a>
     
    На Linux:
     
    собака
    dog <a href="file:///home/andrey/u/goldendict/dic/test/dog.png"><img src="dog.png"></a>
     
     
    На винде у меня по клику картинка открылась в IrfanView (дефолтный просмоторщик там)
     
    Скриншот 1: картинка
     
    На Lunux-е в Viewnior (дефолный просмоторщик там)
     
    Скриншот 2: картинка
     
    Курсор на hover превращается в лапку, ибо картинка между <a>
     
    _______________________________
     
    Но большой минус такого решения - это необходимость использовать полные ссылки

    Всего записей: 1261 | Зарегистр. 16-10-2005 | Отправлено: 12:12 11-03-2017 | Исправлено: andreyefgs, 12:21 11-03-2017
    ramanuki



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
    Но ведь Lingvo как-то решает эту проблему, открывая новое окно для просмотра картинки. (Когда-то видел какие-то следы от ее картинок в папке временных файлов - но то, видно, были сбойные случаи).
     
    А нельзя внешней программе передавать адрес нахождения файла картинки на носителе? Хотя, тут могут быть проблемы с архивами...
     
    Или такой вариант: по шелчке на картинке GD копирует ее в ОЗУ, вызывает просмотрщик и вставляет копию в него. Но тут не все просмотрщики поддерживают такую функцию...
     
    Инспектор у себя на адресе bres:// во всплывающем окошке может выводить миниатюру картинки.  
    И он же может показывать в Ресурсах полную картинку, если его распахнуть - может, его можно задействовать для показа? Только выход из него по Esc не работает, надо щелкать мышью - а это лишнее телодвижение.

    Всего записей: 262 | Зарегистр. 07-08-2013 | Отправлено: 12:36 11-03-2017 | Исправлено: ramanuki, 12:37 11-03-2017
    andreyefgs



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Abs62
     
    А можно сейчас, не внося изменений в GD, получить каким-нибудь  образом полный путь к файлу словаря (gls файлу например) используя javascript?
     
    Чтобы потом можно было его использовать для модификации атрибута href в ссылке.
     
    Может существует возможность как-то  декодировать идентификатор (вроде fafde81262e119bd7017f36064f219d1 (полный: gddictname-fafde81262e119bd7017f36064f219d1)) и получить из него путь.
     
    Глупая мысль конечно, на всякий случай интересуюсь

    Всего записей: 1261 | Зарегистр. 16-10-2005 | Отправлено: 12:40 11-03-2017 | Исправлено: andreyefgs, 12:43 11-03-2017
    Abs62



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

    Цитата:
    Но ведь Lingvo как-то решает эту проблему, открывая новое окно для просмотра картинки.

    Своё окно? Со своим-то просмотрщиком всё проще, он полностью управляем из программы.

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

    Вот именно, что картинка может быть и в архиве. Или вообще в сети.

    Цитата:
    Или такой вариант: по шелчке на картинке GD копирует ее в ОЗУ, вызывает просмотрщик и вставляет копию в него. Но тут не все просмотрщики поддерживают такую функцию...

    И ещё надо знать, что же там за просмотрщик, чтобы его запустить. С файлом-то проще, банально дёрнуть QDesktopServices::openUrl(), она просто вызовет программу, зарегистрированную в системе для данного типа.
     
    andreyefgs

    Цитата:
    А можно сейчас, не внося изменений в GD, получить каким-нибудь  образом полный путь к файлу словаря (gls файлу например) используя javascript?

    Нельзя. Браузер, который отображает страницу, ничего не знает про пути, он просто запрашивает загрузку по ссылкам у сетевого менеджера и получает готовый результат. Ровно так же, как обычный браузер понятия не имеет о физическом расположении файлов на сервере, с которого грузит страницы.


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

    Всего записей: 4871 | Зарегистр. 22-10-2005 | Отправлено: 18:11 11-03-2017
    ramanuki



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

    Цитата:
    Глупая мысль конечно, на всякий случай интересуюсь

    И я об этом думалъ.
     
    Добавлено:
    Больше всего возможностей в плане форматирования, конечно, у HTML. И он же стандартнее всех остальных. А удобного формата для редактирования в нем нет.
     
    Неудобны и Stardict, MDict, Zim, Slob. И gls под вопросом.
     
    С картинками, как вариант, было бы удобно делать так: миниатюру хранить в ресурсах словаря, а полный вариант картинки размещать в интернете, типа:
     
    <a href="http://site.ru/files/test.jpg"><img src="res/test.jpg"></a>  
     
    А вот вывести картинку из интернета не получилось (по такому принципу):
     
    <a href="http://site.ru/files/test.jpg"><img src="http://site.ru/files/test.jpg"></a>

    Всего записей: 262 | Зарегистр. 07-08-2013 | Отправлено: 18:11 11-03-2017
    CAEman5

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

    Цитата:
    При поиске слова сначала опрашиваются все словари на предмет наличия синонимов, составляется список, а затем у всех опять же словарей запрашиваются статьи по всем найденным словам. И когда встречается какой-нибудь словарь со специфичным представлением о синонимах, результаты, скажем так, могут несколько озадачить.
     


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


    Цитата:
    Я тоже не люблю эти синонимы в окне со списком заголовков.
    Листаешь, листаешь, а статья одна и та же выводится.
    Да, было бы неплохо убрать их из списка, можно и опционально.  

    Я про это уже твержу не первый год. А пока ГД не может не выдавать статьи вместе с запрашиваемым заголовком ещё и статьи с синонимами, то приходится конвертировать исходные BGL словари в Stardict и удалять *.syn файлы для подключения к ГД...

    Всего записей: 61 | Зарегистр. 02-04-2016 | Отправлено: 19:37 11-03-2017
    andreyefgs



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

    Всего записей: 1261 | Зарегистр. 16-10-2005 | Отправлено: 22:42 11-03-2017 | Исправлено: andreyefgs, 22:52 11-03-2017
    ramanuki



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    andreyefgs
    Локальный сервер мало у кого есть в хозяйстве.

    Всего записей: 262 | Зарегистр. 07-08-2013 | Отправлено: 23:12 11-03-2017
    andreyefgs



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ramanuki
     
    Проблема открытия картинок в дефолтной смотрелке Accomplished!!!
     
    Вот код:

    Код:
    собака1
    <script>
    function openpic(img){
        var a = img.parentNode;
        var link = img.src;
        a.setAttribute("href", link);
        img.removeAttribute("onclick");
    }
    </script>
    dog <a><img onclick="openpic(this)" src="dog.png"></a>

     
    Вот что имеем в инспекторе до клика по картинке:
       
     
    После:

    Цитата:
       

     
    Результат:

    Цитата:
       

     
    ЗЫ
    Зачем нужны полные локальные ссылки, когда и работают и такие bres://fafde81262e119bd7017f36064f219d1/dog.png
    А их можно взять из атрибута src картинки

    Всего записей: 1261 | Зарегистр. 16-10-2005 | Отправлено: 01:00 12-03-2017 | Исправлено: andreyefgs, 01:01 12-03-2017
    Itkind

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

    Всего записей: 90 | Зарегистр. 03-09-2012 | Отправлено: 04:59 12-03-2017
    ramanuki



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

    Цитата:
    Зачем нужны полные локальные ссылки, когда и работают и такие bres://fafde81262e119bd7017f36064f219d1/dog.png  

     
    А они одни и те же у всех?
     
    Добавлено:
    Это, видно, зашифрованный путь к словарю - он уникальный в пределах словаря. А при изменении адреса словаря на диске тоже поменяется.
     
    Добавлено:
    Похоже, что из-за него и картинка не отображается, потому что адрес у нее становится таким: <img src="bres://40950d17310235a8b7dc9d353ee050b/http://site.ru/files/test.jpg">

    Всего записей: 262 | Зарегистр. 07-08-2013 | Отправлено: 09:47 12-03-2017
    andreyefgs



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

    Цитата:
    Похоже, что из-за него и картинка не отображается, потому что адрес у нее становится таким: <img src="bres://40950d17310235a8b7dc9d353ee050b/http://site.ru/files/test.jpg">  

     
    Из этого примера сложно понять, что вы пытались сделать.
    Если выложите gls файл (сырец) с картинками, то я отредактирую его так, чтобы картинки открывались в во внешней смотрелке. Поэтом можете использовать этот словарь как пример, шаблон.
     

    Всего записей: 1261 | Зарегистр. 16-10-2005 | Отправлено: 10:33 12-03-2017 | Исправлено: andreyefgs, 10:47 12-03-2017
    ramanuki



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

    Цитата:
    Из этого примера сложно понять, что вы пытались сделать.

     
    Это я к своему сообщению от  18:11 11-03-2017:
     

    Цитата:
    С картинками, как вариант, было бы удобно делать так: миниатюру хранить в ресурсах словаря, а полный вариант картинки размещать в интернете, типа:  
     
    <a href="http://site.ru/files/test.jpg"><img src="res/test.jpg"></a>  
     
    А вот вывести картинку из интернета не получилось (по такому принципу):  
     
    <a href="http://site.ru/files/test.jpg"><img src="http://site.ru/files/test.jpg"></a>

     
    ... т.е. не получилось из-за того, что путь (согласно инспектору) превращается в
     
     <img src="bres://40950d17310235a8b7dc9d353ee050b/http://site.ru/files/test.jpg">
     

    Всего записей: 262 | Зарегистр. 07-08-2013 | Отправлено: 10:39 12-03-2017
    andreyefgs



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

    Цитата:
    А они одни и те же у всех?  

     

    Цитата:
       

     
    Два файла лежат в одной папке с gls файлом.
    Как видно из скриншота начало (bres://fafde81262e119bd7017f36064f219d1) у них совпадает
     
    ЗЗЫ
    fafde81262e119bd7017f36064f219d1
    не меняется даже если картинки разнести по разным статьям, этот код получается каким-то образом из путей
     
    Но я не советую его статическим образом использовать, словарь будет непортабельным, лучше динамически добывать и вставлять куда следует.
     
     
     

    Всего записей: 1261 | Зарегистр. 16-10-2005 | Отправлено: 10:48 12-03-2017 | Исправлено: andreyefgs, 10:48 12-03-2017
    ramanuki



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    andreyefgs
    Под "всеми" я имел в виду юзеров. У другого человека этот адрес, скорее всего, будет иным, т.к. при перемещении словаря этот хеш меняется.
     
    Надо спросить у Abs62, можно ли этот адрес восстанавливать.

    Всего записей: 262 | Зарегистр. 07-08-2013 | Отправлено: 10:58 12-03-2017 | Исправлено: ramanuki, 10:59 12-03-2017
    andreyefgs



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

    Цитата:
    ... т.е. не получилось из-за того, что путь (согласно инспектору) превращается в
     
     <img src="bres://40950d17310235a8b7dc9d353ee050b/http://site.ru/files/test.jpg">  

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

    Код:
     
    cat1
    <article>
    <a href="https://pbs.twimg.com/profile_images/664169149002874880/z1fmxo00.jpg"><img style="display:none" src="https://pbs.twimg.com/profile_images/737359467742912512/t_pzvyZZ_400x400.jpg"></a>  
        <script>
            var scr = document.getElementsByTagName('script');
            scr = scr[scr.length - 1];
            var images = scr.parentNode.getElementsByTagName('img');
            for (var i = 0; i < images.length; i++)
            {
                if (/^bres.*http.*$/.test(images[i].src))
                {
                    images[i].setAttribute("src", images[i].src.replace(/^.*(https?.*)$/, "$1"));
                    images[i].style.display = 'inline';
                }
            }
        </script>
    </article>
     

     
    Использование контейнера <article> обязательно (т.е. нужен родительская пара <tag></tag>  для  <script></script> и остального контента статьи, название тега может быть другим). Javascript для фиксинга должен быть внизу.
     
    ЗЫ
    Внутри тега img используйте style="display:none", чтобы не мелькала синяя иконка (которая отображается если браузер не может показать картинку)
     
    ЗЗЫ
    И на всякий случай, весь код  (любой, не только приведённый выше) лучше изолировать с помощью анонимной функции:

    Код:
    <script>
    (function (){
    ...
    })();
    </script>


    Всего записей: 1261 | Зарегистр. 16-10-2005 | Отправлено: 11:24 12-03-2017 | Исправлено: andreyefgs, 13:23 12-03-2017
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

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

    Имя:
    Пароль:
    Сообщение

    Для вставки имени, кликните на нем.

    Опции сообщенияДобавить свою подпись
    Подписаться на получение ответов по e-mail
    Добавить тему в личные закладки
    Разрешить смайлики?
    Запретить коды


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

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.Board
    © Ru.Board 2000-2017

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru