Ru-Board.club
← Вернуться в раздел «Программы»

» GoldenDict

Автор: ramix
Дата сообщения: 10.05.2016 15:03
Заметил еще одну особенность словаря "Oxford Dictionary of English © 2015 (UK)" (файл Oxford_Dictionary_of_English_2015_v2.mdx).

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

Это не есть хорошо, когда "неправильные" словари влияют на соседние.

Еще подозреваю его в том, что он влияет на CSS - цвет ссылок после него становится не отличимым от цвета текста (и догадаться о наличии ссылок уже невозможно).

[more=Доп. информация]

Что-то нехорошее кроется в районе HTML-комментариев в первой половине нижеупомянутого кода (это пример одного заголовка на стыке двух статей - проблемного и обычного словарей). Картинок после него уже не видно:

[no]<div class="moreInformation"><a class="moreInformationExemples">Example sentences</a><ul class="sentence_dictionary"><li class="sentence">The fishermen also chartered a deep-sea fishing boat for the day while in the Seychelles, bagging boxfuls of bonito but failing to spot the prized sailfish or black marlin.</li><li class="sentence">In summer, great shoals of gamefish arrive, including giant kingfish, barracuda, sailfish and bonito.</li><li class="sentence">For game fisherman the great catches are marlin, sailfish, tarpon and bonefish.</li></ul></div><!-- End of DIV moreInformation--></div><!-- End of DIV senseInnerWrapper--></div><!-- End of DIV msDict sense--></section></div><!-- End of DIV --></div>
</div>
<div style="clear:both;"></div><span class="gdarticleseparator"></span><script type="text/javascript">var gdArticleContents; if ( !gdArticleContents ) gdArticleContents = "53a271ef4695b6c580856f2f9ead0a00 "; else gdArticleContents += "53a271ef4695b6c580856f2f9ead0a00 ";</script><span class="gdarticle" id="gdfrom-53a271ef4695b6c580856f2f9ead0a00" onclick="gdMakeArticleActive( '53a271ef4695b6c580856f2f9ead0a00' );" oncontextmenu="gdMakeArticleActive( '53a271ef4695b6c580856f2f9ead0a00' );"><div class="gddictname" onclick="gdExpandArticle('53a271ef4695b6c580856f2f9ead0a00');" id="gddictname-53a271ef4695b6c580856f2f9ead0a00"><span class="gddicticon"><img src="Sailfish_files/53a271ef4695b6c580856f2f9ead0a00/dicticon.png"></span><span class="gdfromprefix">From </span><span class="gddicttitle">Oxford Dictionary of English, 3/e</span><span class="collapse_expand_area"><img src="Sailfish_files/localhost/icons/blank.png" class="gdcollapseicon" id="expandicon-53a271ef4695b6c580856f2f9ead0a00" title="Collapse article"></span></div><div class="gddictnamebodyseparator"></div><span class="gdarticlebody gdlangfrom-en" lang="en" style="display:inline" id="gdarticlefrom-53a271ef4695b6c580856f2f9ead0a00"><div class="mdict"><link id="g3o" rel="stylesheet" href="Sailfish_files/53a271ef4695b6c580856f2f9ead0a00/ODE.css" type="text/css"><div class="Od3"><div class="k0i"><div class="h1s"><h2 class="z2h">sail<span>|</span>fish</h2><span class="pxt"> /&#712;se&#618;lf&#618;&#643; <img src="Sailfish_files/53a271ef4695b6c580856f2f9ead0a00/pr.png" onclick="atv(this,0,'s/sai/sailf/sailfish__gb_1_8')" class="a8e">/</span>[/no]

[/more]
Автор: Romul81
Дата сообщения: 10.05.2016 15:19
ramix


Цитата:
Это не есть хорошо, когда "неправильные" словари влияют на соседние.

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

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

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

Добавлено:

Цитата:
Нет, переименование тут наверняка не причём. Надо словарь смотреть, в mdx всякое хитрое форматирование со своими стилями не редкость.

Стили в MDX заизолированы двойной изоляцией - по ID и классом. Поэтому они не могут влиять. Всему виной кривой HTML-код. Проще говоря, незакрытые теги. Таким образом, весь контент ниже воспринимается как содержимое этого словаря.
Автор: Abs62
Дата сообщения: 10.05.2016 16:07
ramix

Цитата:
файл Oxford_Dictionary_of_English_2015_v2.mdx

Ссылка на него есть?
Автор: monsoon 3
Дата сообщения: 10.05.2016 20:12
В GD есть показ форм слова как у лингво по Ctrl+W?

Автор: ramix
Дата сообщения: 10.05.2016 20:32
Abs62

Цитата:
Ссылка на него есть?


Ссылка на него в последнем сообщении этой страницы на соседней ветке.
Автор: Romul81
Дата сообщения: 10.05.2016 23:20
ramix

