Merge from trunk

This commit is contained in:
Charles Haley 2010-12-18 08:13:08 +00:00
commit 53219dc2b0
28 changed files with 1385 additions and 1110 deletions

View File

@ -4,6 +4,126 @@
# for important features/bug fixes.
# Also, each release can have new and improved recipes.
- version: 0.7.34
date: 2010-12-17
new features:
- title: "Page turn animations in the e-book viewer"
type: major
description: >
"Now when you use the Page Down/Page Up keys or the next/previous page buttons in the viewer, page turning will be animated. The duration of the animation can be controlled in the viewer preferences. Setting it to o disables the animation completely."
- title: "Conversion pipeline: Add an option to set the minimum line height of all elemnts as a percentage of the computed font size. By default, calibre now sets the line height to 120% of the computed font size."
- title: "Large speedup in startup times and post metadata edit wait for large libraries"
- title: "Allow changing the font used in the calibre interface via Preferences->Look and feel"
- title: "Allow editing of the title sort value for a book via the edit metadata dialog"
- title: "Disable the cover cache. This means that if you are running calibre on an underpowered machine, you might notice some slow down in the cover browser. On the other hand, calibre's memory consumption is reduced."
- title: "You can now restart calibre in debug mode by clicking the arrow next to the Preferences button. In debug mode, after you quit calibre, a diagnostic log will popup"
tickets: [7359]
- title: "When creating a new calibre library add an option to copy the custom column, saved searches, etc from the current library."
tickets: [7643]
- title: "Add more tweaks to control how the next available series number is calculated."
tickets: [7892]
- title: "Add a tweak to control layout of the custom metadata tab in the edit metadata dialog"
- title: "Apple driver: Set series number as track number on windows when sending books to iTunes"
- title: "Drivers for PocketBook 701 and Samsung E65"
- title: "E-book viewer: Add option to have the mouse wheel flip pages"
- title: "Add a load_resources method to the InterfaceAction and Plugin classes to facilitate loading of resources from plugin ZIP files"
- title: "E-book viewer: Add option to not remember position in book when quitting."
tickets: [7699]
- title: "When sorting the book list, keep the current book visible after the sort completes."
tickets: [7504]
- title: "EPUB Output: Add an option to flatten the EPUB file structure, specially for FBReaderJ."
tickets: [7788]
- title: "EPUB Output: Ensure all files inside the generated EPUB have unique filenames, to support broken EPUB readers like Stanza, Aldiko, FBReader and Sigil"
- title: "FB2 Output: Add support for some 2.1 style tags."
- title: "Bulk metadata edit: Add options to delete cover/generate default cover."
tickets: [7885]
- title: "Fix a regression in 0.7.33 that broke updating covers in ebook files when saving to disk."
tickets: [7886]
- title: "Don't refresh the Tag browser if it is hidden. Speeds up metadata editing with large libraries, if you hide teh Tag Browser."
- title: "MOBI Output: Add option to ignore margins in input document"
tickets: [7877]
- title: "Kobo driver: Add support for 1.8.x firmware"
bug fixes:
- title: "Fix various memory leaks introduced in the last couple of releases"
- title: "EPUB metadata: When rendering first page as the cover, handle embedded svg correctly."
tickets: [7909]
- title: "Disable multiple library support when the CALIBRE_OVERRIDE_DATABASE_PATH env var is set"
- title: "Content server: Fix bug that could cause saved search based restrictions to not exclude all books"
tickets: [7876]
- title: "Topaz metadata: Read metadata correctly from Topaz files that have MOBI file extensions"
- title: "MOBI Input: Handle the (rare) MOBI files that do not specify per paragraph text indents correctly."
tickets: [7869]
- title: "MOBI metadata reader: Handle invalid PRC files with spurious image_offset headers"
- title: "Fix drag/drop of new cover to book detail panel does not update cover browser"
tickets: [7890]
- title: "Do not open the book details dialog when double click on the scrollbars in the book details panel"
tickets: [7826]
- title: "Templates: Fix {tags} not working when no tags are present"
tickets: [7888]
- title: "HTML metadata: Fix regression that broke parsing of some meta tags"
tickets: [7851]
- title: "Preferences: Add tooltips to buddy labels as well."
tickets: [7873]
- title: "Content server: Fix handling of root URL when using --url-prefix"
- title: "Ensure that the default encoding used by python is never ASCII (needed when running a non frozen version of calibre on linux)"
improved recipes:
- Astronomy Picture of the day
- New Scientist
- Radikal
- Times of India
- Economic Times
- Zeit Online
- Dilbert
new recipes:
- title: "Various Japanes news sources, National Geographic and paper.li"
author: "Hiroshi Miura"
- title: "Science based medicine"
author: "BuzzKill"
- title: "Kompiutierra"
author: "Vadim Dyadkin"
- version: 0.7.33
date: 2010-12-10

