CAEman5
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору 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 ); } } | 2) сделать опцию автозапуска оболочки рабочей, а именно путём следующего изменения содержания функции (или как это там называется) в файле mainwindow.cc: Код: void MainWindow::setAutostart(bool autostart) { #ifdef Q_OS_WIN32 QSettings reg("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run", QSettings::NativeFormat); if (autostart) { QString app_fname = QString("\"%1\"").arg( QCoreApplication::applicationFilePath() ); app_fname.replace("/", "\\"); reg.setValue(QCoreApplication::applicationName(), app_fname); } else { reg.remove(QCoreApplication::applicationName()); } reg.sync(); #else // this is for Linux QString app_fname = QFileInfo(QCoreApplication::applicationFilePath()).baseName(); QString lnk(QDir::homePath()+"/.config/autostart/"+"goldendict.desktop"); if (autostart) { QFile f("/usr/share/applications/goldendict.desktop"); f.link(lnk); } else { QFile::remove(lnk); } #endif } | 3) подгружать к XDXF словарям создаваемые при конвертации dict.bmp иконки, а именно путём следующего изменения содержания функции (или как это там называется) в файле xdxf.cc: Код: void XdxfDictionary::loadIcon() throw() { if ( dictionaryIconLoaded ) return; QString fileName = QDir::fromNativeSeparators( FsEncoding::decode( getDictionaryFilenames()[ 0 ].c_str() ) ); QFileInfo baseInfo( fileName ); fileName = baseInfo.absoluteDir().absoluteFilePath( "icon32.png" ); QFileInfo info( fileName ); if( !info.isFile() ) { fileName = baseInfo.absoluteDir().absoluteFilePath( "icon16.png" ); info = QFileInfo( fileName ); } if( !info.isFile() ) { fileName = baseInfo.absoluteDir().absoluteFilePath( "dict.bmp" ); info = QFileInfo( fileName ); } if ( info.isFile() ) loadIconFromFile( fileName, true ); if ( dictionaryIcon.isNull() ) { // Load failed -- use default icons dictionaryIcon = QIcon(":/icons/icon32_xdxf.png"); dictionaryNativeIcon = QIcon(":/icons/icon32_xdxf.png"); } dictionaryIconLoaded = true; } | 4) сделать правильным отображение заголовков вкладок Панели поиска и Панели навигации по переводу, а именно путём удаления в файле locale/ru_RU.ts из переводов соответствующих заголовков акселераторов & (&)... Кстати, у AAR словарей не определяются языки даже в случае подобающего переименования файлов (но я не стал с этим разбираться, так как формат устаревший, хотя в нём сделаны некоторые словари более полными, чем соответствующие SLOB или ZIM)... | Всего записей: 61 | Зарегистр. 02-04-2016 | Отправлено: 13:55 14-05-2016 | Исправлено: CAEman5, 14:21 14-05-2016 |
|