mirror of
				https://github.com/kovidgoyal/calibre.git
				synced 2025-11-03 19:17:02 -05:00 
			
		
		
		
	Add support for the Boeye Digital Reader .
This commit is contained in:
		
							parent
							
								
									5bf153338b
								
							
						
					
					
						commit
						25a4310fb9
					
				@ -613,6 +613,7 @@ from calibre.devices.misc import PALMPRE, AVANT, SWEEX, PDNOVEL, \
 | 
				
			|||||||
from calibre.devices.folder_device.driver import FOLDER_DEVICE_FOR_CONFIG
 | 
					from calibre.devices.folder_device.driver import FOLDER_DEVICE_FOR_CONFIG
 | 
				
			||||||
from calibre.devices.kobo.driver import KOBO
 | 
					from calibre.devices.kobo.driver import KOBO
 | 
				
			||||||
from calibre.devices.bambook.driver import BAMBOOK
 | 
					from calibre.devices.bambook.driver import BAMBOOK
 | 
				
			||||||
 | 
					from calibre.devices.boeye.driver import BOEYE_BEX, BOEYE_BDX
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from calibre.library.catalog import CSV_XML, EPUB_MOBI, BIBTEX
 | 
					from calibre.library.catalog import CSV_XML, EPUB_MOBI, BIBTEX
 | 
				
			||||||
from calibre.ebooks.epub.fix.unmanifested import Unmanifested
 | 
					from calibre.ebooks.epub.fix.unmanifested import Unmanifested
 | 
				
			||||||
@ -743,6 +744,8 @@ plugins += [
 | 
				
			|||||||
    EEEREADER,
 | 
					    EEEREADER,
 | 
				
			||||||
    NEXTBOOK,
 | 
					    NEXTBOOK,
 | 
				
			||||||
    ITUNES,
 | 
					    ITUNES,
 | 
				
			||||||
 | 
					    BOEYE_BEX,
 | 
				
			||||||
 | 
					    BOEYE_BDX,
 | 
				
			||||||
    USER_DEFINED,
 | 
					    USER_DEFINED,
 | 
				
			||||||
]
 | 
					]
 | 
				
			||||||