View File

@ -12,16 +12,6 @@ class JournalofHospitalMedicine(BasicNewsRecipe):
language = 'en'
no_stylesheets = True
#remove_tags_before = dict(name='div', attrs={'align':'center'})
#remove_tags_after = dict(name='ol', attrs={'compact':'COMPACT'})
remove_tags = [
dict(name='iframe'),
dict(name='div', attrs={'class':'subContent'}),
dict(name='div', attrs={'id':['contentFrame']}),
#dict(name='form', attrs={'onsubmit':"return verifySearch(this.w,'Keyword, citation, or author')"}),
#dict(name='table', attrs={'align':'RIGHT'}),
]
# TO LOGIN
@ -39,47 +29,47 @@ class JournalofHospitalMedicine(BasicNewsRecipe):
#TO GET ARTICLE TOC
def johm_get_index(self):
return self.index_to_soup('http://www3.interscience.wiley.com/journal/111081937/home')
return self.index_to_soup('http://www3.interscience.wiley.com/journal/111081937/home')
# To parse artice toc
def parse_index(self):
parse_soup = self.johm_get_index()
parse_soup = self.johm_get_index()
div = parse_soup.find(id='contentCell')
div = parse_soup.find(id='contentCell')
current_section = None
current_articles = []
feeds = []
for x in div.findAll(True):
if x.name == 'h4':
# Section heading found
if current_articles and current_section:
feeds.append((current_section, current_articles))
current_section = self.tag_to_string(x)
current_articles = []
self.log('\tFound section:', current_section)
if current_section is not None and x.name == 'strong':
title = self.tag_to_string(x)
p = x.parent.parent.find('a', href=lambda x: x and '/HTMLSTART' in x)
if p is None:
continue
url = p.get('href', False)
if not url or not title:
continue
if url.startswith('/'):
url = 'http://www3.interscience.wiley.com'+url
url = url.replace('/HTMLSTART', '/main.html,ftx_abs')
self.log('\t\tFound article:', title)
self.log('\t\t\t', url)
#if url.startswith('/'):
#url = 'http://online.wsj.com'+url
current_articles.append({'title': title, 'url':url,
'description':'', 'date':''})
current_section = None
current_articles = []
feeds = []
for x in div.findAll(True):
if x.name == 'h4':
# Section heading found
if current_articles and current_section:
feeds.append((current_section, current_articles))
current_section = self.tag_to_string(x)
current_articles = []
self.log('\tFound section:', current_section)
if current_section is not None and x.name == 'strong':
title = self.tag_to_string(x)
p = x.parent.parent.find('a', href=lambda x: x and '/HTMLSTART' in x)
if p is None:
continue
url = p.get('href', False)
if not url or not title:
continue
if url.startswith('/'):
url = 'http://www3.interscience.wiley.com'+url
url = url.replace('/HTMLSTART', '/main.html,ftx_abs')
self.log('\t\tFound article:', title)
self.log('\t\t\t', url)
#if url.startswith('/'):
#url = 'http://online.wsj.com'+url
current_articles.append({'title': title, 'url':url,
'description':'', 'date':''})
if current_articles and current_section:
feeds.append((current_section, current_articles))
if current_articles and current_section:
feeds.append((current_section, current_articles))
return feeds
return feeds
def preprocess_html(self, soup):
for img in soup.findAll('img', src=True):

View File