Чуть посмотрел этот словарь (разбирать не стал - глянул в инспекторе). Сразу скажу, что глюк, который происходит у вас, мне повторить не удалось. Смоделировал вашу ситуацию со статьёй sailfish. Словарь первый в списке. После него, как и вас, Oxford Dictionary of English, 3/e. И после ещё пару словарей. Статьи получились полностью изолированными, всё как и полагается. В CSS тоже прописана двойная изоляция, так что стили не могут влиять на другие словари (что и не происходит).

Тем не менее, не скажу, что всё идеально со словарём. Может, все проблемы от того, что к нему подключен JQuery (с которым Qt-браузер в GD сам по себе не очень дружит), плюс слегка адаптированный скрипт с сайта (или, может, на момент создания словаря скрипт полностью соответствовал тому, что на сайте). Считаю, что это уже перебор. Слепо копировать ресурсы источника - не выход. Обязательно нужно адаптировать (присутствие комментариев в HTML как бы намекает). Вот для чего в скрипте виртуальная клавиатура? Да ещё и на арабском? Если б всё это чудо ещё и работало... Но увы, не работают гораздо более прозаические вещи, например онлайн-озвучка. При этом присутствует слушатель, которые ещё и извиняется:

Код: audio.addEventListener("error", function(e){alert("Apologies, the sound is not available.");});
Автор: ramix
Дата сообщения: 11.05.2016 10:42
Romul81

Версия GoldenDict у меня та же, только я на Windows 10.

Эта китайская сборка Окфорда кровушки у меня попила - ее коварное воздействие на другие словари я заметил, когда переехал на Windows 10. Ну и первым делом стал грешить на 10-ку в том, что у меня Апресян и другие побледнели - нет ссылок, ищи вручную! Думал - сама десятка бледная, еще и как-то на словари косвенно влияет .

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

Короче, история долгая... Когда уже стали пропадать картинки, пришлось пойти на "разборки". Только так и вычислил подложенную китайцами бомбу.
Автор: Romul81
Дата сообщения: 11.05.2016 10:49
ramix


Цитата:
Только так и вычислил подложенную китайцами бомбу.

Может, когда-нибудь, если руки дойдут, пересоберу MDX/MDD. Всё-таки словарь референтный. Хотя не сравнивал с другими оксфордскими словарями в Mdict - может уже и есть аналогичная версия, отличающаяся только оформлением.
Автор: ramix
Дата сообщения: 11.05.2016 11:01
Romul81
По количеству статей он на несколько тысяч больше своего коллеги "3/e", но синонимия у него какая-то своя, особенная. Например, запросил я "on the house" - другие Оксфорды и выдали соответствующую статью, и только этот дал родительскую "house".
Автор: Romul81
Дата сообщения: 11.05.2016 11:10
ramix

Надо разобрать и посмотреть, что с ним. В идеале, было бы, конечно, получить исходник в HTML.


Цитата:
По количеству статей он на несколько тысяч больше своего коллеги "3/e"

К сожалению, GD не делает разделения на заголовки/статьи для формата MDict. Их кол-во всегда одинаково. Хотя по факту в словаре могут иметься только заголовки, ссылающиеся на другие статьи (типа синонимов).
Автор: Abs62
Дата сообщения: 11.05.2016 19:36
ramix
Пробуйте - goldendict-1.5.0-RC2-4-g3c7c924(EXE only).7z

monsoon 3

Цитата:
В GD есть показ форм слова как у лингво по Ctrl+W?

Если добавите словарь, который такое показывает - будет. А в самом GD нет, он к какому-то конкретному языку не привязан.
Автор: ramix
Дата сообщения: 11.05.2016 21:36
Abs62
Ну вот, и картинки появились, и к ссылкам вернулась здоровая синева, и границы карточек очертились по своим местам.

Одним словом, спасибо вам!

P.S. И даже релиз-кандидат возрос до обнадеживающего номера Как говорится, не прошло и полгода... На горизонте уже маячит версия 2.0? В этом деле надо брать пример с Гугл-Хром - уже 50-й юбилей в номере версии отмечен.
Автор: Romul81
Дата сообщения: 12.05.2016 01:59
ramix

Ответил здесь.
Автор: ramix
Дата сообщения: 12.05.2016 11:17
Romul81

Цитата:
Ответил здесь.

Переответил там.

Abs62
Возможно ли реализовать такую фишку - подсчет полезного текста в словаре. То есть отбрасываем весь служебный код и подсчитываем сколько есть реального текста - всех выводимых на экран символов. Примерно так (или даже проще), как это делает плагин Stats в AkelPad или статистика в MS Word.



