mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Rename BeBook driver to Hanlin to avoid confustion as it supports the EZReader, and LBook in addition to the BeBook. Move Boox and have it subclass Hanlin driver as it uses 90% of the Hanlin driver's code.
This commit is contained in:
parent
95c298b5af
commit
e9c01f2226
@ -400,7 +400,7 @@ from calibre.ebooks.txt.output import TXTOutput
|
||||
from calibre.customize.profiles import input_profiles, output_profiles
|
||||
|
||||
|
||||
from calibre.devices.bebook.driver import BEBOOK, BEBOOK_MINI
|
||||
from calibre.devices.hanlin.driver import HANLINV3, HANLINV5, BOOX
|
||||
from calibre.devices.blackberry.driver import BLACKBERRY
|
||||
from calibre.devices.cybookg3.driver import CYBOOKG3, CYBOOK_OPUS
|
||||
from calibre.devices.eb600.driver import EB600, COOL_ER, SHINEBOOK, \
|
||||
@ -417,7 +417,6 @@ from calibre.devices.nokia.driver import N770, N810
|
||||
from calibre.devices.eslick.driver import ESLICK
|
||||
from calibre.devices.nuut2.driver import NUUT2
|
||||
from calibre.devices.iriver.driver import IRIVER_STORY
|
||||
from calibre.devices.boox.driver import BOOX
|
||||
|
||||
from calibre.ebooks.metadata.fetch import GoogleBooks, ISBNDB, Amazon
|
||||
plugins = [HTML2ZIP, PML2PMLZ, GoogleBooks, ISBNDB, Amazon]
|
||||
@ -455,8 +454,8 @@ plugins += [
|
||||
TXTOutput,
|
||||
]
|
||||
plugins += [
|
||||
BEBOOK,
|
||||
BEBOOK_MINI,
|
||||
HANLINV3,
|
||||
HANLINV5,
|
||||
BLACKBERRY,
|
||||
CYBOOKG3,
|
||||
ILIAD,
|
||||
|
@ -1,87 +0,0 @@
|
||||
__license__ = 'GPL v3'
|
||||
__copyright__ = '2009, Jesus Manuel Marinho Valcarce <jjjesss at gmail.com>'
|
||||
__docformat__ = 'restructuredtext en'
|
||||
|
||||
'''
|
||||
Device driver for BOOX
|
||||
'''
|
||||
|
||||
import re
|
||||
|
||||
from calibre.devices.usbms.driver import USBMS
|
||||
|
||||
class BOOX(USBMS):
|
||||
|
||||
name = 'BOOX driver'
|
||||
gui_name = 'BOOX'
|
||||
description = _('Communicate with the BOOX eBook reader.')
|
||||
author = 'Jesus Manuel Marinho Valcarce'
|
||||
supported_platforms = ['windows', 'osx', 'linux']
|
||||
|
||||
# Ordered list of supported formats
|
||||
FORMATS = ['ebub', 'pdf', 'html', 'txt', 'rtf', 'mobi', 'prc', 'chm']
|
||||
|
||||
VENDOR_ID = [0x0525]
|
||||
PRODUCT_ID = [0xa4a5]
|
||||
BCD = [0x322]
|
||||
|
||||
VENDOR_NAME = 'Linux 2.6.26-466-ga04670e with fsl-usb2-udc'
|
||||
WINDOWS_MAIN_MEM = 'FILE-STOR_GADGET'
|
||||
WINDOWS_CARD_A_MEM = 'FILE-STOR_GADGET'
|
||||
|
||||
OSX_MAIN_MEM = 'Linux File-Stor Gadget Media'
|
||||
OSX_CARD_A_MEM = 'Linux File-Stor Gadget Media'
|
||||
|
||||
MAIN_MEMORY_VOLUME_LABEL = 'BOOX Internal Memory'
|
||||
STORAGE_CARD_VOLUME_LABEL = 'BOOX Storage Card'
|
||||
|
||||
EBOOK_DIR_MAIN = 'MyBooks'
|
||||
EBOOK_DIR_CARD_A = 'MyBooks'
|
||||
SUPPORTS_SUB_DIRS = True
|
||||
|
||||
def windows_sort_drives(self, drives):
|
||||
main = drives.get('main', None)
|
||||
card = drives.get('carda', None)
|
||||
if card and main and card > main:
|
||||
drives['main'] = card
|
||||
drives['carda'] = main
|
||||
|
||||
if card and not main:
|
||||
drives['main'] = card
|
||||
drives['carda'] = None
|
||||
|
||||
return drives
|
||||
|
||||
def osx_sort_names(self, names):
|
||||
main = names.get('main', None)
|
||||
card = names.get('carda', None)
|
||||
|
||||
try:
|
||||
main_num = int(re.findall('\d+', main)[0]) if main else None
|
||||
except:
|
||||
main_num = None
|
||||
try:
|
||||
card_num = int(re.findall('\d+', card)[0]) if card else None
|
||||
except:
|
||||
card_num = None
|
||||
|
||||
if card_num is not None and main_num is not None and card_num > main_num:
|
||||
names['main'] = card
|
||||
names['carda'] = main
|
||||
|
||||
if card and not main:
|
||||
names['main'] = card
|
||||
names['carda'] = None
|
||||
|
||||
return names
|
||||
|
||||
def linux_swap_drives(self, drives):
|
||||
if len(drives) < 2: return drives
|
||||
drives = list(drives)
|
||||
t = drives[0]
|
||||
drives[0] = drives[1]
|
||||
drives[1] = t
|
||||
return tuple(drives)
|
||||
|
||||
|
||||
|
@ -5,23 +5,23 @@ __copyright__ = '2009, Tijmen Ruizendaal <tijmen at mybebook.com>'
|
||||
__docformat__ = 'restructuredtext en'
|
||||
|
||||
'''
|
||||
Device driver for BeBook
|
||||
Device driver for Hanlin
|
||||
'''
|
||||
|
||||
import re
|
||||
|
||||
from calibre.devices.usbms.driver import USBMS
|
||||
|
||||
class BEBOOK(USBMS):
|
||||
class HANLINV3(USBMS):
|
||||
|
||||
name = 'BeBook driver'
|
||||
gui_name = 'BeBook'
|
||||
description = _('Communicate with the BeBook eBook reader.')
|
||||
name = 'Hanlin V3 driver'
|
||||
gui_name = 'Hanlin V3'
|
||||
description = _('Communicate with Hanlin V3 eBook readers.')
|
||||
author = 'Tijmen Ruizendaal'
|
||||
supported_platforms = ['windows', 'osx', 'linux']
|
||||
|
||||
# Ordered list of supported formats
|
||||
FORMATS = ['mobi', 'epub', 'fb2', 'lit', 'prc', 'pdf', 'rtf', 'txt']
|
||||
FORMATS = ['epub', 'mobi', 'fb2', 'lit', 'prc', 'pdf', 'rtf', 'txt']
|
||||
|
||||
VENDOR_ID = [0x0525]
|
||||
PRODUCT_ID = [0x8803, 0x6803]
|
||||
@ -34,8 +34,8 @@ class BEBOOK(USBMS):
|
||||
OSX_MAIN_MEM = 'Linux File-Stor Gadget Media'
|
||||
OSX_CARD_A_MEM = 'Linux File-Stor Gadget Media'
|
||||
|
||||
MAIN_MEMORY_VOLUME_LABEL = 'BeBook Internal Memory'
|
||||
STORAGE_CARD_VOLUME_LABEL = 'BeBook Storage Card'
|
||||
MAIN_MEMORY_VOLUME_LABEL = 'Hanlin V3 Internal Memory'
|
||||
STORAGE_CARD_VOLUME_LABEL = 'Hanlin V3 Storage Card'
|
||||
|
||||
SUPPORTS_SUB_DIRS = True
|
||||
|
||||
@ -89,18 +89,40 @@ class BEBOOK(USBMS):
|
||||
return tuple(drives)
|
||||
|
||||
|
||||
class BEBOOK_MINI(BEBOOK):
|
||||
name = 'BeBook Mini driver'
|
||||
gui_name = 'BeBook Mini'
|
||||
description = _('Communicate with the BeBook Mini eBook reader.')
|
||||
class HANLINV5(HANLINV3):
|
||||
name = 'Hanlin V5 driver'
|
||||
gui_name = 'Hanlin V5'
|
||||
description = _('Communicate with Hanlin V5 eBook readers.')
|
||||
|
||||
|
||||
VENDOR_ID = [0x0492]
|
||||
PRODUCT_ID = [0x8813]
|
||||
BCD = [0x319]
|
||||
|
||||
OSX_MAIN_MEM = 'BeBook Mini Internal Memory'
|
||||
OSX_CARD_MEM = 'BeBook Mini Storage Card'
|
||||
OSX_MAIN_MEM = 'Hanlin V5 Internal Memory'
|
||||
OSX_CARD_MEM = 'Hanlin V5 Storage Card'
|
||||
|
||||
MAIN_MEMORY_VOLUME_LABEL = 'BeBook Mini Internal Memory'
|
||||
STORAGE_CARD_VOLUME_LABEL = 'BeBook Mini Storage Card'
|
||||
MAIN_MEMORY_VOLUME_LABEL = 'Hanlin V5 Internal Memory'
|
||||
STORAGE_CARD_VOLUME_LABEL = 'Hanlin V5 Storage Card'
|
||||
|
||||
|
||||
class BOOX(HANLINV3):
|
||||
|
||||
name = 'BOOX driver'
|
||||
gui_name = 'BOOX'
|
||||
description = _('Communicate with the BOOX eBook reader.')
|
||||
author = 'Jesus Manuel Marinho Valcarce'
|
||||
supported_platforms = ['windows', 'osx', 'linux']
|
||||
|
||||
# Ordered list of supported formats
|
||||
FORMATS = ['ebub', 'pdf', 'html', 'txt', 'rtf', 'mobi', 'prc', 'chm']
|
||||
|
||||
VENDOR_ID = [0x0525]
|
||||
PRODUCT_ID = [0xa4a5]
|
||||
BCD = [0x322]
|
||||
|
||||
MAIN_MEMORY_VOLUME_LABEL = 'BOOX Internal Memory'
|
||||
STORAGE_CARD_VOLUME_LABEL = 'BOOX Storage Card'
|
||||
|
||||
EBOOK_DIR_MAIN = 'MyBooks'
|
||||
EBOOK_DIR_CARD_A = 'MyBooks'
|
Loading…
x
Reference in New Issue
Block a user