plugins += [x for x in list(locals().values()) if isinstance(x, type) and \
 | 
					plugins += [x for x in list(locals().values()) if isinstance(x, type) and \
 | 
				
			||||||
 | 
				
			|||||||
@ -215,10 +215,50 @@ class NookInput(InputProfile):
 | 
				
			|||||||
    fbase                     = 16
 | 
					    fbase                     = 16
 | 
				
			||||||
    fsizes                    = [12, 12, 14, 16, 18, 20, 22, 24]
 | 
					    fsizes                    = [12, 12, 14, 16, 18, 20, 22, 24]
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
 | 
					class BoeyeG5Input(InputProfile):
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    author      = 'Ken'
 | 
				
			||||||
 | 
					    name        = 'Boeye Digital Reader G5'
 | 
				
			||||||
 | 
					    short_name  = 'boeyeg5'
 | 
				
			||||||
 | 
					    description = _('This profile is intended for the Boeye G5.')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Screen size is a best guess
 | 
				
			||||||
 | 
					    screen_size                = (600, 800)
 | 
				
			||||||
 | 
					    dpi                        = 200
 | 
				
			||||||
 | 
					    fbase                      = 16
 | 
				
			||||||
 | 
					    fsizes                     = [12, 14, 16, 18, 20, 22, 24]
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					class BoeyeG6Input(InputProfile):
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    author      = 'Ken'
 | 
				
			||||||
 | 
					    name        = 'Boeye Digital Reader G6'
 | 
				
			||||||
 | 
					    short_name  = 'boeyeg6'
 | 
				
			||||||
 | 
					    description = _('This profile is intended for the Boeye G6.')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Screen size is a best guess
 | 
				
			||||||
 | 
					    screen_size                = (600, 800)
 | 
				
			||||||
 | 
					    dpi                        = 166.66
 | 
				
			||||||
 | 
					    fbase                      = 16
 | 
				
			||||||
 | 
					    fsizes                     = [12, 14, 16, 18, 20, 22, 24]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class BoeyeG10Input(InputProfile):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    author      = 'Ken'
 | 
				
			||||||
 | 
					    name        = 'Boeye Digital Reader G10'
 | 
				
			||||||
 | 
					    short_name  = 'boeyeg10'
 | 
				
			||||||
 | 
					    description = _('This profile is intended for the Boeye G10.')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Screen size is a best guess
 | 
				
			||||||
 | 
					    screen_size                = (825, 1200)
 | 
				
			||||||
 | 
					    dpi                        = 150
 | 
				
			||||||
 | 
					    fbase                      = 16
 | 
				
			||||||
 | 
					    fsizes                     = [12, 14, 16, 18, 20, 22, 24]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
input_profiles = [InputProfile, SonyReaderInput, SonyReader300Input,
 | 
					input_profiles = [InputProfile, SonyReaderInput, SonyReader300Input,
 | 
				
			||||||
        SonyReader900Input, MSReaderInput, MobipocketInput, HanlinV3Input,
 | 
					        SonyReader900Input, MSReaderInput, MobipocketInput, HanlinV3Input,
 | 
				
			||||||
        HanlinV5Input, CybookG3Input, CybookOpusInput, KindleInput, IlliadInput,
 | 
					        HanlinV5Input, CybookG3Input, CybookOpusInput, KindleInput, IlliadInput,
 | 
				
			||||||
        IRexDR1000Input, IRexDR800Input, NookInput]
 | 
					        IRexDR1000Input, IRexDR800Input, NookInput, BoeyeG5Input, BoeyeG6Input, BoeyeG10Input]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
input_profiles.sort(cmp=lambda x,y:cmp(x.name.lower(), y.name.lower()))
 | 
					input_profiles.sort(cmp=lambda x,y:cmp(x.name.lower(), y.name.lower()))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -731,12 +771,57 @@ class BambookOutput(OutputProfile):
 | 
				
			|||||||
    fbase                     = 12
 | 
					    fbase                     = 12
 | 
				
			||||||
    fsizes                    = [10, 12, 14, 16]
 | 
					    fsizes                    = [10, 12, 14, 16]
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
 | 
					class BoeyeG5Output(OutputProfile):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    author      = 'Ken'
 | 
				
			||||||
 | 
					    name        = 'Boeye Digital Reader G5'
 | 
				
			||||||
 | 
					    short_name  = 'boeyeg5'
 | 
				
			||||||
 | 
					    description = _('This profile is intended for the Boeye Digital Reader G5.')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Screen size is a best guess
 | 
				
			||||||
 | 
					    screen_size               = (600, 800)
 | 
				
			||||||
 | 
					    comic_screen_size         = (600, 740)
 | 
				
			||||||
 | 
					    dpi                       = 200
 | 
				
			||||||
 | 
					    fbase                     = 16
 | 
				
			||||||
 | 
					    fsizes                    = [12, 14, 16, 18, 20, 22, 24]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class BoeyeG6Output(OutputProfile):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    author      = 'Ken'
 | 
				
			||||||
 | 
					    name        = 'Boeye Digital Reader G6'
 | 
				
			||||||
 | 
					    short_name  = 'boeyeg6'
 | 
				
			||||||
 | 
					    description = _('This profile is intended for the Boeye Digital Reader G6.')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Screen size is a best guess
 | 
				
			||||||
 | 
					    screen_size               = (600, 800)
 | 
				
			||||||
 | 
					    comic_screen_size         = (600, 740)
 | 
				
			||||||
 | 
					    dpi                       = 160
 | 
				
			||||||
 | 
					    fbase                     = 16
 | 
				
			||||||
 | 
					    fsizes                    = [12, 14, 16, 18, 20, 22, 24]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class BoeyeG10Output(OutputProfile):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    author      = 'Ken'
 | 
				
			||||||
 | 
					    name        = 'Boeye Digital Reader G10'
 | 
				
			||||||
 | 
					    short_name  = 'boeyeg10'
 | 
				
			||||||
 | 
					    description = _('This profile is intended for the Boeye Digital Reader G10.')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Screen size is a best guess
 | 
				
			||||||
 | 
					    screen_size               = (825, 1200)
 | 
				
			||||||
 | 
					    comic_screen_size         = (824, 1140)
 | 
				
			||||||
 | 
					    dpi                       = 150
 | 
				
			||||||
 | 
					    fbase                     = 16
 | 
				
			||||||
 | 
					    fsizes                    = [12, 14, 16, 18, 20, 22, 24]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
output_profiles = [OutputProfile, SonyReaderOutput, SonyReader300Output,
 | 
					output_profiles = [OutputProfile, SonyReaderOutput, SonyReader300Output,
 | 
				
			||||||
        SonyReader900Output, MSReaderOutput, MobipocketOutput, HanlinV3Output,
 | 
					        SonyReader900Output, MSReaderOutput, MobipocketOutput, HanlinV3Output,
 | 
				
			||||||
        HanlinV5Output, CybookG3Output, CybookOpusOutput, KindleOutput,
 | 
					        HanlinV5Output, CybookG3Output, CybookOpusOutput, KindleOutput,
 | 
				
			||||||
        iPadOutput, KoboReaderOutput, TabletOutput, SamsungGalaxy,
 | 
					        iPadOutput, KoboReaderOutput, TabletOutput, SamsungGalaxy,
 | 
				
			||||||
        SonyReaderLandscapeOutput, KindleDXOutput, IlliadOutput,
 | 
					        SonyReaderLandscapeOutput, KindleDXOutput, IlliadOutput,
 | 
				
			||||||
        IRexDR1000Output, IRexDR800Output, JetBook5Output, NookOutput,
 | 
					        IRexDR1000Output, IRexDR800Output, JetBook5Output, NookOutput,
 | 
				
			||||||
        BambookOutput, NookColorOutput, GenericEink, GenericEinkLarge]
 | 
					        BambookOutput, NookColorOutput, BoeyeG5Output, BoeyeG6Output, BoeyeG10Output,
 | 
				
			||||||
 | 
					        GenericEink, GenericEinkLarge]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
output_profiles.sort(cmp=lambda x,y:cmp(x.name.lower(), y.name.lower()))
 | 
					output_profiles.sort(cmp=lambda x,y:cmp(x.name.lower(), y.name.lower()))
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										0
									
								
								src/calibre/devices/boeye/__init__.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								src/calibre/devices/boeye/__init__.py
									
									
									
									
									
										Normal file
									
								
							
							
								
								
									
										57
									
								
								src/calibre/devices/boeye/driver.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								src/calibre/devices/boeye/driver.py
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,57 @@
 | 
				
			|||||||
 | 
					__license__   = 'GPL v3'
 | 
				
			||||||
 | 
					__copyright__ = '2011,  Ken <ken at szboeye.com>'
 | 
				
			||||||
 | 
					__docformat__ = 'restructuredtext en'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					'''
 | 
				
			||||||
 | 
					Device driver for BOEYE serial readers
 | 
				
			||||||
 | 
					'''
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import re
 | 
				
			||||||
 | 
					from calibre.devices.usbms.driver import USBMS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class BOEYE_BEX(USBMS):
 | 
				
			||||||
 | 
						name		= 'BOEYE BEX reader driver'
 | 
				
			||||||
 | 
						gui_name	= 'BOEYE BEX'
 | 
				
			||||||
 | 
						description	= _('Communicate with BOEYE BEX Serial eBook readers.')
 | 
				
			||||||
 | 
						author		= 'szboeye'
 | 
				
			||||||
 | 
						supported_platforms = ['windows', 'osx', 'linux']
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						FORMATS		= ['epub', 'mobi', 'fb2', 'lit', 'prc', 'pdf', 'rtf', 'txt', 'djvu', 'doc', 'chm', 'html', 'zip', 'pdb']
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						VENDOR_ID	= [0x0085]
 | 
				
			||||||
 | 
						PRODUCT_ID	= [0x600]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						VENDOR_NAME	 = 'LINUX'
 | 
				
			||||||
 | 
						WINDOWS_MAIN_MEM = 'FILE-STOR_GADGET'
 | 
				
			||||||
 | 
						OSX_MAIN_MEM	 = 'Linux File-Stor Gadget Media'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						MAIN_MEMORY_VOLUME_LABEL  = 'BOEYE BEX Storage Card'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						EBOOK_DIR_MAIN	  = 'Documents'
 | 
				
			||||||
 | 
						SUPPORTS_SUB_DIRS = True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class BOEYE_BDX(USBMS):
 | 
				
			||||||
 | 
						name		= 'BOEYE BDX reader driver'
 | 
				
			||||||
 | 
						gui_name	= 'BOEYE BDX'
 | 
				
			||||||
 | 
						description	= _('Communicate with BOEYE BDX serial eBook readers.')
 | 
				
			||||||
 | 
						author		= 'szboeye'
 | 
				
			||||||
 | 
						supported_platforms = ['windows', 'osx', 'linux']
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						FORMATS		= ['epub', 'mobi', 'fb2', 'lit', 'prc', 'pdf', 'rtf', 'txt', 'djvu', 'doc', 'chm', 'html', 'zip', 'pdb']
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						VENDOR_ID	= [0x0085]
 | 
				
			||||||
 | 
						PRODUCT_ID	= [0x800]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						VENDOR_NAME	 = 'LINUX'
 | 
				
			||||||
 | 
						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  = 'BOEYE BDX Internal Memory'
 | 
				
			||||||
 | 
						STORAGE_CARD_VOLUME_LABEL = 'BOEYE BDX Storage Card'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						EBOOK_DIR_MAIN	 = 'Documents'
 | 
				
			||||||
 | 
						EBOOK_DIR_CARD_A = 'Documents'
 | 
				
			||||||
 | 
						SUPPORTS_SUB_DIRS = True
 | 
				
			||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user