@ -11,16 +11,7 @@ class NYTimes(BasicNewsRecipe):
language = 'en'
no_stylesheets = True
remove_tags_before = dict(name='div', attrs={'align':'center'})
remove_tags_after = dict(name='ol', attrs={'compact':'COMPACT'})
remove_tags = [
dict(name='iframe'),
#dict(name='div', attrs={'class':'related-articles'}),
dict(name='div', attrs={'id':['sidebar']}),
#dict(name='form', attrs={'onsubmit':"return verifySearch(this.w,'Keyword, citation, or author')"}),
dict(name='table', attrs={'align':'RIGHT'}),
]
keep_only_tags = dict(id='content')
#TO LOGIN
@ -38,61 +29,50 @@ class NYTimes(BasicNewsRecipe):
#TO GET ARTICLE TOC
def nejm_get_index(self):
return self.index_to_soup('http://content.nejm.org/current.dtl')
return self.index_to_soup('http://content.nejm.org/current.dtl')
# To parse artice toc
def parse_index(self):
parse_soup = self.nejm_get_index()
parse_soup = self.nejm_get_index()
div = parse_soup.find(id='centerTOC')
feeds = []
current_section = None
current_articles = []
feeds = []
for x in div.findAll(True):
if x.name == 'img' and '/toc/' in x.get('src', '') and 'uarrow.gif' not in x.get('src', ''):
# Section heading found
if current_articles and current_section and 'Week in the' not in current_section:
feeds.append((current_section, current_articles))
current_section = x.get('alt')
current_articles = []
self.log('\tFound section:', current_section)
if current_section is not None and x.name == 'strong':
title = self.tag_to_string(x)
a = x.parent.find('a', href=lambda x: x and '/full/' in x)
if a is None:
continue
url = a.get('href', False)
if not url or not title:
continue
if url.startswith('/'):
url = 'http://content.nejm.org'+url
self.log('\t\tFound article:', title)
self.log('\t\t\t', url)
if url.startswith('/'):
url = 'http://online.wsj.com'+url
current_articles.append({'title': title, 'url':url,
'description':'', 'date':''})
if current_articles and current_section:
feeds.append((current_section, current_articles))
return feeds
def preprocess_html(self, soup):
for a in soup.findAll(text=lambda x: x and '[in this window]' in x):
a = a.findParent('a')
url = a.get('href', None)
if not url:
div = parse_soup.find(attrs={'class':'tocContent'})
for group in div.findAll(attrs={'class':'articleGrouping'}):
feed_title = group.find(attrs={'class':'articleType'})
if feed_title is None:
continue
if url.startswith('/'):
url = 'http://content.nejm.org'+url
isoup = self.index_to_soup(url)
img = isoup.find('img', src=lambda x: x and
x.startswith('/content/'))
if img is not None:
img.extract()
table = a.findParent('table')
table.replaceWith(img)
return soup
feed_title = self.tag_to_string(feed_title)
articles = []
self.log('Found section:', feed_title)
for art in group.findAll(attrs={'class':lambda x: x and 'articleEntry'
in x}):
link = art.find(attrs={'class':lambda x:x and 'articleLink' in
x})
if link is None:
continue
a = link.find('a', href=True)
if a is None:
continue
url = a.get('href')
if url.startswith('/'):
url = 'http://www.nejm.org'+url
title = self.tag_to_string(a)
self.log.info('\tFound article:', title, 'at', url)
article = {'title':title, 'url':url, 'date':''}
au = art.find(attrs={'class':'articleAuthors'})
if au is not None:
article['author'] = self.tag_to_string(au)
desc = art.find(attrs={'class':'hover_text'})
if desc is not None:
desc = self.tag_to_string(desc)
if 'author' in article:
desc = ' by ' + article['author'] + ' ' +desc
article['description'] = desc
articles.append(article)
if articles:
feeds.append((feed_title, articles))
return feeds

View File

@ -2,7 +2,7 @@ __license__ = 'GPL v3'
__copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net'
__docformat__ = 'restructuredtext en'
__appname__ = 'calibre'
__version__ = '0.7.33'
__version__ = '0.7.34'
__author__ = "Kovid Goyal <kovid@kovidgoyal.net>"
import re

View File

@ -358,8 +358,8 @@ If the box is colored green, then text matches the individual author's sort stri
<item>
<widget class="QToolButton" name="auto_title_sort">
<property name="toolTip">
<string>Automatically create the author sort entry based on the current author entry.
Using this button to create author sort will change author sort from red to green.</string>
<string>Automatically create the title sort entry based on the current title entry.
Using this button to create title sort will change title sort from red to green.</string>
</property>
<property name="text">
<string>...</string>
@ -419,8 +419,8 @@ Using this button to create author sort will change author sort from red to gree
<item>
<widget class="QToolButton" name="auto_author_sort">
<property name="toolTip">
<string>Automatically create the title sort entry based on the current title entry.
Using this button to create title sort will change title sort from red to green.</string>
<string>Automatically create the author sort entry based on the current author entry.
Using this button to create author sort will change author sort from red to green.</string>
</property>
<property name="text">
<string>...</string>