Зачем это нужно? Это позволит косвенно оценивать качество словаря - и в общем, и по удельному весу - делим полезный объем на количество статей - и сразу видно, какой объем в среднем занимает одна карточка. Например, при невысоких показателях это будет указывать на слабую проработку заголовков автором или составителем (типа наличествует только основной перевод).
* * *
Было бы классно, если бы GoldenDict работал с плагинами - надо - подключил, не надо - отключил... Хотя всё это, наверное, лишь мечты, мечты...
Автор: Abs62
Дата сообщения: 12.05.2016 12:11
ramix

Цитата:
Возможно ли реализовать такую фишку - подсчет полезного текста в словаре.

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

Цитата:
Было бы классно, если бы GoldenDict работал с плагинами - надо - подключил, не надо - отключил...

А многим ли это надо...
Автор: grey_woolf
Дата сообщения: 12.05.2016 20:09
Здравствуйте.
Меня интересуют словари к данной программе. Ссылки в шапке частично не работают, особенно первая и вторая части со ссылками на рапидшару (она пока в ауте),словарь Лопатина, Дмитриева(фаил удалён). По возможности, выложите, пожалуйста, их одним архивом на яндекс диск или еще какой-нибудь нормальный обменник. Меня особенно интересуют русский, украинский, польский и английский языки.
Заранее спасибо
Автор: sikemo
Дата сообщения: 12.05.2016 22:10

Цитата:
одним архивом


отошлю к раздачам на rutracker.org

ключевые слова — сабж, DSL словари + языковые направления.

---
если че, пишите
Автор: AndroS
Дата сообщения: 13.05.2016 05:58
grey_woolf

Цитата:
Меня интересуют словари к данной программе. Ссылки в шапке частично не работают...

Таки в шапке той же есть ссылка на оф. сайт, прямо в меню стоит ссылка на словари "Dictionaries", в которой куча ссылок на сайты со словарями, в том числе и на этом форуме - про саму программу (системные словари), про пользовательские словари и проч...
Удачи!
Автор: CAEman5
Дата сообщения: 14.05.2016 13:55
Romul81

Цитата:
Стили в MDX заизолированы двойной изоляцией - по ID и классом. Поэтому они не могут влиять. Всему виной кривой HTML-код. Проще говоря, незакрытые теги. Таким образом, весь контент ниже воспринимается как содержимое этого словаря.

Когда аналогичные (да и не только) ошибки оказываются в XDXF словарях, то данные словари считываются в оболочке только до предшествующего заголовка включительно.
В чём заключается принципиальное различие, что MDX словари не могут считываться таким же образом?

ramix

Цитата:
Версия GoldenDict у меня та же, только я на Windows 10.

Для планшетов и смартфонов лучше использовать коммерческую версию оболочки (правда, она для нормальных устройств, т.е. на Android/Linux, а не от МС...).

Цитата:
На горизонте уже маячит версия 2.0?


Цитата:
Хотя всё это, наверное, лишь мечты, мечты...

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

grey_woolf

Цитата:
Меня интересуют словари к данной программе. Ссылки в шапке частично не работают, особенно первая и вторая части со ссылками на рапидшару (она пока в ауте),словарь Лопатина, Дмитриева(фаил удалён). По возможности, выложите, пожалуйста, их одним архивом на яндекс диск или еще какой-нибудь нормальный обменник. Меня особенно интересуют русский, украинский, польский и английский языки.

Если подождёте до конца месяца, то будет Вам такое счастье (правда, только английский и русский языки и на местном трекере, по крайней мере, пока не найду какой-нибудь ещё, справляющийся с этой задачей).

Добавлено:
И кого-то посрамили, так как простой пользователь нашёл, как
1) обезопаситься от ручной сортировки словарей (в случае неиспользования сортировки по имени или просто направлению перевода), а именно путём следующего изменения содержания функции (или как это там называется) в файле orderandprops.cc:

Код: void OrderAndProps::contextMenuRequested( const QPoint & pos )
{
QMenu menu( this );
QModelIndex idx = ui.searchLine->mapToSource( ui.dictionaryOrder->indexAt( pos ) );
sptr< Dictionary::Class > dict;
if( idx.isValid() && (unsigned)idx.row() < ui.dictionaryOrder->getCurrentDictionaries().size() )
dict = ui.dictionaryOrder->getCurrentDictionaries()[ idx.row() ];

QAction * showHeadwordsAction = NULL;
if ( dict && dict->getWordCount() > 0 )
{
showHeadwordsAction = new QAction( tr( "Dictionary headwords" ), &menu );
menu.addAction( showHeadwordsAction );
}

QAction * sortNameAction = new QAction( tr( "Sort by name" ), &menu );
menu.addAction( sortNameAction );
QAction * sortLangAction = new QAction( tr( "Sort by languages" ), &menu );
menu.addAction( sortLangAction );


QAction * result = menu.exec( ui.dictionaryOrder->mapToGlobal( pos ) );

if( result && result == showHeadwordsAction )
{
emit showDictionaryHeadwords( QString::fromUtf8( dict->getId().c_str() ) );
}

if( result == sortNameAction || result == sortLangAction )
{
vector< sptr< Dictionary::Class > > sortedDicts = ui.dictionaryOrder->getCurrentDictionaries();
if( result == sortNameAction )
sort( sortedDicts.begin(), sortedDicts.end(), dictNameLessThan );
else
sort( sortedDicts.begin(), sortedDicts.end(), dictLessThan );
ui.dictionaryOrder->populate( sortedDicts );
}
}
Автор: andreyefgs
Дата сообщения: 15.05.2016 09:36
Небольшая проблема со словарями в формате StarDict.
Последние версии GD перестали форматировать текст из Ifo-файла из поля description.
Словарь для тестирования:
http://sendfile.su/1233854

