Словари для Kobo
Goto page 1, 2, 3  Next
 
Libroom Forum IndexKobo
AuthorMessage

knigophil
Член клуба The eBook

Член клуба The eBook



Joined: 24 May 2010
Posts: 2279


Location: SoCal

Posted: 30.08.2013 02:09    

В этой теме я как-то описал (и выложил все необходимое) процедуру конвертирования словаря из формата StarDict в формат Kobo. Уж извините, описание на английском.

У меня самого Kobo нет, так что работоспособность результата не проверял - но слышал, что последние прошивки вроде работу со словарями восстановили (если самодельный словарь переименовывать под имя оригинального словаря, а потом очищать словарный кэш).
Это, конечно, не Kindle, где можно держать и использовать десятки самодельных словарей, но уже кое-что.

Таким образом, ваша задача найти подходящий словарь в dsl-формате (ищите в соответствующей киндловской теме на нашем форуме), скачать утилиту makedict.exe c библиотеками для Windows отсюда, и с её помощью сконвертировать dsl->Stardict, запустив команду:
Code:
makedict -i dsl -o stardict mydictionary.dsl

Или найдите готовый StarDict-словарь. Построить из него словарь для любого Kobo проблемы не представляет, если воспользоваться ссылкой в начале этого сообщения.
_________________
Kindle Voyage
Рекомендации по межформатному конвертированию


Last edited by knigophil on 08.08.2017 11:30; edited 1 time in total
 
View user's profile ^

knigophil
Член клуба The eBook

Член клуба The eBook



Joined: 24 May 2010
Posts: 2279


Location: SoCal

Posted: 11.10.2013 02:38    

Как-то незаметно энтузиазма в этой теме.
Для стимула помещаю пошаговую инструкцию по конвертированию словарей из формата StarDict в формат Kobo.

Допустим, что у вас есть англо-русский словарь в формате StarDict. В этом случае у вас имеются три файла c расширениями dict (или dict.dz), idx и ifo. Имя у всех трех файлов одинаковое, пусть это будет Aprecyan.
Если удалось раздобыть словарь в формате dsl, то его нужно преобразовать к формату StarDict, используя рекомендацию в предыдущем посте.

Итак:

1. Скачайте отсюда файл с питоновским скриптом (zip файл) версии 2.0.
Установка последней версии 3.1.3 слишком сложна для неопытного пользователя.

2. Установите Python 2.7 или 3.1. При установке Python не забудьте проверить, стоит ли галка в опции "Add python.exe to PATH" - это гарантирует, что при вызове python из любой папки Windows найдет и запустит python.exe.

3. Скачайте отсюда файл marisa.zip. Этот файл содержит два исполняемых файла для Windows. Я построил их из опубликованного открытого кода пакета Marisa, который скрипт Penelope вызывает при своей работе. Раскройте zip и поместите exe-файлы куда угодно - например, в c:\tmp.

4. Раскройте упакованный скрипт Penelope и поместите содержимое в любую папку. Любым текстовым редактором откройте файл penelope.py (если поставили Python 2.7) или файл penelope3.py (если поставили Python 3.1), найдите в тексте имена переменных MARISA_BUILD_PATH and MARISA_REVERSE_LOOKUP_PATH и присвойте им значения соответственно "c:/tmp/marisa-build" и "c:/tmp/marisa-reverse-lookup". Сохраните отредактированный файл.

5. Скопируйте все три Aprecyan.* файла вашего StarDict словаря в папку со скриптом Penelope.

6. Сделайте эту папку текущей (как это сделать, прочитайте здесь, в пункте 5) и выдайте команду:
Code:
python penelope.py -p Aprecyan -f en -t ru --output-kobo
... если работаете с Python 2.7. Для Python 3.1 вместо penelope.py введите penelope3.py.
В этой команде параметр -f en сообщает скрипту, что входной язык словаря английский , а параметр -t ru сообщает, что выходной язык русский.

7. В случае успеха в папке со скриптом появится файл Kobo словаря dicthtml-en-ru.zip.


Альтернативный вариант с использованием последней версии penelope 3.1.3

Допустим, что у вас есть англо-русский словарь в формате StarDict. В этом случае у вас имеются три файла c расширениями dict (или dict.dz), idx и ifo. Имя у всех трех файлов одинаковое, пусть это будет Aprecyan. Упакуйте все три файла в zip файл с произвольным именем. Для дальнейшего допустим, что имя этого zip файла dict.zip. Разместите файлы в произвольную папку, например, C:\Kobo dictionaries.
Если удалось раздобыть словарь в формате dsl, то его нужно преобразовать к формату StarDict, используя рекомендацию в предыдущем посте.