View File

@ -254,6 +254,7 @@ def run_in_debug_mode(logpath=None):
e = sys.executable if getattr(sys, 'frozen', False) else sys.argv[0]
import tempfile, subprocess
fd, logpath = tempfile.mkstemp('.txt')
os.close(fd)
if hasattr(sys, 'frameworks_dir'):
base = os.path.dirname(sys.frameworks_dir)
@ -265,8 +266,13 @@ def run_in_debug_mode(logpath=None):
base, ext = os.path.splitext(e)
exe = base + '-debug' + ext
print 'Starting debug executable:', exe
subprocess.Popen([exe, '--gui-debug', logpath], stdout=fd, stderr=fd)
time.sleep(1) # Give subprocess a change to launch, before fd is closed
creationflags = 0
if iswindows:
import win32process
creationflags = win32process.CREATE_NO_WINDOW
subprocess.Popen([exe, '--gui-debug', logpath], stdout=open(logpath, 'w'),
stderr=subprocess.STDOUT, stdin=open(os.devnull, 'r'),
creationflags=creationflags)
def run_gui(opts, args, actions, listener, app, gui_debug=None):
initialize_file_icon_provider()
@ -300,7 +306,13 @@ def run_gui(opts, args, actions, listener, app, gui_debug=None):
if runner.main.gui_debug is not None:
e = sys.executable if getattr(sys, 'frozen', False) else sys.argv[0]
import subprocess
subprocess.Popen([e, '--show-gui-debug', runner.main.gui_debug])
creationflags = 0
if iswindows:
import win32process
creationflags = win32process.CREATE_NO_WINDOW
subprocess.Popen([e, '--show-gui-debug', runner.main.gui_debug],
creationflags=creationflags, stdout=open(os.devnull, 'w'),
stderr=subprocess.PIPE, stdin=open(os.devnull, 'r'))
return ret
def cant_start(msg=_('If you are sure it is not running')+', ',

View File

@ -1967,7 +1967,7 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns):
@classmethod
def cleanup_tags(cls, tags):
tags = [x.strip() for x in tags if x.strip()]
tags = [x.strip().replace(',', ';') for x in tags if x.strip()]
tags = [x.decode(preferred_encoding, 'replace') \
if isbytestring(x) else x for x in tags]
tags = [u' '.join(x.split()) for x in tags]

View File

