Sync to trunk.

This commit is contained in:
John Schember 2010-01-03 14:49:53 -05:00
commit 48f25770bb
9 changed files with 168 additions and 117 deletions

View File

@ -0,0 +1,34 @@
#!/usr/bin/env python
__license__ = 'GPL v3'
__copyright__ = '2009, Bruce <bruce at dotdoh.com>'
'''
asiaone.com
'''
from calibre.web.feeds.news import BasicNewsRecipe
class AsiaOne(BasicNewsRecipe):
title = u'AsiaOne'
oldest_article = 3
max_articles_per_feed = 100
__author__ = 'Bruce'
description = 'News from Singapore Press Holdings Portal'
no_stylesheets = False
language = 'en_SG'
remove_tags = [dict(name='span', attrs={'class':'footer'})]
keep_only_tags = [dict(name=['span', 'p', 'br', 'b', 'i', 'hr'])]
feeds = [
('News', 'http://www.asiaone.com/a1mborss/News.xml'),
('Business', 'http://www.asiaone.com/a1mborss/Business.xml'),
('Education', 'http://www.asiaone.com/a1mborss/Education.xml'),
('Health', 'http://www.asiaone.com/a1mborss/Health.xml'),
('Digital', 'http://www.asiaone.com/a1mborss/Digital.xml'),
]
def print_version(self, url):
return url.replace('http://www.asiaone.com/', 'http://www.asiaone.com/print/')

View File