Итак:

1. Установите:
- python 3.х (проверено на 3.4, у 3.6 могут быть проблемы).
При установке Python не забудьте проверить, стоит ли галка в опции "Add python.exe to PATH" - это гарантирует, что при вызове python из любой папки Windows найдет и запустит python.exe.
- библиотеку lxml. На 10 августа 2017 года для python 3.4 это lxml-3.8.0.win-amd64-py3.4.exe. 
Брать отсюда.

2. Скачайте скрипт penelope в виде zip файла отсюда. Нажмите на зеленую кнопку Clone or download и выберите пункт Download zip.

3. Распакуйте zip и скопируйте содержание папки penelope-master в любую папку по вашему вкусу (для дальнейшего объяснения предположим, что это папка D:\Converters\Kobo). В этой папке будут вложенные папки bin, penelope и несколько других файлов.

4. В папке bin переименуйте файл penelope (это фактически питоновский код, но файл не имеет расщирения py) в penelope.py. Скопируйте переименованный файл в папку penelope. Папку bin вместе с ее содержимым теперь можно удалить.

5. Скачайте отсюда файл marisa.zip. Этот файл содержит два исполняемых файла для Windows. Я построил их из опубликованного открытого кода пакета Marisa, который скрипт Penelope вызывает при своей работе. Раскройте zip и поместите exe-файлы куда угодно - например, в c:\tmp.

6. Теперь самое сложная, но необходимая работа - внесение небольших изменений в питоновский код.
Эти изменения необходимы для того, чтобы исключить попытки скрипта использовать предварительно сгенерированный питоновский модуль, содержащий программу marisa. Дело в том, что я отказался от предварительной установки этого модуля из-за того, что она требует наличия в компьютере микрософтовской среды разработки программ на языке с++. Чтобы избежать такой предустановки, код marisa в виде exe файлов уже был запасен нами выше в пункте 5. Ниже вы увидите, что при вызове скрипта на исполнение в командной строке будет указано местоположение этого кода.
Начинаем модификацию скриптового кода. 
В папке penelope найдите файл format_kobo.py и откройте его в любом текстовом редакторе (лучше в бесплатном notepad++). Найдите 9 строк с номерами от 67 до 75 включительно. Эти строки выглядят так:
Code:
67        try:
68            # call MARISA with marisa_trie module
69            import marisa_trie
70            trie = marisa_trie.Trie()
71            trie.load(tmp_path)
72            for pair in trie.items():
73                dictionary.add_entry(headword=pair[0], definition=u"")
74            result = True
75        except ImportError as exc:
Нумерация строк осуществляется текстовым редактором, так что в самом тексте эти номера отсутствуют.
Замените эти найденные строки на следующий текст:
Code:
    try:
        raise ValueError('')
    except Exception as error:
При замене обратите внимание на позиционирование текста каждой строки: первая (try)и третья (except...) строки должны начинаться строго под литерой 'k' в слове 'keys' строки с номером 66, а вторая строка должна начинаться с хотя бы одного пробела (лучше с четырех пробелов) перед словом 'raise'.
Сохраните измененный файл format_kobo.py.

7. Сделайте текущей папку со StarDict словарем (как это сделать, прочитайте здесь, в пункте 5). Как указано в начале этого описания, все три файла StarDict словаря упакованы в файл dict.zip,который находится в папке C:\Kobo dictionaries, а папка со скриптом, как предлагается в пункте 3, называется D:\Converters\Kobo. Итак, находясь в текущей папке выдайте команду:
Code:
python D:\Converters\Kobo\penelope.py -i dict  -j stardict -f en -t ru -p kobo -o dicthtml-en-ru --marisa-bin-path C:\tmp


Если полное имя скрипта penelope.py содержит пробелы, то это имя должно быть заключено в двойные апострофы " ", например, "C:\Мои скрипты\penelope.py"
Команда вызовет python 3 и запустит скрипт penelope.py с параметрами.
Параметр -i указывает на имя zip файла, содержащего три StarDict файла (только имя, без расширения zip).
Параметр -f en сообщает скрипту, что входной язык словаря английский , а параметр -t ru сообщает, что выходной язык русский. Параметр -o задает имя результирующего файла со словарем dicthtml-en-ru.zip, параметр --marisa-bin-path сообщает скрипту местоположение исполняемых файлов программы marisa.
При удачном исполнении и завершении работы скрипта на экран монитора будет выведена следующая информация:
Code:
[INFO] Reading input file(s)...
[INFO] Reading input file(s)... done
[INFO] Writing output file(s)...
[INFO]   MARISA cannot be imported as Python module. You might want to install it with:
[INFO]   $ [sudo] pip install marisa_trie
[INFO]   Running 'marisa-build' from 'C:\tmp'
[INFO] Writing output file(s)... done
[INFO] The following file(s) have been created:
[INFO]   dicthtml-en-ru.zip


