mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Implement #3447 (Option to limit parallel processes)
This commit is contained in:
parent
b36808c1fc
commit
6fea6a8fa7
@ -83,6 +83,8 @@ def _config():
|
|||||||
help='Search history for the LRF viewer')
|
help='Search history for the LRF viewer')
|
||||||
c.add_opt('scheduler_search_history', default=[],
|
c.add_opt('scheduler_search_history', default=[],
|
||||||
help='Search history for the recipe scheduler')
|
help='Search history for the recipe scheduler')
|
||||||
|
c.add_opt('worker_limit', default=6,
|
||||||
|
help=_('Maximum number of waiting worker processes'))
|
||||||
|
|
||||||
return ConfigProxy(c)
|
return ConfigProxy(c)
|
||||||
|
|
||||||
|
@ -457,6 +457,7 @@ class ConfigDialog(QDialog, Ui_Dialog):
|
|||||||
self.connect(self.sync_news, SIGNAL('toggled(bool)'),
|
self.connect(self.sync_news, SIGNAL('toggled(bool)'),
|
||||||
self.delete_news.setEnabled)
|
self.delete_news.setEnabled)
|
||||||
self.setup_conversion_options()
|
self.setup_conversion_options()
|
||||||
|
self.opt_worker_limit.setValue(config['worker_limit'])
|
||||||
|
|
||||||
def create_symlinks(self):
|
def create_symlinks(self):
|
||||||
from calibre.utils.osx_symlinks import create_symlinks
|
from calibre.utils.osx_symlinks import create_symlinks
|
||||||
@ -696,6 +697,12 @@ class ConfigDialog(QDialog, Ui_Dialog):
|
|||||||
return
|
return
|
||||||
if not self.add_save.save_settings():
|
if not self.add_save.save_settings():
|
||||||
return
|
return
|
||||||
|
wl = self.opt_worker_limit.value()
|
||||||
|
if wl%2 != 0:
|
||||||
|
wl += 1
|
||||||
|
config['worker_limit'] = wl
|
||||||
|
|
||||||
|
|
||||||
config['use_roman_numerals_for_series_number'] = bool(self.roman_numerals.isChecked())
|
config['use_roman_numerals_for_series_number'] = bool(self.roman_numerals.isChecked())
|
||||||
config['new_version_notification'] = bool(self.new_version_notification.isChecked())
|
config['new_version_notification'] = bool(self.new_version_notification.isChecked())
|
||||||
prefs['network_timeout'] = int(self.timeout.value())
|
prefs['network_timeout'] = int(self.timeout.value())
|
||||||
|
@ -682,30 +682,38 @@
|
|||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QWidget" name="page_2">
|
<widget class="QWidget" name="page_2">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_9">
|
<layout class="QGridLayout" name="gridLayout_3">
|
||||||
<item>
|
<item row="0" column="0">
|
||||||
<spacer>
|
<widget class="QLabel" name="label_5">
|
||||||
<property name="orientation">
|
<property name="text">
|
||||||
<enum>Qt::Horizontal</enum>
|
<string>&Maximum number of waiting worker processes (needs restart):</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizeHint" stdset="0">
|
<property name="buddy">
|
||||||
<size>
|
<cstring>opt_worker_limit</cstring>
|
||||||
<width>154</width>
|
|
||||||
<height>20</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
</property>
|
||||||
</spacer>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item row="0" column="1">
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_12">
|
<widget class="QSpinBox" name="opt_worker_limit">
|
||||||
<item>
|
<property name="minimum">
|
||||||
|
<number>2</number>
|
||||||
|
</property>
|
||||||
|
<property name="maximum">
|
||||||
|
<number>10000</number>
|
||||||
|
</property>
|
||||||
|
<property name="singleStep">
|
||||||
|
<number>2</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0" colspan="2">
|
||||||
<widget class="QPushButton" name="compact_button">
|
<widget class="QPushButton" name="compact_button">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>&Check database integrity</string>
|
<string>&Check database integrity</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item row="2" column="0" colspan="2">
|
||||||
<widget class="QPushButton" name="button_osx_symlinks">
|
<widget class="QPushButton" name="button_osx_symlinks">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>&Install command line tools</string>
|
<string>&Install command line tools</string>
|
||||||
@ -713,21 +721,6 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<spacer>
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Horizontal</enum>
|
|
||||||
</property>
|
|
||||||
<property name="sizeHint" stdset="0">
|
|
||||||
<size>
|
|
||||||
<width>153</width>
|
|
||||||
<height>20</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QWidget" name="page_4">
|
<widget class="QWidget" name="page_4">
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||||
|
@ -15,7 +15,7 @@ from PyQt4.Qt import QAbstractTableModel, QVariant, QModelIndex, Qt, \
|
|||||||
|
|
||||||
from calibre.utils.ipc.server import Server
|
from calibre.utils.ipc.server import Server
|
||||||
from calibre.utils.ipc.job import ParallelJob
|
from calibre.utils.ipc.job import ParallelJob
|
||||||
from calibre.gui2 import Dispatcher, error_dialog, NONE
|
from calibre.gui2 import Dispatcher, error_dialog, NONE, config
|
||||||
from calibre.gui2.device import DeviceJob
|
from calibre.gui2.device import DeviceJob
|
||||||
from calibre.gui2.dialogs.jobs_ui import Ui_JobsDialog
|
from calibre.gui2.dialogs.jobs_ui import Ui_JobsDialog
|
||||||
from calibre import __appname__
|
from calibre import __appname__
|
||||||
@ -31,7 +31,7 @@ class JobManager(QAbstractTableModel):
|
|||||||
|
|
||||||
self.jobs = []
|
self.jobs = []
|
||||||
self.add_job = Dispatcher(self._add_job)
|
self.add_job = Dispatcher(self._add_job)
|
||||||
self.server = Server()
|
self.server = Server(limit=int(config['worker_limit']/2.0))
|
||||||
self.changed_queue = Queue()
|
self.changed_queue = Queue()
|
||||||
|
|
||||||
self.timer = QTimer(self)
|
self.timer = QTimer(self)
|
||||||
|
@ -530,7 +530,7 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI):
|
|||||||
self._sync_menu.trigger_default)
|
self._sync_menu.trigger_default)
|
||||||
|
|
||||||
def add_spare_server(self, *args):
|
def add_spare_server(self, *args):
|
||||||
self.spare_servers.append(Server())
|
self.spare_servers.append(Server(limit=int(config['worker_limit']/2.0)))
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def spare_server(self):
|
def spare_server(self):
|
||||||
|
@ -5,8 +5,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: calibre 0.6.11\n"
|
"Project-Id-Version: calibre 0.6.11\n"
|
||||||
"POT-Creation-Date: 2009-09-10 20:58+MDT\n"
|
"POT-Creation-Date: 2009-09-10 21:29+MDT\n"
|
||||||
"PO-Revision-Date: 2009-09-10 20:58+MDT\n"
|
"PO-Revision-Date: 2009-09-10 21:29+MDT\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"
|
||||||
@ -94,8 +94,8 @@ msgstr ""
|
|||||||
#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29
|
#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29
|
||||||
#: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:139
|
#: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:139
|
||||||
#: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:141
|
#: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:141
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261
|
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:263
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268
|
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:270
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/add.py:111
|
#: /home/kovid/work/calibre/src/calibre/gui2/add.py:111
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/add.py:118
|
#: /home/kovid/work/calibre/src/calibre/gui2/add.py:118
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21
|
#: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21
|
||||||
@ -1848,7 +1848,7 @@ msgid "Add a tab at the beginning of each paragraph."
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:27
|
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:27
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:505
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:508
|
||||||
msgid "Frequently used directories"
|
msgid "Frequently used directories"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -1936,16 +1936,20 @@ msgstr ""
|
|||||||
msgid "Default action to perform when send to device button is clicked"
|
msgid "Default action to perform when send to device button is clicked"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:123
|
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:87
|
||||||
|
msgid "Maximum number of waiting worker processes"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:125
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:397
|
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:397
|
||||||
msgid "Copied"
|
msgid "Copied"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152
|
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:154
|
||||||
msgid "Copy"
|
msgid "Copy"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152
|
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:154
|
||||||
msgid "Copy to Clipboard"
|
msgid "Copy to Clipboard"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -2143,14 +2147,14 @@ msgstr ""
|
|||||||
#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:44
|
#: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:44
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:61
|
#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:61
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:62
|
#: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:62
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:491
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:494
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:503
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:506
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:504
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:507
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:507
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:509
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:510
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:525
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:512
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:526
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:528
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:529
|
||||||
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:560
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:343
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:343
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:348
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:348
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362
|
||||||
@ -3179,126 +3183,126 @@ msgstr ""
|
|||||||
msgid "new email address"
|
msgid "new email address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:465
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:466
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:798
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:805
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:140
|
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:140
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004
|
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004
|
||||||
#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:52
|
#: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:52
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:466
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:467
|
||||||
msgid "Failed to install command line tools."
|
msgid "Failed to install command line tools."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:469
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:470
|
||||||
msgid "Command line tools installed"
|
msgid "Command line tools installed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:470
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:471
|
||||||
msgid "Command line tools installed in"
|
msgid "Command line tools installed in"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:471
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:472
|
||||||
msgid "If you move calibre.app, you have to re-install the command line tools."
|
msgid "If you move calibre.app, you have to re-install the command line tools."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:522
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523
|
||||||
msgid "No valid plugin path"
|
msgid "No valid plugin path"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:523
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:524
|
||||||
msgid "%s is not a valid plugin path"
|
msgid "%s is not a valid plugin path"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:526
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:527
|
||||||
msgid "Choose plugin"
|
msgid "Choose plugin"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:538
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:539
|
||||||
msgid "Plugin cannot be disabled"
|
msgid "Plugin cannot be disabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:539
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:540
|
||||||
msgid "The plugin: %s cannot be disabled"
|
msgid "The plugin: %s cannot be disabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:548
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:549
|
||||||
msgid "Plugin not customizable"
|
msgid "Plugin not customizable"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:549
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:550
|
||||||
msgid "Plugin: %s does not need customization"
|
msgid "Plugin: %s does not need customization"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:573
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:574
|
||||||
msgid "Customize %s"
|
msgid "Customize %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:583
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:584
|
||||||
msgid "Cannot remove builtin plugin"
|
msgid "Cannot remove builtin plugin"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:584
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:585
|
||||||
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
|
msgid " cannot be removed. It is a builtin plugin. Try disabling it instead."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:617
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:618
|
||||||
msgid "Error log:"
|
msgid "Error log:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:624
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:625
|
||||||
msgid "Access log:"
|
msgid "Access log:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:649
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:650
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:573
|
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:573
|
||||||
msgid "Failed to start content server"
|
msgid "Failed to start content server"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:673
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:674
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:470
|
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:470
|
||||||
msgid "Select location for books"
|
msgid "Select location for books"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:690
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691
|
||||||
msgid "Invalid size"
|
msgid "Invalid size"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:691
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:692
|
||||||
msgid "The size %s is invalid. must be of the form widthxheight"
|
msgid "The size %s is invalid. must be of the form widthxheight"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:735
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:742
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:740
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:747
|
||||||
msgid "Invalid database location"
|
msgid "Invalid database location"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:736
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:743
|
||||||
msgid "Invalid database location "
|
msgid "Invalid database location "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:737
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:744
|
||||||
msgid "<br>Must be a directory."
|
msgid "<br>Must be a directory."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:741
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:748
|
||||||
msgid "Invalid database location.<br>Cannot write to "
|
msgid "Invalid database location.<br>Cannot write to "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:779
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:786
|
||||||
msgid "Checking database integrity"
|
msgid "Checking database integrity"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:799
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:806
|
||||||
msgid "Failed to check database integrity"
|
msgid "Failed to check database integrity"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:804
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:811
|
||||||
msgid "Some inconsistencies found"
|
msgid "Some inconsistencies found"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:805
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:812
|
||||||
msgid "The following books had formats listed in the database that are not actually available. The entries for the formats have been removed. You should check them manually. This can happen if you manipulate the files in the library folder directly."
|
msgid "The following books had formats listed in the database that are not actually available. The entries for the formats have been removed. You should check them manually. This can happen if you manipulate the files in the library folder directly."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3382,256 +3386,260 @@ msgstr ""
|
|||||||
msgid "&Saving books"
|
msgid "&Saving books"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:488
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:491
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:367
|
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:367
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:173
|
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:173
|
||||||
msgid "Preferences"
|
msgid "Preferences"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:489
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:492
|
||||||
msgid "&Location of ebooks (The ebooks are stored in folders sorted by author and metadata is stored in the file metadata.db)"
|
msgid "&Location of ebooks (The ebooks are stored in folders sorted by author and metadata is stored in the file metadata.db)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:490
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:493
|
||||||
msgid "Browse for the new database location"
|
msgid "Browse for the new database location"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:492
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:495
|
||||||
msgid "Show notification when &new version is available"
|
msgid "Show notification when &new version is available"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:493
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:496
|
||||||
msgid "Default network &timeout:"
|
msgid "Default network &timeout:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:494
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:497
|
||||||
msgid "Set the default timeout for network fetches (i.e. anytime we go out to the internet to get information)"
|
msgid "Set the default timeout for network fetches (i.e. anytime we go out to the internet to get information)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:495
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:498
|
||||||
msgid " seconds"
|
msgid " seconds"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:496
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:499
|
||||||
msgid "Choose &language (requires restart):"
|
msgid "Choose &language (requires restart):"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:497
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500
|
||||||
msgid "Normal"
|
msgid "Normal"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:498
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501
|
||||||
msgid "High"
|
msgid "High"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:499
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:502
|
||||||
msgid "Low"
|
msgid "Low"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:503
|
||||||
msgid "Job &priority:"
|
msgid "Job &priority:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:504
|
||||||
msgid "Preferred &output format:"
|
msgid "Preferred &output format:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:502
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:505
|
||||||
msgid "Preferred &input format order:"
|
msgid "Preferred &input format order:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:506
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:509
|
||||||
msgid "Add a directory to the frequently used directories list"
|
msgid "Add a directory to the frequently used directories list"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:508
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:511
|
||||||
msgid "Remove a directory from the frequently used directories list"
|
msgid "Remove a directory from the frequently used directories list"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:510
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:513
|
||||||
msgid "Use &Roman numerals for series number"
|
msgid "Use &Roman numerals for series number"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:511
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:514
|
||||||
msgid "Enable system &tray icon (needs restart)"
|
msgid "Enable system &tray icon (needs restart)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:512
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:515
|
||||||
msgid "Show ¬ifications in system tray"
|
msgid "Show ¬ifications in system tray"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:513
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:516
|
||||||
msgid "Show cover &browser in a separate window (needs restart)"
|
msgid "Show cover &browser in a separate window (needs restart)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:514
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:517
|
||||||
msgid "Search as you type"
|
msgid "Search as you type"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:515
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:518
|
||||||
msgid "Automatically send downloaded &news to ebook reader"
|
msgid "Automatically send downloaded &news to ebook reader"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:516
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:519
|
||||||
msgid "&Delete news from library when it is automatically sent to reader"
|
msgid "&Delete news from library when it is automatically sent to reader"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:517
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:520
|
||||||
msgid "&Number of covers to show in browse mode (needs restart):"
|
msgid "&Number of covers to show in browse mode (needs restart):"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:518
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:521
|
||||||
msgid "Toolbar"
|
msgid "Toolbar"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:519
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:522
|
||||||
msgid "Large"
|
msgid "Large"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:520
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:523
|
||||||
msgid "Medium"
|
msgid "Medium"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:521
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:524
|
||||||
msgid "Small"
|
msgid "Small"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:522
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:525
|
||||||
msgid "&Button size in toolbar"
|
msgid "&Button size in toolbar"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:523
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:526
|
||||||
msgid "Show &text in toolbar buttons"
|
msgid "Show &text in toolbar buttons"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:524
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:527
|
||||||
msgid "Select visible &columns in library view"
|
msgid "Select visible &columns in library view"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:527
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:530
|
||||||
msgid "Use internal &viewer for:"
|
msgid "Use internal &viewer for:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:528
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:531
|
||||||
msgid "Add an email address to which to send books"
|
msgid "Add an email address to which to send books"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:529
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:532
|
||||||
msgid "&Add email"
|
msgid "&Add email"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:530
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533
|
||||||
msgid "Make &default"
|
msgid "Make &default"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:531
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:534
|
||||||
msgid "&Remove email"
|
msgid "&Remove email"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:532
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:535
|
||||||
msgid "calibre can send your books to you (or your reader) by email"
|
msgid "calibre can send your books to you (or your reader) by email"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533
|
|
||||||
msgid "&Check database integrity"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:534
|
|
||||||
msgid "&Install command line tools"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:535
|
|
||||||
msgid "calibre contains a network server that allows you to access your book collection using a browser from anywhere in the world. Any changes to the settings will only take effect after a server restart."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:536
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:536
|
||||||
msgid "Server &port:"
|
msgid "&Maximum number of waiting worker processes (needs restart):"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:537
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:537
|
||||||
|
msgid "&Check database integrity"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:538
|
||||||
|
msgid "&Install command line tools"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:539
|
||||||
|
msgid "calibre contains a network server that allows you to access your book collection using a browser from anywhere in the world. Any changes to the settings will only take effect after a server restart."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:540
|
||||||
|
msgid "Server &port:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:541
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:178
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:178
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:117
|
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:117
|
||||||
msgid "&Username:"
|
msgid "&Username:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:538
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:542
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:179
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:179
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119
|
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119
|
||||||
msgid "&Password:"
|
msgid "&Password:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:539
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:543
|
||||||
msgid "If you leave the password blank, anyone will be able to access your book collection using the web interface."
|
msgid "If you leave the password blank, anyone will be able to access your book collection using the web interface."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:540
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:544
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:180
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:180
|
||||||
msgid "&Show password"
|
msgid "&Show password"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:541
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:545
|
||||||
msgid "The maximum size (widthxheight) for displayed covers. Larger covers are resized. "
|
msgid "The maximum size (widthxheight) for displayed covers. Larger covers are resized. "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:542
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:546
|
||||||
msgid "Max. &cover size:"
|
msgid "Max. &cover size:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:543
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:547
|
||||||
msgid "&Start Server"
|
msgid "&Start Server"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:544
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548
|
||||||
msgid "St&op Server"
|
msgid "St&op Server"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:545
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:549
|
||||||
msgid "&Test Server"
|
msgid "&Test Server"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:546
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550
|
||||||
msgid "Run server &automatically on startup"
|
msgid "Run server &automatically on startup"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:547
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551
|
||||||
msgid "View &server logs"
|
msgid "View &server logs"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:548
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46
|
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:46
|
||||||
msgid ""
|
msgid ""
|
||||||
"<p>Remember to leave calibre running as the server only runs as long as calibre is running.\n"
|
"<p>Remember to leave calibre running as the server only runs as long as calibre is running.\n"
|
||||||
"<p>Stanza should see your calibre collection automatically. If not, try adding the URL http://myhostname:8080 as a new catalog in the Stanza reader on your iPhone. Here myhostname should be the fully qualified hostname or the IP address of the computer calibre is running on."
|
"<p>Stanza should see your calibre collection automatically. If not, try adding the URL http://myhostname:8080 as a new catalog in the Stanza reader on your iPhone. Here myhostname should be the fully qualified hostname or the IP address of the computer calibre is running on."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:550
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554
|
||||||
msgid "Here you can customize the behavior of Calibre by controlling what plugins it uses."
|
msgid "Here you can customize the behavior of Calibre by controlling what plugins it uses."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:551
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555
|
||||||
msgid "Enable/&Disable plugin"
|
msgid "Enable/&Disable plugin"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:552
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:556
|
||||||
msgid "&Customize plugin"
|
msgid "&Customize plugin"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:553
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557
|
||||||
msgid "&Remove plugin"
|
msgid "&Remove plugin"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:554
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:558
|
||||||
msgid "Add new plugin"
|
msgid "Add new plugin"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:555
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:559
|
||||||
msgid "Plugin &file:"
|
msgid "Plugin &file:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:557
|
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:561
|
||||||
msgid "&Add"
|
msgid "&Add"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ __license__ = 'GPL v3'
|
|||||||
__copyright__ = '2009, Kovid Goyal <kovid@kovidgoyal.net>'
|
__copyright__ = '2009, Kovid Goyal <kovid@kovidgoyal.net>'
|
||||||
__docformat__ = 'restructuredtext en'
|
__docformat__ = 'restructuredtext en'
|
||||||
|
|
||||||
import os, cPickle, time, tempfile
|
import sys, os, cPickle, time, tempfile
|
||||||
from math import ceil
|
from math import ceil
|
||||||
from threading import Thread, RLock
|
from threading import Thread, RLock
|
||||||
from Queue import Queue, Empty
|
from Queue import Queue, Empty
|
||||||
@ -83,14 +83,16 @@ class CriticalError(Exception):
|
|||||||
|
|
||||||
class Server(Thread):
|
class Server(Thread):
|
||||||
|
|
||||||
def __init__(self, notify_on_job_done=lambda x: x, pool_size=None):
|
def __init__(self, notify_on_job_done=lambda x: x, pool_size=None,
|
||||||
|
limit=sys.maxint):
|
||||||
Thread.__init__(self)
|
Thread.__init__(self)
|
||||||
self.daemon = True
|
self.daemon = True
|
||||||
global _counter
|
global _counter
|
||||||
self.id = _counter+1
|
self.id = _counter+1
|
||||||
_counter += 1
|
_counter += 1
|
||||||
|
|
||||||
self.pool_size = cpu_count() if pool_size is None else pool_size
|
limit = min(limit, cpu_count())
|
||||||
|
self.pool_size = limit if pool_size is None else pool_size
|
||||||
self.notify_on_job_done = notify_on_job_done
|
self.notify_on_job_done = notify_on_job_done
|
||||||
self.auth_key = os.urandom(32)
|
self.auth_key = os.urandom(32)
|
||||||
self.address = arbitrary_address('AF_PIPE' if iswindows else 'AF_UNIX')
|
self.address = arbitrary_address('AF_PIPE' if iswindows else 'AF_UNIX')
|
||||||
|
Loading…
x
Reference in New Issue
Block a user