@ -19,7 +19,7 @@ class StraitsTimes(BasicNewsRecipe):
encoding = 'cp1252' encoding = 'cp1252'
publisher = 'Singapore Press Holdings Ltd.' publisher = 'Singapore Press Holdings Ltd.'
category = 'news, politics, singapore, asia' category = 'news, politics, singapore, asia'
language = 'en' language = 'en_SG'
extra_css = ' .top_headline{font-size: x-large; font-weight: bold} ' extra_css = ' .top_headline{font-size: x-large; font-weight: bold} '
conversion_options = { conversion_options = {

View File

@ -16,7 +16,7 @@ class Edgesingapore(BasicNewsRecipe):
category = 'news, finances, singapore' category = 'news, finances, singapore'
language = 'en' language = 'en'
lang = 'en' lang = 'en_SG'
oldest_article = 15 oldest_article = 15
max_articles_per_feed = 100 max_articles_per_feed = 100
no_stylesheets = True no_stylesheets = True

View File

@ -263,8 +263,8 @@ class Build(Command):
objects = [] objects = []
einc = self.inc_dirs_to_cflags(ext.inc_dirs) einc = self.inc_dirs_to_cflags(ext.inc_dirs)
obj_dir = self.j(self.obj_dir, ext.name) obj_dir = self.j(self.obj_dir, ext.name)
ddk_flags = ['-I'+x for x in win_ddk]
if ext.needs_ddk: if ext.needs_ddk:
ddk_flags = ['-I'+x for x in win_ddk]
i = [i for i in range(len(cflags)) if 'VC\\INCLUDE' in cflags[i]][0] i = [i for i in range(len(cflags)) if 'VC\\INCLUDE' in cflags[i]][0]
cflags[i+1:i+2] = ddk_flags cflags[i+1:i+2] = ddk_flags
if not os.path.exists(obj_dir): if not os.path.exists(obj_dir):

View File

@ -378,18 +378,30 @@ class Device(DeviceConfig, DevicePlugin):
pat = re.compile(r'(?P<m>\d+)([a-z]+(?P<p>\d+)){0,1}') pat = re.compile(r'(?P<m>\d+)([a-z]+(?P<p>\d+)){0,1}')
def nums(x): def nums(x):
'Return (disk num, partition number)'
m = pat.search(x) m = pat.search(x)
if m is None: if m is None:
return (10000, 0) return (10000, -1)
g = m.groupdict() g = m.groupdict()
if g['p'] is None: if g['p'] is None:
g['p'] = 0 g['p'] = 0
return map(int, (g.get('m'), g.get('p'))) return map(int, (g.get('m'), g.get('p')))
def dcmp(x, y): def dcmp(x, y):
'''
Sorting based on the following scheme:
- disks without partitions are first
- sub sorted based on disk number
- disks with partitions are sorted first on
disk number, then on partition number
'''
x = x.rpartition('/')[-1] x = x.rpartition('/')[-1]
y = y.rpartition('/')[-1] y = y.rpartition('/')[-1]
x, y = nums(x), nums(y) x, y = nums(x), nums(y)
if x[1] == 0 and y[1] > 0:
return cmp(1, 2)
if x[1] > 0 and y[1] == 0:
return cmp(2, 1)
ans = cmp(x[0], y[0]) ans = cmp(x[0], y[0])
if ans == 0: if ans == 0:
ans = cmp(x[1], y[1]) ans = cmp(x[1], y[1])
@ -405,11 +417,15 @@ class Device(DeviceConfig, DevicePlugin):
return drives return drives
def osx_bsd_names(self): def osx_bsd_names(self):
try: drives = []
return self._osx_bsd_names() for i in range(3):
except: try:
time.sleep(2) drives = self._osx_bsd_names()
return self._osx_bsd_names() if len(drives) > 1: return drives
except:
if i == 2: raise
time.sleep(3)
return drives
def open_osx(self): def open_osx(self):
drives = self.osx_bsd_names() drives = self.osx_bsd_names()

View File

@ -650,7 +650,7 @@ class BooksModel(QAbstractTableModel):
match = pat.search(val) match = pat.search(val)
if match is not None: if match is not None:
self.db.set_series_index(id, float(match.group(1))) self.db.set_series_index(id, float(match.group(1)))
val = pat.sub('', val) val = pat.sub('', val).strip()
elif val: elif val:
ni = self.db.get_next_series_num_for(val) ni = self.db.get_next_series_num_for(val)
if ni != 1: if ni != 1:

View File

@ -624,12 +624,13 @@ class EnComboBox(QComboBox):
def __init__(self, *args): def __init__(self, *args):
QComboBox.__init__(self, *args) QComboBox.__init__(self, *args)
self.setLineEdit(EnLineEdit(self)) self.setLineEdit(EnLineEdit(self))
self.setAutoCompletionCaseSensitivity(Qt.CaseSensitive)
def text(self): def text(self):
return unicode(self.currentText()) return unicode(self.currentText())
def setText(self, text): def setText(self, text):
idx = self.findText(text, Qt.MatchFixedString) idx = self.findText(text, Qt.MatchFixedString|Qt.MatchCaseSensitive)
if idx == -1: if idx == -1:
self.insertItem(0, text) self.insertItem(0, text)
idx = 0 idx = 0

View File

@ -5,8 +5,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: calibre 0.6.31\n" "Project-Id-Version: calibre 0.6.31\n"
"POT-Creation-Date: 2010-01-01 13:05+MST\n" "POT-Creation-Date: 2010-01-03 10:03+MST\n"
"PO-Revision-Date: 2010-01-01 13:05+MST\n" "PO-Revision-Date: 2010-01-03 10:03+MST\n"
"Last-Translator: Automatically generated\n" "Last-Translator: Automatically generated\n"
"Language-Team: LANGUAGE\n" "Language-Team: LANGUAGE\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -105,10 +105,10 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:547 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:565
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:556 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:574
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:773 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:794
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:797
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:109 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:109
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:143 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:143
@ -131,7 +131,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/server.py:645 #: /home/kovid/work/calibre/src/calibre/library/server.py:645
#: /home/kovid/work/calibre/src/calibre/library/server.py:717 #: /home/kovid/work/calibre/src/calibre/library/server.py:717
#: /home/kovid/work/calibre/src/calibre/library/server.py:764 #: /home/kovid/work/calibre/src/calibre/library/server.py:764
#: /home/kovid/work/calibre/src/calibre/utils/localization.py:108 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:109
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:45 #: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:45
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:63 #: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:63
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:77 #: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:77
@ -537,50 +537,50 @@ msgstr ""
msgid "Communicate with the Sony PRS-600/700/900 eBook reader." msgid "Communicate with the Sony PRS-600/700/900 eBook reader."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:336 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:270
msgid "Unable to detect the %s disk drive. Try rebooting." msgid "Unable to detect the %s disk drive. Try rebooting."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:489 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:439
msgid "Unable to detect the %s mount point. Try rebooting." msgid "Unable to detect the %s mount point. Try rebooting."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:551 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:494
msgid "Unable to detect the %s disk drive." msgid "Unable to detect the %s disk drive."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:644 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:587
msgid "Could not find mount helper: %s." msgid "Could not find mount helper: %s."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:656 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:599
msgid "Unable to detect the %s disk drive. Your kernel is probably exporting a deprecated version of SYSFS." msgid "Unable to detect the %s disk drive. Your kernel is probably exporting a deprecated version of SYSFS."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:664 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:607
msgid "Unable to mount main memory (Error code: %d)" msgid "Unable to mount main memory (Error code: %d)"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:801 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:744
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:803 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:746
msgid "The reader has no storage card in this slot." msgid "The reader has no storage card in this slot."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:805 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:748
msgid "Selected slot: %s is not supported." msgid "Selected slot: %s is not supported."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:838 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:781
msgid "There is insufficient free space in main memory" msgid "There is insufficient free space in main memory"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:840 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:783
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:842 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:785
msgid "There is insufficient free space on the storage card" msgid "There is insufficient free space on the storage card"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:859 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:802
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:875 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:825
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:232 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:232
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:132 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:132
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1065 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1065
@ -1964,22 +1964,13 @@ msgid "Specify the character encoding of the output document. The default is utf
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:38 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:38
#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:54
msgid "Do not add a blank line between paragraphs."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:41
msgid "The maximum number of characters per line. This splits on the first space before the specified value. If no space is found the line will be broken at the space after and will exceed the specified value. Also, there is a minimum of 25 characters. Use 0 to disable line splitting." msgid "The maximum number of characters per line. This splits on the first space before the specified value. If no space is found the line will be broken at the space after and will exceed the specified value. Also, there is a minimum of 25 characters. Use 0 to disable line splitting."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:48 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:45
msgid "Force splitting on the max-line-length value when no space is present. Also allows max-line-length to be below the minimum" msgid "Force splitting on the max-line-length value when no space is present. Also allows max-line-length to be below the minimum"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:52
msgid "Add a tab at the beginning of each paragraph."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:27
msgid "Send file to storage card instead of main memory by default" msgid "Send file to storage card instead of main memory by default"
msgstr "" msgstr ""
@ -2114,7 +2105,7 @@ msgid "The specified directory could not be processed."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/add.py:197 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:197
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:491 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:509
msgid "No books" msgid "No books"
msgstr "" msgstr ""
@ -2999,6 +2990,10 @@ msgstr ""
msgid "&Line ending style:" msgid "&Line ending style:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:54
msgid "Do not add a blank line between paragraphs."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:55 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:55
msgid "Add a tab at the beginning of each paragraph" msgid "Add a tab at the beginning of each paragraph"
msgstr "" msgstr ""
@ -3099,189 +3094,189 @@ msgstr ""
msgid "No details available." msgid "No details available."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:129 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:122
msgid "Device no longer connected." msgid "Device no longer connected."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:204 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:222
msgid "Get device information" msgid "Get device information"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:233
msgid "Get list of books on device" msgid "Get list of books on device"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:242
msgid "Send metadata to device" msgid "Send metadata to device"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:233 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:251
msgid "Upload %d books to device" msgid "Upload %d books to device"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:248 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:266
msgid "Delete books from device" msgid "Delete books from device"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:265 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:283
msgid "Download books from device" msgid "Download books from device"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:275 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:293
msgid "View book on device" msgid "View book on device"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:282 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:300
msgid "and delete from library" msgid "and delete from library"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:321
msgid "Set default send to device action" msgid "Set default send to device action"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:326
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:315 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:333
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:317 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:335
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:319 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:337
msgid "Email to" msgid "Email to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:348
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:355
msgid "Send to main memory" msgid "Send to main memory"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:350
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:357
msgid "Send to storage card A" msgid "Send to storage card A"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:352
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:359
msgid "Send to storage card B" msgid "Send to storage card B"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:344 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:362
msgid "Send specific format to main memory" msgid "Send specific format to main memory"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:346 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:364
msgid "Send specific format to storage card A" msgid "Send specific format to storage card A"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:348 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:366
msgid "Send specific format to storage card B" msgid "Send specific format to storage card B"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:510
msgid "selected to send" msgid "selected to send"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:497 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:515
msgid "Choose format to send to device" msgid "Choose format to send to device"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:522
msgid "No device" msgid "No device"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:505 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:523
msgid "Cannot send: No device is connected" msgid "Cannot send: No device is connected"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:526
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:512 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:530
msgid "No card" msgid "No card"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:509 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:527
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:531
msgid "Cannot send: Device has no storage card" msgid "Cannot send: Device has no storage card"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:572
msgid "E-book:" msgid "E-book:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:557 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:575
msgid "Attached, you will find the e-book" msgid "Attached, you will find the e-book"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:558 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:576
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177
msgid "by" msgid "by"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:559 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:577
msgid "in the %s format." msgid "in the %s format."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:572 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:590
msgid "Sending email to" msgid "Sending email to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:620
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:609 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:627
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:701 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:720
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:815 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:836
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:822 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:843
msgid "No suitable formats" msgid "No suitable formats"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:603 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:621
msgid "Auto convert the following books before sending via email?" msgid "Auto convert the following books before sending via email?"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:610 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:628
msgid "Could not email the following books as no suitable formats were found:" msgid "Could not email the following books as no suitable formats were found:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:628 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:646
msgid "Failed to email books" msgid "Failed to email books"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:629 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:647
msgid "Failed to email the following books:" msgid "Failed to email the following books:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:633 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:651
msgid "Sent by email:" msgid "Sent by email:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:660 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:678
msgid "News:" msgid "News:"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:661 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:679
msgid "Attached is the" msgid "Attached is the"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:672 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:690
msgid "Sent news to" msgid "Sent news to"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:702 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:721
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:816 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:837
msgid "Auto convert the following books before uploading to the device?" msgid "Auto convert the following books before uploading to the device?"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:732 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:751
msgid "Sending news to device." msgid "Sending news to device."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:784 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:805
msgid "Sending books to device." msgid "Sending books to device."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:823 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:844
msgid "Could not upload the following books to the device, as no suitable formats were found. Convert the book(s) to a format supported by your device first." msgid "Could not upload the following books to the device, as no suitable formats were found. Convert the book(s) to a format supported by your device first."
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:871 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:892
msgid "No space on device" msgid "No space on device"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:872 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:893
msgid "<p>Cannot upload books to device there is no more free space available " msgid "<p>Cannot upload books to device there is no more free space available "
msgstr "" msgstr ""
@ -6858,38 +6853,42 @@ msgid "English"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/localization.py:99 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:99
msgid "English (AU)" msgid "English (Australia)"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/localization.py:100 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:100
msgid "English (CA)" msgid "English (Canada)"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/localization.py:101 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:101
msgid "English (IND)" msgid "English (India)"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/localization.py:102 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:102
msgid "English (TH)" msgid "English (Thailand)"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/localization.py:103 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:103
msgid "English (CY)" msgid "English (Cyprus)"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/localization.py:104 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:104
msgid "English (PK)" msgid "English (Pakistan)"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/localization.py:105 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:105
msgid "German (AT)" msgid "English (Singapore)"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/localization.py:106 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:106
msgid "Dutch (NL)" msgid "German (AT)"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/localization.py:107 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:107
msgid "Dutch (NL)"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/localization.py:108
msgid "Dutch (BE)" msgid "Dutch (BE)"
msgstr "" msgstr ""
@ -7003,19 +7002,19 @@ msgstr ""
msgid "Downloading cover from %s" msgid "Downloading cover from %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:962 #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:970
msgid "Untitled Article" msgid "Untitled Article"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1033 #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1041
msgid "Article downloaded: %s" msgid "Article downloaded: %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1044 #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1052
msgid "Article download failed: %s" msgid "Article download failed: %s"
msgstr "" msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1061 #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1069
msgid "Fetching feed" msgid "Fetching feed"
msgstr "" msgstr ""

View File

@ -96,12 +96,13 @@ _extra_lang_codes = {
'zh_HK' : _('Chinese (HK)'), 'zh_HK' : _('Chinese (HK)'),
'zh_TW' : _('Traditional Chinese'), 'zh_TW' : _('Traditional Chinese'),
'en' : _('English'), 'en' : _('English'),
'en_AU' : _('English (AU)'), 'en_AU' : _('English (Australia)'),
'en_CA' : _('English (CA)'), 'en_CA' : _('English (Canada)'),
'en_IN' : _('English (IND)'), 'en_IN' : _('English (India)'),
'en_TH' : _('English (TH)'), 'en_TH' : _('English (Thailand)'),
'en_CY' : _('English (CY)'), 'en_CY' : _('English (Cyprus)'),
'en_PK' : _('English (PK)'), 'en_PK' : _('English (Pakistan)'),
'en_SG' : _('English (Singapore)'),
'de_AT' : _('German (AT)'), 'de_AT' : _('German (AT)'),
'nl' : _('Dutch (NL)'), 'nl' : _('Dutch (NL)'),
'nl_BE' : _('Dutch (BE)'), 'nl_BE' : _('Dutch (BE)'),