@ -427,7 +427,9 @@ class SchemaUpgrade(object):
def upgrade_version_15(self):
'Remove commas from tags'
self.conn.execute("UPDATE tags SET name=REPLACE(name, ',', ';')")
self.conn.execute("UPDATE OR IGNORE tags SET name=REPLACE(name, ',', ';')")
self.conn.execute("UPDATE OR IGNORE tags SET name=REPLACE(name, ',', ';;')")
self.conn.execute("UPDATE OR IGNORE tags SET name=REPLACE(name, ',', '')")
def upgrade_version_16(self):
self.conn.executescript('''

View File

@ -19,7 +19,7 @@ from calibre.ebooks.metadata import fmt_sidx
from calibre.library.comments import comments_to_html
from calibre.library.server import custom_fields_to_display
from calibre.library.server.utils import format_tag_string, Offsets
from calibre import guess_type
from calibre import guess_type, prepare_string_for_xml as xml
from calibre.utils.icu import sort_key
from calibre.utils.ordered_dict import OrderedDict
@ -150,13 +150,13 @@ def ACQUISITION_ENTRY(item, version, db, updated, CFM, CKEYS, prefix):
extra.append(_('RATING: %s<br />')%rating)
tags = item[FM['tags']]
if tags:
extra.append(_('TAGS: %s<br />')%format_tag_string(tags, ',',
extra.append(_('TAGS: %s<br />')%xml(format_tag_string(tags, ',',
ignore_max=True,
no_tag_count=True))
no_tag_count=True)))
series = item[FM['series']]
if series:
extra.append(_('SERIES: %s [%s]<br />')%\
(series,
(xml(series),
fmt_sidx(float(item[FM['series_index']]))))
for key in CKEYS:
mi = db.get_metadata(item[CFM['id']['rec_index']], index_is_id=True)
@ -164,11 +164,11 @@ def ACQUISITION_ENTRY(item, version, db, updated, CFM, CKEYS, prefix):
if val:
datatype = CFM[key]['datatype']
if datatype == 'text' and CFM[key]['is_multiple']:
extra.append('%s: %s<br />'%(name, format_tag_string(val, ',',
extra.append('%s: %s<br />'%(xml(name), xml(format_tag_string(val, ',',
ignore_max=True,
no_tag_count=True)))
no_tag_count=True))))
else:
extra.append('%s: %s<br />'%(name, val))
extra.append('%s: %s<br />'%(xml(name), xml(unicode(val))))
comments = item[FM['comments']]
if comments:
comments = comments_to_html(comments)

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-14 19:28+0000\n"
"Last-Translator: Kenan Dervišević <Unknown>\n"
"PO-Revision-Date: 2010-12-16 22:50+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Bosnian <bs@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-15 04:35+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:42+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43

View File

@ -11,13 +11,13 @@ msgstr ""
"Project-Id-Version: ca\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-13 17:37+0000\n"
"PO-Revision-Date: 2010-12-16 23:54+0000\n"
"Last-Translator: FerranRius <frius64@hotmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-14 04:50+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:42+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43

File diff suppressed because it is too large Load Diff

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-11 22:59+0000\n"
"Last-Translator: Glenn <Unknown>\n"
"PO-Revision-Date: 2010-12-17 00:31+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Danish <da@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-13 04:57+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:42+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: de\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-11 02:44+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"PO-Revision-Date: 2010-12-16 12:49+0000\n"
"Last-Translator: Manichean <Unknown>\n"
"Language-Team: American English <kde-i18n-doc@lists.kde.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-12 04:35+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:43+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n"
@ -2470,23 +2470,23 @@ msgstr "Comic"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/amazonfr.py:26
msgid "Downloads metadata from amazon.fr"
msgstr ""
msgstr "Herunterladen der Metadaten von amazon.fr"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/amazonfr.py:43
msgid "Downloads metadata from amazon.com in spanish"
msgstr ""
msgstr "Herunterladen der spanischen Metadaten von amazon.com"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/amazonfr.py:60
msgid "Downloads metadata from amazon.com in english"
msgstr ""
msgstr "Herunterladen der englischen Metadaten von amazon.com"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/amazonfr.py:77
msgid "Downloads metadata from amazon.de"
msgstr ""
msgstr "Herunterladen der Metadaten von amazon.de"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/amazonfr.py:94
msgid "Downloads metadata from amazon.com"
msgstr ""
msgstr "Herunterladen der Metadaten von amazon.com"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/amazonfr.py:474
msgid ""
@ -2500,6 +2500,14 @@ msgid ""
" All & english & french & german & spanish\n"
" "
msgstr ""
" %prog [Optionen]\n"
"\n"
" Lädt Metadaten von Amazon. Sie müssen einen Titel, Author,\n"
" ISBN, Herausgeber oder Stichwort angeben. Es werden maximal\n"
" 10 Treffer geladen, suchen Sie so spezifisch wie möglich.\n"
" Sie können die Sprache für die Metadaten auswählen:\n"
" Alle & Englisch & Französisch & Deutsch & Spanisch\n"
" "
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:41
msgid ""
@ -2832,33 +2840,35 @@ msgstr "Lädt Reihe/Etiketten/Bewertung von librarything.com"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:25
msgid "Downloads metadata from Fictionwise"
msgstr ""
msgstr "Herunterladen der Metadaten von Fictionwise"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:90
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:108
msgid "Query: %s"
msgstr ""
msgstr "Abfrage: %s"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:100
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:285
msgid "Fictionwise timed out. Try again later."
msgstr ""
msgstr "Timeout bei Fictionwise. Bitte später nochmal versuchen."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:101
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:286
msgid "Fictionwise encountered an error."
msgstr ""
msgstr "Bei Fictionwise ist ein Fehler aufgetreten."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:219
msgid ""
"SUMMARY:\n"
" %s"
msgstr ""
"INHALTSANGABE:\n"
" %s"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:316
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:333
msgid "Failed to get all details for an entry"
msgstr ""
msgstr "Konnte für einen Eintrag nicht alle Details holen"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:354
msgid ""
@ -2871,41 +2881,49 @@ msgid ""
" so you should make your query as specific as possible.\n"
" "
msgstr ""
" %prog [Optionen]\n"
"\n"
" Holt Metadaten von Fictionwise. Sie müssen einen Titel, Autor oder "
"Stichwort\n"
" angeben. Angabe einer ISBN ist nicht möglich. Maximal werden 20 "
"Treffer geholt,\n"
" suchen Sie also möglichst spezifisch.\n"
" "
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:362
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:363
msgid "Book title"
msgstr ""
msgstr "Titel"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:363
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:364
msgid "Book author(s)"
msgstr ""
msgstr "Autor(en)"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:364
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:365
msgid "Book publisher"
msgstr ""
msgstr "Herausgeber"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:365
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:367
msgid "Keywords"
msgstr ""
msgstr "Schlüsselworte"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:367
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:373
msgid "Maximum number of results to fetch"
msgstr ""
msgstr "Maximale Anzahl an zu holenden Ergebnissen"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:369
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:375
msgid "Be more verbose about errors"
msgstr ""
msgstr "Fehler ausführlicher berichten"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fictionwise.py:383
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:390
msgid "No result found for this search!"
msgstr ""
msgstr "Keine Ergebnisse für diese Suche gefunden!"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:107
msgid ""
@ -2983,11 +3001,11 @@ msgstr "Timeout von Nicebooks. Bitte versuchen Sie es später nochmal."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:119
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:243
msgid "Nicebooks encountered an error."
msgstr ""
msgstr "Bei Nicebooks ist ein Fehler aufgetreten."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:323
msgid "ISBN: %s not found."
msgstr ""
msgstr "ISBN: %s nicht gefunden."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:324
msgid "An errror occured with Nicebooks cover fetcher"
@ -3007,7 +3025,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:366
msgid "Book ISBN"
msgstr ""
msgstr "ISBN"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/nicebooks.py:369
msgid "Covers: 1-Check/ 2-Download"

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-12 17:20+0000\n"
"Last-Translator: Vladimir Oka <Unknown>\n"
"PO-Revision-Date: 2010-12-16 23:27+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-13 04:58+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:45+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-15 17:49+0000\n"
"PO-Revision-Date: 2010-12-16 23:28+0000\n"
"Last-Translator: gorkaazk <gorkaazkarate@euskalerria.org>\n"
"Language-Team: Basque <eu@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-16 04:32+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:42+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre 0.4.22\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-16 02:50+0000\n"
"Last-Translator: sengian <Unknown>\n"
"PO-Revision-Date: 2010-12-16 23:44+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Français <kde-i18n-doc@kde.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-16 04:33+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:43+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Poedit-Bookmarks: 1177,1104,-1,-1,-1,-1,-1,-1,-1,-1\n"
"Generated-By: pygettext.py 1.5\n"

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-15 12:01+0000\n"
"PO-Revision-Date: 2010-12-17 00:16+0000\n"
"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>\n"
"Language-Team: dev@gl.openoffice.org\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-16 04:33+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:43+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"Language: gl\n"
@ -406,8 +406,8 @@ msgid ""
"Setup sharing of books via email. Can be used for automatic sending of "
"downloaded news to your devices"
msgstr ""
"Configura a compartición de libros por correo electrónico. Pódese usar para "
"enviar automaticamente as noticias descargadas aos seus dispositivos"
"Configura a compartición de libros por correo. Pódese usar para enviar "
"automaticamente as noticias descargadas aos seus dispositivos"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:855
msgid "Sharing over the net"
@ -8751,7 +8751,7 @@ msgstr "Código fonte das receitas (pytom)"
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:145
msgid "Email %s to %s"
msgstr "Enviar por correo electrónico %s a %s"
msgstr "Enviar por correo %s a %s"
#: /home/kovid/work/calibre/src/calibre/gui2/email.py:187
msgid "News:"
@ -9932,13 +9932,13 @@ msgid ""
"automatically sent for downloaded news to all email addresses that have Auto-"
"send checked."
msgstr ""
"O Calibre pode enviarlle os libros por correo-e. Enviaránselle correos "
"O Calibre pode enviarlle os libros por correo. Enviaránselle correos "
"automaticamente coas novas descargadas que teñen marcada a opción Enviar "
"automaticamente."
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:67
msgid "Add an email address to which to send books"
msgstr "Engadir un enderezo de correo electrónico ao que enviar os libros"
msgstr "Engadir un enderezo de correo ao que enviar os libros"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:68
msgid "&Add email"
@ -9958,7 +9958,7 @@ msgstr "Enviar automaticamente"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24
msgid "Email"
msgstr "Correo electrónico"
msgstr "Correo"
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:29
msgid "Formats to email. The first matching format will be sent."
@ -11668,15 +11668,14 @@ msgid ""
"button below. You will also have to register your gmail address in your "
"Amazon account."
msgstr ""
"<p>Calibre pode enviar libros automaticamente por correo electrónico ao seu "
"Kindle. Debe configurar o envío por correo electrónico. A forma más doada e "
"facerse cunha <a href=\"http://gmail.com\">conta gratuíta de Gmail</a> e "
"premer o botón Usar gmail. Tamén deberá rexistrar o enderezo de gmail na súa "
"conta de Amazon."
"<p>Calibre pode enviar libros automaticamente por correo ao seu Kindle. Debe "
"configurar o envío por correo. A forma más doada e facerse cunha <a "
"href=\"http://gmail.com\">conta gratuíta de Gmail</a> e premer o botón Usar "
"gmail. Tamén deberá rexistrar o enderezo de gmail na súa conta de Amazon."
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/kindle_ui.py:50
msgid "&Kindle email:"
msgstr "Correo electrónico do &Kindle:"
msgstr "Correo do &Kindle:"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:57
msgid "Choose your &language:"
@ -11765,7 +11764,7 @@ msgstr "Configuración errada"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:197
msgid "You must set the From email address"
msgstr "Debe estabelecer o enderezo de correo-e remitente"
msgstr "Debe estabelecer o enderezo de correo remitente"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:204
msgid "You must set the username and password for the mail server."
@ -11781,8 +11780,8 @@ msgid ""
"<p>This is what will be present in the From: field of emails sent by "
"calibre.<br> Set it to your email address"
msgstr ""
"<p>Isto é o que se mostrará no campo De: dos correos electrónicos enviados "
"por Calibre.<br>Poña o seu enderezo de correo-e."
"<p>Isto é o que se mostrará no campo De: dos correos enviados por "
"Calibre.<br>Poña o seu enderezo de correo."
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:126
msgid ""

View File

@ -9,13 +9,13 @@ msgstr ""
"Project-Id-Version: calibre_calibre-it\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-12 08:58+0000\n"
"Last-Translator: MeltingShell <Unknown>\n"
"PO-Revision-Date: 2010-12-16 23:08+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: italiano\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-13 04:57+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:43+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Poedit-Bookmarks: -1,-1,-1,-1,-1,1105,-1,1312,-1,-1\n"
"Generated-By: pygettext.py 1.5\n"

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-12 12:28+0000\n"
"PO-Revision-Date: 2010-12-16 23:11+0000\n"
"Last-Translator: Hiroshi Miura <miurahr@linux.com>\n"
"Language-Team: Japanese <ja@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-13 04:58+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:44+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-11 02:28+0000\n"
"Last-Translator: Namsik Chu <Unknown>\n"
"PO-Revision-Date: 2010-12-17 01:06+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Korean <ko@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-12 04:37+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:44+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-16 03:36+0000\n"
"Last-Translator: geordee <Unknown>\n"
"PO-Revision-Date: 2010-12-16 23:06+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Malayalam <ml@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-16 04:33+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:44+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-05 04:33+0000\n"
"Last-Translator: Wespa Digital <Unknown>\n"
"PO-Revision-Date: 2010-12-16 16:26+0000\n"
"Last-Translator: marco cunha <Unknown>\n"
"Language-Team: American English <kde-i18n-doc@kde.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-11 04:44+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:45+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43
@ -387,7 +387,7 @@ msgstr "Configuração dos Metadados"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:838
msgid "Change metadata fields before saving/sending"
msgstr ""
msgstr "Alterar campos de metadados antes de salvar / enviar"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:843
msgid "Sharing books by email"
@ -582,6 +582,7 @@ msgstr "Destinado ao iPad e dispositivos similares com resolução de 768x1024"
#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:437
msgid "Intended for generic tablet devices, does no resizing of images"
msgstr ""
"Pretendido para dispositivos Tablets, não faz o redimensionamento de imagens"
#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:464
msgid "This profile is intended for the Kobo Reader."
@ -609,11 +610,11 @@ msgstr "Este perfil é destinado para o Kindle DX da Amazon."
#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:686
msgid "This profile is intended for the B&N Nook Color."
msgstr ""
msgstr "Este perfil é destinado para a B & N Nook Color."
#: /home/kovid/work/calibre/src/calibre/customize/profiles.py:697
msgid "This profile is intended for the Sanda Bambook."
msgstr ""
msgstr "Este perfil é destinado para o Sanda Bambook"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:34
msgid "Installed plugins"
@ -719,6 +720,9 @@ msgid ""
"Cannot copy books directly from iDevice. Drag from iTunes Library to "
"desktop, then add to calibre's Library window."
msgstr ""
"Não é possível copiar livros diretamente do iDevice. Arraste a partir do "
"iTunes Library para o desktop, em seguida, adicione para a biblioteca "
"calibre."
#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:260
#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:263
@ -812,7 +816,7 @@ msgstr "Comunica-se com o leitor Cybook Gen 3 / Opus."
#: /home/kovid/work/calibre/src/calibre/devices/cybook/driver.py:64
msgid "Communicate with the Cybook Orizon eBook reader."
msgstr ""
msgstr "Comunique-se com o leitor eBook Cybook Orizon."
#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:24
msgid "Communicate with the EB600 eBook reader."
@ -828,7 +832,7 @@ msgstr "Comunica-se com o leitor PocketBook 301"
#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:233
msgid "Communicate with the PocketBook 602 reader."
msgstr ""
msgstr "Comunique-se com o leitor PocketBook 602."
#: /home/kovid/work/calibre/src/calibre/devices/edge/driver.py:17
msgid "Entourage Edge"
@ -917,7 +921,7 @@ msgstr "John Schember"
#: /home/kovid/work/calibre/src/calibre/devices/interface.py:44
msgid "Cannot get files from this device"
msgstr ""
msgstr "Não é possível obter arquivos a partir deste dispositivo"
#: /home/kovid/work/calibre/src/calibre/devices/irexdr/driver.py:16
msgid "Communicate with the IRex Digital Reader 1000 eBook reader."
@ -941,7 +945,7 @@ msgstr "Comunicar com o leitor MiBuk Wolder."
#: /home/kovid/work/calibre/src/calibre/devices/jetbook/driver.py:116
msgid "Communicate with the JetBook Mini reader."
msgstr ""
msgstr "Comunique-se com o leitor Mini jetBook."
#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:43
msgid "Communicate with the Kindle eBook reader."

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-12 15:48+0000\n"
"Last-Translator: Mircea Dochia <Unknown>\n"
"PO-Revision-Date: 2010-12-17 00:09+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Romanian <ro@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-13 04:58+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:44+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43

View File

@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: calibre 0.4.55\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-14 16:19+0000\n"
"Last-Translator: Konstantin <Unknown>\n"
"PO-Revision-Date: 2010-12-16 22:56+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: American English <kde-i18n-doc@lists.kde.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-15 04:36+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:44+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Poedit-Country: RUSSIAN FEDERATION\n"
"X-Poedit-Language: Russian\n"

View File

@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: calibre 0.4.17\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-14 10:17+0000\n"
"Last-Translator: Stane Accetto <Unknown>\n"
"PO-Revision-Date: 2010-12-16 22:54+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: sl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-15 04:37+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:45+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n"

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-10 22:25+0000\n"
"PO-Revision-Date: 2010-12-13 11:44+0000\n"
"Last-Translator: Vladimir Oka <Unknown>\n"
"PO-Revision-Date: 2010-12-16 23:13+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Serbian <sr@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-14 04:51+0000\n"
"X-Launchpad-Export-Date: 2010-12-17 04:45+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:43

View File

@ -548,6 +548,7 @@ class BasicNewsRecipe(Recipe):
}
For an example, see the recipe for downloading `The Atlantic`.
In addition, you can add 'author' for the author of the article.
'''
raise NotImplementedError