СТАЛО)


А вот так БЫЛО и должно быть)



Не обрабатываются ни <BR>, ни \n.
Прежде оба варианта работали.
Хотя в описании формата упомянут только <br>:

Код: description=    // You can use <br> for new line.
Автор: Abs62
Дата сообщения: 15.05.2016 12:52
andreyefgs
Поправил.
Автор: andreyefgs
Дата сообщения: 15.05.2016 13:46

Цитата:
Поправил.

Проверил. Теперь нормально. Спасибо.
Автор: Butodien
Дата сообщения: 16.05.2016 19:15
monsoon 3

Цитата:
В GD есть показ форм слова как у лингво по Ctrl+W?


Нет. Мне тоже не хватает этой функции. Думаю спарсить таблицы с формами слов из Wiktionary.
Подскажите, в каком формате лучше сделать словарь? За каким форматом будущее? XDXF?
Автор: andreyefgs
Дата сообщения: 17.05.2016 17:45

Цитата:
Подскажите, в каком формате лучше сделать словарь? За каким форматом будущее? XDXF?

Исходник делайте в формате GLS.
Потом его легко можно будет конвертировать (автоматически) в выбранный вами формат, чтобы использовать с GD или какой-нибудь другой оболочкой.
Автор: Butodien
Дата сообщения: 18.05.2016 16:31

Цитата:
Исходник делайте в формате GLS.


Не гуглится его спецификация и инструменты для работы с ним, это Babylon glossary source?
Автор: Nikolai2004
Дата сообщения: 18.05.2016 19:46
Butodien

Цитата:
это Babylon glossary source?

да. описание GLS:
http://lingvoboard.ru/forum/viewtopic.php?f=18&t=51

Добавлено:
обсуждение в теме: Электронные словари - технологии, техники, обмен
Автор: andreyefgs
Дата сообщения: 18.05.2016 21:41
Butodien
Здесь это оффтоп, ответил здесь
Автор: monsoon 3
Дата сообщения: 19.05.2016 14:02
Butodien

Цитата:
Мне тоже не хватает этой функции. Думаю спарсить таблицы с формами слов из Wiktionary.

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

Abs62
Можно ли сделать, чтобы при запуске отображалась не вкладка "Добро пожаловать!", а пустая или лучше последняя из предыдущей работы со словарем?

Чем обусловлено ограничение ширины основного окна? В лингво можно в 2 раза уменьшить ширину по сравнению с gd:

Я использую в лингво не минимальную щирину, но все же где-то на треть меньше, чем в gd. 
 
При вызове настроек словарей через "Правка - Словари" окно настроек превышает разрешение экрана.
 
При изменении порядка словарей не очень удобно тягать мышью. Можно ли добавить пару кнопок для перемещения вверх и вниз. Можно было бы также в контекстное меню добавить пункты "Поставить первым" или "Переместить в начало" и "Поставить последним" или "Переместить в конец".

Автор: Abs62
Дата сообщения: 19.05.2016 16:13
monsoon 3

Цитата:
Можно ли сделать, чтобы при запуске отображалась не вкладка "Добро пожаловать!", а пустая или лучше последняя из предыдущей работы со словарем?

Можно, но не нужно.

Цитата:
Чем обусловлено ограничение ширины основного окна?

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

Цитата:
При вызове настроек словарей через "Правка - Словари" окно настроек превышает разрешение экрана.

Qt растягивает окно, чтобы все вкладки с их заголовками влезли.

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

Лишние кнопки - лишнее место на экране... Надо подумать. Вообще-то, десктопный GD под смартфоны не заточен.
Автор: CAEman5
Дата сообщения: 21.05.2016 13:36
andreyefgs

Цитата:
Цитата:
Подскажите, в каком формате лучше сделать словарь? За каким форматом будущее? XDXF?

Исходник делайте в формате GLS.

А GLS поддерживает весь функционал, например, XDXF?

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156

Предыдущая тема: Total video converter 3.14 ошибка конвертации


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.