8. Может также представлять интерес способность penelope 3.1.3 объединять два или более входных словарей в один выходной. Например, можно объединить англо-русский и англо-английский словари в один так, чтобы при успешном поиске на экран ридера выводилась одна объединенная словарная статья, причем есть возможность заранее предусмотреть, какой из переводов в этой статье пойдет первым - русский или английский. Порядок статей меняется, если изменен порядок следования входных словарей в опции -i.
Итак, допустим, что у вас есть два StarDict словаря - англо-русский Апресяна и англо-английский Oxford American, упакованные в два zip файла, соответственно, aprec.zip и oxam.zip.
Построить объединенный словарь можно с помощью команды:

Code:
python D:\Converters\Kobo\penelope.py -i aprec,oxam  -j stardict -f en -t ru -p kobo -o dicthtml-en-ru --marisa-bin-path C:\tmp --sort-after --sort-by-headword


Словари aprec.zip, oxam,zip и dicthtml-en-ru.zip можно взять здесь.
_________________
Kindle Voyage
Рекомендации по межформатному конвертированию


Last edited by knigophil on 24.08.2017 03:29; edited 25 times in total
 
View user's profile ^

Flame1974
Недавний участник форума

Недавний участник форума



Joined: 01 Oct 2013
Posts: 13



Posted: 11.10.2013 21:34    

А готовый результат не выложите?
 
View user's profile ^

knigophil
Член клуба The eBook

Член клуба The eBook



Joined: 24 May 2010
Posts: 2279


Location: SoCal

Posted: 12.10.2013 01:13    

Flame1974

Пробуйте dicthtml-en-ru.zip
И расскажите о результатах.
_________________
Kindle Voyage
Рекомендации по межформатному конвертированию
 
View user's profile ^

Flame1974
Недавний участник форума

Недавний участник форума



Joined: 01 Oct 2013
Posts: 13



Posted: 12.10.2013 10:59    

Боюсь не смогу. Нет книг на английском. Я надеялся на русский толковый словарь. Часто читаю специализированную литературу.
Наверно самому придётся учится конвертировать.
 
View user's profile ^

knigophil
Член клуба The eBook

Член клуба The eBook



Joined: 24 May 2010
Posts: 2279


Location: SoCal

Posted: 12.10.2013 11:34    

Flame1974

Большой толковый словарь русского языка Кузнецова
_________________
Kindle Voyage
Рекомендации по межформатному конвертированию
 
View user's profile ^

lehachuev
Заслуженный участник форума

Заслуженный участник форума



Joined: 13 Apr 2011
Posts: 244



Posted: 13.10.2013 19:04    

knigophil wrote:
Большой толковый словарь русского языка Кузнецова

попробовал - не работает, ни одного слова не нашел. kobo aura hd, прошивка 2.8.1 + патч от metazoa. (вижу, что тема для владельцев kobo glo, но вроде бы то, что работает на glo, должно работать и на touch, и на aura hd...)
_________________
LBook V3+ --> Kobo Aura HD
 
View user's profile ^

Flame1974
Недавний участник форума

Недавний участник форума



Joined: 01 Oct 2013
Posts: 13



Posted: 19.10.2013 20:23    

knigophil wrote:
Большой толковый словарь русского языка Кузнецова

Сначала удалил все словари с устройства, оставил один английский. Скопировал этот словарь, заменив оригинальный. Перегрузился... И всё заработало!!!
 
View user's profile ^

knigophil
Член клуба The eBook

Член клуба The eBook



Joined: 24 May 2010
Posts: 2279


Location: SoCal

Posted: 19.10.2013 21:07    

Flame1974
А как с поиском вручную - клавиатуры же русской нет? Или хэк имеется?
_________________
Kindle Voyage
Рекомендации по межформатному конвертированию
 
View user's profile ^

gredik
Искушенный участник форума

Искушенный участник форума



Joined: 21 Aug 2013
Posts: 69



Posted: 19.10.2013 21:21    

Патч от Metazoa добавляет русский язык в клавиатуру...
 
View user's profile ^

lehachuev
Заслуженный участник форума

Заслуженный участник форума



Joined: 13 Apr 2011
Posts: 244



Posted: 20.10.2013 18:44    

Flame1974 wrote:
Перегрузился... И всё заработало!!!

А на ауру пробовал кто ставить? У меня не пашет. Может, я что-то не так делаю? Хотя что там можно сделать не так...
_________________
LBook V3+ --> Kobo Aura HD
 
