Sync to trunk.

This commit is contained in:
John Schember 2009-08-10 18:04:50 -04:00
commit 316ced8847
38 changed files with 1879 additions and 1563 deletions

View File

@ -18,7 +18,9 @@ class TXTInput(InputFormatPlugin):
options = set([ options = set([
OptionRecommendation(name='single_line_paras', recommended_value=False, OptionRecommendation(name='single_line_paras', recommended_value=False,
help=_('Each line is a paragraph.')), help=_('Normally calibre treats blank lines as paragraph markers. '
'With this option it will assume that every line represents '
'a paragraph instead.')),
]) ])
def convert(self, stream, options, file_ext, log, def convert(self, stream, options, file_ext, log,

View File

@ -9,7 +9,7 @@ from PyQt4.QtGui import QFileDialog, QMessageBox, QPixmap, QFileIconProvider, \
ORG_NAME = 'KovidsBrain' ORG_NAME = 'KovidsBrain'
APP_UID = 'libprs500' APP_UID = 'libprs500'
from calibre import islinux, iswindows from calibre import islinux, iswindows, isosx
from calibre.startup import get_lang from calibre.startup import get_lang
from calibre.utils.config import Config, ConfigProxy, dynamic from calibre.utils.config import Config, ConfigProxy, dynamic
import calibre.resources as resources import calibre.resources as resources
@ -110,7 +110,7 @@ class CopyButton(QPushButton):
def copied(self): def copied(self):
self.emit(SIGNAL('copy()')) self.emit(SIGNAL('copy()'))
self.setDisabled(True) self.setDisabled(True)
self.setText(_('Copied to clipboard')) self.setText(_('Copied'))
def keyPressEvent(self, ev): def keyPressEvent(self, ev):
@ -139,7 +139,7 @@ class MessageBox(QMessageBox):
self.det_msg = det_msg self.det_msg = det_msg
self.setDetailedText(det_msg) self.setDetailedText(det_msg)
# Cannot set keyboard shortcut as the event is not easy to filter # Cannot set keyboard shortcut as the event is not easy to filter
self.cb = CopyButton(_('Copy to Clipboard')) self.cb = CopyButton(_('Copy') if isosx else _('Copy to Clipboard'))
self.connect(self.cb, SIGNAL('copy()'), self.copy_to_clipboard) self.connect(self.cb, SIGNAL('copy()'), self.copy_to_clipboard)
self.addButton(self.cb, QMessageBox.ActionRole) self.addButton(self.cb, QMessageBox.ActionRole)
default_button = self.button(self.Ok) default_button = self.button(self.Ok)
@ -158,6 +158,7 @@ class MessageBox(QMessageBox):
def warning_dialog(parent, title, msg, det_msg='', show=False): def warning_dialog(parent, title, msg, det_msg='', show=False):
d = MessageBox(QMessageBox.Warning, 'WARNING: '+title, msg, QMessageBox.Ok, d = MessageBox(QMessageBox.Warning, 'WARNING: '+title, msg, QMessageBox.Ok,
parent, det_msg) parent, det_msg)
d.setEscapeButton(QMessageBox.Ok)
d.setIconPixmap(QPixmap(':/images/dialog_warning.svg')) d.setIconPixmap(QPixmap(':/images/dialog_warning.svg'))
if show: if show:
return d.exec_() return d.exec_()
@ -167,6 +168,7 @@ def error_dialog(parent, title, msg, det_msg='', show=False):
d = MessageBox(QMessageBox.Critical, 'ERROR: '+title, msg, QMessageBox.Ok, d = MessageBox(QMessageBox.Critical, 'ERROR: '+title, msg, QMessageBox.Ok,
parent, det_msg) parent, det_msg)
d.setIconPixmap(QPixmap(':/images/dialog_error.svg')) d.setIconPixmap(QPixmap(':/images/dialog_error.svg'))
d.setEscapeButton(QMessageBox.Ok)
if show: if show:
return d.exec_() return d.exec_()
return d return d
@ -175,6 +177,7 @@ def question_dialog(parent, title, msg, det_msg=''):
d = MessageBox(QMessageBox.Question, title, msg, QMessageBox.Yes|QMessageBox.No, d = MessageBox(QMessageBox.Question, title, msg, QMessageBox.Yes|QMessageBox.No,
parent, det_msg) parent, det_msg)
d.setIconPixmap(QPixmap(':/images/dialog_information.svg')) d.setIconPixmap(QPixmap(':/images/dialog_information.svg'))
d.setEscapeButton(QMessageBox.No)
return d.exec_() == QMessageBox.Yes return d.exec_() == QMessageBox.Yes
def info_dialog(parent, title, msg, det_msg='', show=False): def info_dialog(parent, title, msg, det_msg='', show=False):

View File

@ -13,7 +13,7 @@ class PluginWidget(Widget, Ui_Form):
HELP = _('Options specific to')+' TXT '+_('input') HELP = _('Options specific to')+' TXT '+_('input')
def __init__(self, parent, get_option, get_help, db=None, book_id=None): def __init__(self, parent, get_option, get_help, db=None, book_id=None):
Widget.__init__(self, parent, 'pdf_input', Widget.__init__(self, parent, 'txt_input',
['single_line_paras']) ['single_line_paras'])
self.db, self.book_id = db, book_id self.db, self.book_id = db, book_id
self.initialize_options(get_option, get_help, db, book_id) self.initialize_options(get_option, get_help, db, book_id)

View File

@ -30,7 +30,7 @@
<item row="0" column="0"> <item row="0" column="0">
<widget class="QCheckBox" name="opt_single_line_paras"> <widget class="QCheckBox" name="opt_single_line_paras">
<property name="text"> <property name="text">
<string>Single Line Paragraphs</string> <string>Treat each &amp;line as a paragraph</string>
</property> </property>
</widget> </widget>
</item> </item>

View File

@ -166,7 +166,8 @@ class PluginModel(QAbstractItemModel):
if index.internalId() == 0: if index.internalId() == 0:
if role == Qt.DisplayRole: if role == Qt.DisplayRole:
category = self.categories[index.row()] category = self.categories[index.row()]
return QVariant(category + _(' plugins')) return QVariant(_("%(plugin_type)s %(plugins)s")%\
dict(plugin_type=category, plugins=_('plugins')))
else: else:
plugin = self.index_to_plugin(index) plugin = self.index_to_plugin(index)
if role == Qt.DisplayRole: if role == Qt.DisplayRole:

View File

@ -1,3 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0"> <ui version="4.0">
<class>Form</class> <class>Form</class>
<widget class="QWidget" name="Form"> <widget class="QWidget" name="Form">
@ -16,13 +17,13 @@
<item> <item>
<widget class="QLabel" name="label"> <widget class="QLabel" name="label">
<property name="text"> <property name="text">
<string>&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html>&lt;head>&lt;meta name="qrichtext" content="1" />&lt;style type="text/css"> &lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; } p, li { white-space: pre-wrap; }
&lt;/style>&lt;/head>&lt;body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:400; font-style:normal;"> &lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'DejaVu Sans'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set a regular expression pattern to use when trying to guess ebook metadata from filenames. &lt;/p> &lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Set a regular expression pattern to use when trying to guess ebook metadata from filenames. &lt;/p&gt;
&lt;p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">A &lt;a href="http://docs.python.org/lib/re-syntax.html">&lt;span style=" text-decoration: underline; color:#0000ff;">reference&lt;/span>&lt;/a> on the syntax of regular expressions is available.&lt;/p> &lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;A &lt;a href=&quot;http://docs.python.org/lib/re-syntax.html&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0000ee;&quot;&gt;reference&lt;/span&gt;&lt;/a&gt; on the syntax of regular expressions is available.&lt;/p&gt;
&lt;p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use the &lt;span style=" font-weight:600;">Test&lt;/span> functionality below to test your regular expression on a few sample filenames. The group names for the various metadata entries are documented in tooltips.&lt;/p>&lt;/body>&lt;/html></string> &lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Use the &lt;span style=&quot; font-weight:600;&quot;&gt;Test&lt;/span&gt; functionality below to test your regular expression on a few sample filenames. The group names for the various metadata entries are documented in tooltips.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property> </property>
<property name="textFormat"> <property name="textFormat">
<enum>Qt::RichText</enum> <enum>Qt::RichText</enum>
@ -113,7 +114,7 @@ p, li { white-space: pre-wrap; }
<item row="1" column="1" colspan="2"> <item row="1" column="1" colspan="2">
<widget class="QLineEdit" name="authors"> <widget class="QLineEdit" name="authors">
<property name="toolTip"> <property name="toolTip">
<string>Regular expression (?P&lt;author>)</string> <string>Regular expression (?P&lt;author&gt;)</string>
</property> </property>
<property name="text"> <property name="text">
<string>No match</string> <string>No match</string>
@ -133,7 +134,7 @@ p, li { white-space: pre-wrap; }
<item row="2" column="1" colspan="2"> <item row="2" column="1" colspan="2">
<widget class="QLineEdit" name="series"> <widget class="QLineEdit" name="series">
<property name="toolTip"> <property name="toolTip">
<string>Regular expression (?P&lt;series>)</string> <string>Regular expression (?P&lt;series&gt;)</string>
</property> </property>
<property name="text"> <property name="text">
<string>No match</string> <string>No match</string>
@ -143,17 +144,17 @@ p, li { white-space: pre-wrap; }
</property> </property>
</widget> </widget>
</item> </item>
<item rowspan="2" row="3" column="0" > <item row="3" column="0" rowspan="2">
<widget class="QLabel" name="label_6"> <widget class="QLabel" name="label_6">
<property name="text"> <property name="text">
<string>Series index:</string> <string>Series index:</string>
</property> </property>
</widget> </widget>
</item> </item>
<item rowspan="2" row="3" column="1" colspan="2" > <item row="3" column="1" rowspan="2" colspan="2">
<widget class="QLineEdit" name="series_index"> <widget class="QLineEdit" name="series_index">
<property name="toolTip"> <property name="toolTip">
<string>Regular expression (?P&lt;series_index>)</string> <string>Regular expression (?P&lt;series_index&gt;)</string>
</property> </property>
<property name="text"> <property name="text">
<string>No match</string> <string>No match</string>
@ -173,7 +174,7 @@ p, li { white-space: pre-wrap; }
<item row="5" column="1"> <item row="5" column="1">
<widget class="QLineEdit" name="isbn"> <widget class="QLineEdit" name="isbn">
<property name="toolTip"> <property name="toolTip">
<string>Regular expression (?P&lt;isbn>)</string> <string>Regular expression (?P&lt;isbn&gt;)</string>
</property> </property>
<property name="text"> <property name="text">
<string>No match</string> <string>No match</string>

View File

@ -1788,7 +1788,7 @@ def init_qt(args):
parser = option_parser() parser = option_parser()
opts, args = parser.parse_args(args) opts, args = parser.parse_args(args)
if opts.with_library is not None and os.path.isdir(opts.with_library): if opts.with_library is not None and os.path.isdir(opts.with_library):
prefs.set('library_path', opts.with_library) prefs.set('library_path', os.path.abspath(opts.with_library))
print 'Using library at', prefs['library_path'] print 'Using library at', prefs['library_path']
app = Application(args) app = Application(args)
actions = tuple(Main.create_application_menubar()) actions = tuple(Main.create_application_menubar())

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"

View File

@ -17,7 +17,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

File diff suppressed because it is too large Load Diff

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: calibre\n" "Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-08-03 21:27+0000\n" "POT-Creation-Date: 2009-08-03 21:27+0000\n"
"PO-Revision-Date: 2009-08-06 19:22+0000\n" "PO-Revision-Date: 2009-08-09 18:40+0000\n"
"Last-Translator: Laszlo Tamas <Unknown>\n" "Last-Translator: Devilinside <Unknown>\n"
"Language-Team: Hungarian <hu@li.org>\n" "Language-Team: Hungarian <hu@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
@ -730,7 +730,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:96 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:96
msgid "INPUT OPTIONS" msgid "INPUT OPTIONS"
msgstr "" msgstr "BEMENET OPCIÓK"
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:97 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:97
msgid "Options to control the processing of the input %s file" msgid "Options to control the processing of the input %s file"
@ -738,7 +738,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:103 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:103
msgid "OUTPUT OPTIONS" msgid "OUTPUT OPTIONS"
msgstr "" msgstr "KIMENET OPCIÓK"
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:104 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:104
msgid "Options to control the processing of the output %s" msgid "Options to control the processing of the output %s"
@ -1053,6 +1053,9 @@ msgid ""
"Attempt to detect and correct hard line breaks and other problems in the " "Attempt to detect and correct hard line breaks and other problems in the "
"source file. This may make things worse, so use with care." "source file. This may make things worse, so use with care."
msgstr "" msgstr ""
"Megkísérli felismerni és korrigálni a szükségtelen sortöréseket és más "
"problémákat a forrásfájlban. Az eredmény azonban akár a vártnál rosszabb is "
"lehet, úgyhogy óvatosan használd."
#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:320 #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:320
msgid "Use a regular expression to try and remove the header." msgid "Use a regular expression to try and remove the header."
@ -1661,7 +1664,7 @@ msgstr "Könyv kategória megadása."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:74 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:74
msgid "Get the cover from the ebook and save it at as the specified file." msgid "Get the cover from the ebook and save it at as the specified file."
msgstr "" msgstr "A könyvborító mentése az ebookból egy megadott fájlba."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:77 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:77
msgid "" msgid ""
@ -2361,7 +2364,7 @@ msgstr "Képregény bemenet"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output.py:18 #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output.py:18
#: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output.py:17 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output.py:17
msgid "Options specific to" msgid "Options specific to"
msgstr "" msgstr "Beállítás:"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input.py:16 #: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input.py:16
#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input.py:13 #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input.py:13
@ -2554,7 +2557,7 @@ msgstr "Széles képek automatikus forgatásának engedélyezése"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:117 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:117
msgid "&Wordspace:" msgid "&Wordspace:"
msgstr "" msgstr "Szavak közötti távolság:"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:119
msgid "Minimum para. &indent:" msgid "Minimum para. &indent:"
@ -2874,7 +2877,7 @@ msgstr "Konvertálás"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:161 #: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:161
msgid "Options specific to the input format." msgid "Options specific to the input format."
msgstr "" msgstr "A bemeneti formátumnak megfelelő beállítások"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/single_ui.py:105 #: /home/kovid/work/calibre/src/calibre/gui2/convert/single_ui.py:105
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:61 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:61
@ -2990,7 +2993,7 @@ msgstr "Tartalomjegyzék"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:18 #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:18
msgid "Control the creation/conversion of the Table of Contents." msgid "Control the creation/conversion of the Table of Contents."
msgstr "" msgstr "A Tartalomjegyzék készítésének beállításai"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:29 #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:29
msgid "Level &1 TOC (XPath expression):" msgid "Level &1 TOC (XPath expression):"
@ -3122,6 +3125,13 @@ msgid ""
"href=\"http://calibre.kovidgoyal.net/user_manual/xpath.html\">XPath " "href=\"http://calibre.kovidgoyal.net/user_manual/xpath.html\">XPath "
"Tutorial</a>." "Tutorial</a>."
msgstr "" msgstr ""
"<p>Például minden 'h2' tag kiválasztásához, amelyik 'class' értéke 'chapter' "
"add meg tag-ként a <i>h2</i>-t, attribútumként a <i>class</i>-ot és "
"értékként <i>chapter</i>-t.</p><p>Üresen hagyott attribútum=bármilyen "
"attribútum és üresen hagyott érték=bármilyen értk. Minden tag-hoz add meg a "
"'*'-ot.</p><p>További információk az XPath használatához elérhetőek az <a "
"href=\"http://calibre.kovidgoyal.net/user_manual/xpath.html\">XPath "
"Tutorial</a>-ban."
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:39
#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:123 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:123
@ -3264,6 +3274,8 @@ msgstr "Nincs megfeleő formátum"
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:595
msgid "Auto convert the following books before sending via email?" msgid "Auto convert the following books before sending via email?"
msgstr "" msgstr ""
"Az email-ben való elküldés előtt automatikusan konvertáljam a kijelölt "
"könyveket?"
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:602
msgid "" msgid ""
@ -3731,7 +3743,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:535 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:535
msgid "Free unused diskspace from the database" msgid "Free unused diskspace from the database"
msgstr "" msgstr "Lemezterület felszabadítása"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:536 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:536
msgid "&Compact database" msgid "&Compact database"
@ -3909,7 +3921,7 @@ msgstr "Nem találhatók metaadatok"
msgid "" msgid ""
"No metadata found, try adjusting the title and author or the ISBN key." "No metadata found, try adjusting the title and author or the ISBN key."
msgstr "" msgstr ""
"Nem találhat metaadat, próbáld meg finomítani a könyvcímet, szerzőt vagy az " "Nem található metaadat, próbáld meg finomítani a könyvcímet, szerzőt vagy az "
"ISBN-t." "ISBN-t."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:78 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:78
@ -6049,6 +6061,8 @@ msgstr "/Ismeretlen"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:213 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:213
msgid "Go to a reference. To get reference numbers, use the reference mode." msgid "Go to a reference. To get reference numbers, use the reference mode."
msgstr "" msgstr ""
"Ugrás egy referenciára. A referencia számok használatához be kell kapcsolnod "
"a Referencia Módot"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:219 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:219
msgid "Search for text in book" msgid "Search for text in book"
@ -6262,6 +6276,9 @@ msgid ""
"your calibre book collection directly on the device. To do this you have to " "your calibre book collection directly on the device. To do this you have to "
"turn on the content server." "turn on the content server."
msgstr "" msgstr ""
"Ha Androidos telefonodon a WordPlayer ebook olvasó programot használod, "
"akkor calibre adatbázisod hálózaton keresztül is elérhető lesz, ha "
"bekapcsolod a tartalomkiszolgálót."
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:283 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:283
msgid "" msgid ""
@ -6276,6 +6293,9 @@ msgid ""
"WordPlayer. Here myhostname should be the fully qualified hostname or the IP " "WordPlayer. Here myhostname should be the fully qualified hostname or the IP "
"address of the computer calibre is running on." "address of the computer calibre is running on."
msgstr "" msgstr ""
"Hozzá kell adnod a 'http://myhostname:8080' URL-t, mint a calibre adatbázist "
"a WordPlayerben. A 'myhostname' helyére a calibre-t futtató számítógép "
"teljes neve, vagy IP címe kerüljön."
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:362
msgid "Moving library..." msgid "Moving library..."
@ -6688,6 +6708,7 @@ msgid ""
"Assume that each directory has only a single logical book and that all files " "Assume that each directory has only a single logical book and that all files "
"in it are different e-book formats of that book" "in it are different e-book formats of that book"
msgstr "" msgstr ""
"Feltéve, hogy minden mappa egy köny kölönböző formátumait tartalmazza"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:332 #: /home/kovid/work/calibre/src/calibre/library/cli.py:332
msgid "Process directories recursively" msgid "Process directories recursively"

View File

@ -15,7 +15,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
"X-Poedit-Country: RUSSIAN FEDERATION\n" "X-Poedit-Country: RUSSIAN FEDERATION\n"
"X-Poedit-Language: Russian\n" "X-Poedit-Language: Russian\n"

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-08-07 16:28+0000\n" "X-Launchpad-Export-Date: 2009-08-10 16:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n" "X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41

View File

@ -14,6 +14,7 @@ from calibre.ptempfile import PersistentTemporaryFile
if iswindows: if iswindows:
import win32process import win32process
_windows_null_file = open(os.devnull, 'wb')
class Worker(object): class Worker(object):
''' '''
@ -149,9 +150,20 @@ class Worker(object):
self._file = PersistentTemporaryFile('_worker_redirect.log') self._file = PersistentTemporaryFile('_worker_redirect.log')
args['stdout'] = self._file._fd args['stdout'] = self._file._fd
args['stderr'] = subprocess.STDOUT args['stderr'] = subprocess.STDOUT
if iswindows:
args['stdin'] = subprocess.PIPE
ret = self._file.name ret = self._file.name
if iswindows and 'stdin' not in args:
# On windows when usingthepythonw interpreter,
# stdout, stderr and stdin may not be valid
args['stdin'] = subprocess.PIPE
args['stdout'] = _windows_null_file
args['stderr'] = subprocess.STDOUT
self.child = subprocess.Popen(cmd, **args) self.child = subprocess.Popen(cmd, **args)
if 'stdin' in args:
self.child.stdin.close()
self.log_path = ret self.log_path = ret
return ret return ret

View File

@ -78,7 +78,8 @@ class ConnectedWorker(Thread):
self._returncode = r self._returncode = r
return r return r
class CriticalError(Exception):
pass
class Server(Thread): class Server(Thread):
@ -112,6 +113,8 @@ class Server(Thread):
id = self.launched_worker_count id = self.launched_worker_count
rfile = os.path.join(tempfile.gettempdir(), rfile = os.path.join(tempfile.gettempdir(),
'calibre_ipc_result_%d_%d.pickle'%(self.id, id)) 'calibre_ipc_result_%d_%d.pickle'%(self.id, id))
if redirect_output is None:
redirect_output = not gui
env = { env = {
'CALIBRE_WORKER_ADDRESS' : 'CALIBRE_WORKER_ADDRESS' :
@ -126,14 +129,12 @@ class Server(Thread):
if isinstance(cw, ConnectedWorker): if isinstance(cw, ConnectedWorker):
break break
if isinstance(cw, basestring): if isinstance(cw, basestring):
raise Exception('Failed to launch worker process:\n'+cw) raise CriticalError('Failed to launch worker process:\n'+cw)
return cw return cw
def do_launch(self, env, gui, redirect_output, rfile): def do_launch(self, env, gui, redirect_output, rfile):
w = Worker(env, gui=gui) w = Worker(env, gui=gui)
if redirect_output is None:
redirect_output = not gui
try: try:
w(redirect_output=redirect_output) w(redirect_output=redirect_output)
conn = self.listener.accept() conn = self.listener.accept()
@ -191,7 +192,9 @@ class Server(Thread):
if len(self.pool) + len(self.workers) < self.pool_size: if len(self.pool) + len(self.workers) < self.pool_size:
try: try:
self.pool.append(self.launch_worker()) self.pool.append(self.launch_worker())
except Exception, err: except CriticalError:
raise
except Exception:
pass pass
if len(self.pool) > 0 and len(self.waiting_jobs) > 0: if len(self.pool) > 0 and len(self.waiting_jobs) > 0: