New user registration is currently disabled due to spam abuse / Регистрация новых пользователей в настоящее время приостановлена из-за злоупотреблений спаммерами

Выпадающий список вариантов содержит не все варианты (DICT)

Сообщаем о найденных ошибках сюда

Re: Выпадающий список вариантов содержит не все варианты (DI

Postby Michael72 » Mon Jan 15, 2018 10:06 pm

Сделал кое какие изменения.
В архиве dict1121.zip теперь находится не только js сценарий, но и все остальные вспомогательные файлы, включая новую версию консольного dict-клиента: dict 1.12.1/rf on CYGWIN_NT-5.1 1.7.28(0.271/5/3).
———————————————————————————————
Установка
———————————————————————————————
Скопируйте этот архив в каталог, где установлена программа GoldenDict. В GoldenDict нажмите F3 и выберите вкладку "Программы". Щелкните на кнопке Добавить для создания новой настройки. Дайте имя программы типа "Все на DICT-bible". Впечатайте в поле "Командная строка":
Code: Select all
dict.bat dict.bibleonline.ru "%GDWORD%"
Поставьте "галочку" у опции Включено. При желании в колонке "Значок" можно указать файл: C:\Program Files\GoldenDict\dict1.12.1\index.png
Щелкните на OK.

Примечание
Пакетный файл для доступа к DICT-серверу dict.bat требует параметры:
1-[DICT-сервер], 2-[слово], 3-[стратегия], 4-[match]
Третий и четвёртый параметры необязательные. По умолчанию используется стратегия prefix и запрашивается подмножество определений. Если необходимо запрашивать подмножество названий статей для искомого слова (словосочетания), то в качестве 4-го параметра необходимо указать любой символ или слово (главное, чтобы он был непустой, например, слово match).
———————————————————————————————
Что нового
16 января 2018 г.
———————————————————————————————
Теперь используется опция OPTION MIME. Если словарь на DICT-сервере имеет модуль с MIME контентом, то dict-сервер будет отдавать MIME content. См. обсуждение в теме Символы Windows ANSI вместо UTF-8. GoldenDict не поддерживает опцию OPTION MIME для словарей во вкладке "Серверы DICT", таким образом все словари, установленные в этой вкладке, могут быть только с PlainText контентом. При желании использование опции OPTION MIME можно также убрать и из пакетного файла dict.bat. Для этого в строке 6 уберите "--mime - ".

К сожалению dict 1.12.1 имеет один серьёзный баг, связанный с использованием опции --mime. Если эта опция указывается совместно с опцией --strategy, то список определений получается неполный — уменьшается на одну словарную статью. Ожидаю исправление бага от разработчика, см. MIME OPTION problem.
С другой стороны надеюсь, что разработчики GoldenDict захотят добавить поддержку опции OPTION MIME для словарей во вкладке "Серверы DICT", тогда необходимость в этом "огороде" сразу отпадёт.
Michael72
 
Posts: 180
Joined: Tue Mar 12, 2013 1:34 pm

Re: Выпадающий список вариантов содержит не все варианты (DI

Postby Michael72 » Mon Aug 06, 2018 12:02 pm

Abs62 wrote:Количество вариантов ограничено, да. Собственно, оно у всех словарей ограничено. Дабы не перегружать список совпадений и не тормозить поиск. Не думаю, что пользователю так уж сложно уточнить запрос.

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

Установите словарь

Нажмите F3 и выберите вкладку "Серверы DICT". Щелкните на кнопке Добавить для создания новой настройки DICT-сервера. Дайте название типа "DICT dictionary (dict.dvo.ru / Все | word)". Впечатайте в поле "Адрес": dict://dict.dvo.ru. Поле "Базы" оставьте пустым. В поле "Стратегии" впечатайте: word. Поставьте "галочку" у опции Включено и щелкните на OK.

Поиск по словарю

Поиск по слову "bit" не найдет словосочетания "a bit", "a bit better", "a bit of fun" и другие, а по "a bit" найдет эти словосочетания. По логике вещей, поисковый запрос по слову "bit" должен показать все существующие в словаре словосочетания с этим словом, но поисковый запрос приводит к ошибочному выводу, что нужного словосочетания нет. Не всегда можно однозначно определиться, что именно словосочетание "a bit" мне нужно, иногда надо посмотреть всё, что есть, чтобы из этого списка выбрать наиболее подходящее к конкретной ситуации.
Не думаю, что пользователю так уж сложно уточнить запрос.

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

Я обратил внимание, что у других словарей (программ) вообще аналогичный список заполняется целиком всем указателем от а до я. А тут речь идёт только о какой-то малой части в сравнении с тем, что из себя представляет цельный указатель. Возможно, такое решение мотивируется в основном не тем, что поиск при этом чувствительно замедляется, а тем, что список вариантов реализуется как выпадающий список. В таком случае нельзя ли снять ограничение для случая, когда вместо выпадающего списка используется Панель поиска?
Michael72
 
Posts: 180
Joined: Tue Mar 12, 2013 1:34 pm

Re: Выпадающий список вариантов содержит не все варианты (DI

Postby Michael72 » Sun Sep 16, 2018 4:09 am

Хочу предложить другую альтернативу для решения данной проблемы. Посмотрите как работает DICT-клиент реализованный на базе пакета dicoweb (Debian).
Сперва выполните поиск слова אדם во всех словарях со стратегией word. Чтобы было удобнее я даю ссылку на выполнение такого поиска:

MATCH אדם

Теперь в полученном результате (указателе) кликните по любому слову, например самому первому в списке, вы получите следующий результат:

DEFINE אדם

Обратите внимание на то, что внизу вы видите этот же указатель, в котором имеется полный список слов, полученных по MATCH запросу. Вот эту идею я и предлагаю реализовать в GoldenDict. В выпадающем списке вариантов, пользователь видит какую-то часть от MATCH запроса, но в основном окне просмотра, в конце всех статей, полученных по DEFINE запросу, перед пользователем абсолютно полный список MATCH запроса. При этом гипертекстовые ссылки должны быть типа:
Code: Select all
gdlookup://localhost/define:%D7%90%D7%93%D7%9D%0A:heb-rus_strong
чтобы запрос проходил только по конкретному словарю типа Серверы DICT.
Чтобы было яснее с гиперссылками, предлагаю посмотреть работу моей утилиты, которая написана на языке JScript и подключается к GoldenDict через меню "Правка - Словари - Источники - Программы".

Как установить утилиту

Запустите саморазворачивающийся архив dict1.12.1.exe.
После того как вы щелкните на архиве, он автоматически распакует файлы, запустит процесс обнаружения GoldenDict'а на вашем компьютере, и после обнаружения — автоматически добавит три файла (dict.js, dict.exe, cygwin1.dll), которые содержатся в архиве, в подкаталог dict1.12.1 того каталога, куда вы установили программу GoldenDict.
Запустите GoldenDict.
В меню Правка - Словари - Источники во вкладке "Программы" щелкните на кнопке Добавить и создайте новую запись. Укажите Тип программы — Html. В поле Имя программы напишите "JScript dictionary (dict.bible.ru / Все | word | mime) [указатель]". Напечатайте в поле Командная строка:
Code: Select all
C:\WINDOWS\system32\cscript //Nologo //U dict1.12.1\dict.js /h:dict.bible.ru /p:2629 /m /s:word /mime "%GDWORD%"

и нажмите на OK.
Если в качестве аргумента поиска вы зададите אדם, то у вас получится такая картина:
Image
Обратите внимание, как выглядит гиперссылка для первого слова в списке (слово в правом верхнем углу). Теперь щелкните по гиперссылке אדם: вы увидите все связанные статьи именно из словаря heb-rus_strong.
Image

Надеюсь, что идея интересная и изложена понятно.
Michael72
 
Posts: 180
Joined: Tue Mar 12, 2013 1:34 pm

Previous

Return to Ошибки

Who is online

Users browsing this forum: Google [Bot] and 1 guest