View user's profile ^

Flame1974
Недавний участник форума

Недавний участник форума



Joined: 01 Oct 2013
Posts: 13



Posted: 20.10.2013 21:34    

1. Зайдите в меню настроек во вкладку Language
2. Установите какой либо толковый словарь
3. Подключите ридер к компьютеру и войдите в папку .kobo\dict
4. Замените установленный словарь вашим (с именем оригинала)
5. Отключите устройство и перезагрузите его.
 
View user's profile ^

lehachuev
Заслуженный участник форума

Заслуженный участник форума



Joined: 13 Apr 2011
Posts: 244



Posted: 21.10.2013 01:33    

Теперь ясно, в чем дело. Он же не находит половину слов. Он не знает слово "вопрос", слово "истина"... видимо, в прошлый раз мне не повезло, не те слова тыкал. В общем, работает, но относительно. Однако спасибо и за это, альтернативы пока нет.
_________________
LBook V3+ --> Kobo Aura HD
 
View user's profile ^

knigophil
Член клуба The eBook

Член клуба The eBook



Joined: 24 May 2010
Posts: 2279


Location: SoCal

Posted: 21.10.2013 07:55    

lehachuev
Да нет, не все тут ясно. Поставил этот же словарь на Kindle Keyboard. Открыл словарь как книгу и ввел образец для поиска (латиницей). И "вопрос", и "истина" имеются в наличии, большие, подробные статьи. так что вопрос о том, в чем тут истина, остается открытым...
_________________
Kindle Voyage
Рекомендации по межформатному конвертированию
 
View user's profile ^

lehachuev
Заслуженный участник форума

Заслуженный участник форума



Joined: 13 Apr 2011
Posts: 244



Posted: 21.10.2013 08:26    

Я имел ввиду работу словаря на кобо, а не содержание. Конечно, эти слова там есть, но на Кобо Аура я их не вижу.
_________________
LBook V3+ --> Kobo Aura HD
 
View user's profile ^

knigophil
Член клуба The eBook

Член клуба The eBook



Joined: 24 May 2010
Posts: 2279


Location: SoCal

Posted: 21.10.2013 09:35    

lehachuev
Так все-таки, как вы ищете в словаре? Из книги на русском языке вызываете подстрочник или открываете словарь как книгу и вводите образец для поиска?
_________________
Kindle Voyage
Рекомендации по межформатному конвертированию
 
View user's profile ^

lehachuev
Заслуженный участник форума

Заслуженный участник форума



Joined: 13 Apr 2011
Posts: 244



Posted: 21.10.2013 09:44    

А как я его на кобо аура открою как книгу? И зачем?
Пользоваться словарем там можно двумя способами:
1. Выделив нужное слово в тексте.
2. Зайдя в меню "словарь".
Словарь работает криво. вбиваю слово "хотеть" - появляется определение. А на слово "следовать" определения нет, слово якобы не найдено, хотя, когда я его набираю, под строкой поиска появляются варианты. В числе коих нужное мне слово... То же и с остальными "не найденными" - варианты откуда-то берутся, но самих слов в словаре "нет" Sad
_________________
LBook V3+ --> Kobo Aura HD
 
View user's profile ^

knigophil
Член клуба The eBook

Член клуба The eBook



Joined: 24 May 2010
Posts: 2279


Location: SoCal

Posted: 21.10.2013 09:51    

lehachuev
Спасибо, понятно. Значит, есть на Кобо кириллическая клавиатура? Это хэк, поди?
_________________
Kindle Voyage
Рекомендации по межформатному конвертированию
 
View user's profile ^

lehachuev
Заслуженный участник форума

Заслуженный участник форума



Joined: 13 Apr 2011
Posts: 244



Posted: 21.10.2013 10:00    

Есть, через хак.
_________________
LBook V3+ --> Kobo Aura HD
 
View user's profile ^

alexg86
Новенький участник форума

Новенький участник форума



Joined: 13 Apr 2014
Posts: 2


Location: Latvia

Posted: 13.04.2014 16:26    

Господа, у кого-нибудь удалось создать рабочий толковый словарь для Kobo? Если, да то поделитесь. Убил полдня на этих питонов, пенелоп и марин. Не знаю кем и для кого были написаны (а на этом форуме просто переведены с оригинальных сайтов) эти инструкции, но явно не людьми для людей.

Last edited by alexg86 on 13.04.2014 23:28; edited 1 time in total
 
View user's profile ^
Libroom Forum IndexKoboAll times are GMT + 4 Hours
Goto page 1, 2, 3  Next
Page 1 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© Libroom, 2021