String changes

This commit is contained in:
Kovid Goyal 2017-04-26 08:53:38 +05:30
parent e47bca25ce
commit a43d44c6af
15 changed files with 47 additions and 45 deletions

View File

@ -60,7 +60,7 @@ All the calibre python code is in the ``calibre`` package. This package contains
* db - The database back-end. See :ref:`db_api` for the interface to the calibre library. * db - The database back-end. See :ref:`db_api` for the interface to the calibre library.
* content server: ``library.server`` is the calibre Content Server. * Content server: ``library.server`` is the calibre Content server.
* gui2 - The Graphical User Interface. GUI initialization happens in ``gui2.main`` and ``gui2.ui``. The e-book-viewer is in ``gui2.viewer``. The e-book editor is in ``gui2.tweak_book``. * gui2 - The Graphical User Interface. GUI initialization happens in ``gui2.main`` and ``gui2.ui``. The e-book-viewer is in ``gui2.viewer``. The e-book editor is in ``gui2.tweak_book``.

View File

@ -318,7 +318,7 @@ in calibre and use the :guilabel:`Send to device` button to transfer files to
your device wirelessly. your device wirelessly.
Another easy way to browse your calibre collection from your Apple device Another easy way to browse your calibre collection from your Apple device
is by using the calibre content server, which makes your collection available is by using the calibre Content server, which makes your collection available
over the net. First perform the following steps in calibre over the net. First perform the following steps in calibre
* Set the Preferred Output Format in calibre to EPUB (The output format can be * Set the Preferred Output Format in calibre to EPUB (The output format can be
@ -327,11 +327,12 @@ over the net. First perform the following steps in calibre
under :guilabel:`Preferences->Conversion->Common options->Page setup` under :guilabel:`Preferences->Conversion->Common options->Page setup`
* Convert the books you want to read on your iDevice to EPUB format by * Convert the books you want to read on your iDevice to EPUB format by
selecting them and clicking the :guilabel:`Convert` button. selecting them and clicking the :guilabel:`Convert` button.
* Turn on the Content Server by clicking the :guilabel:`Connect/share` button * Turn on the Content server by clicking the :guilabel:`Connect/share` button
and leave calibre running. You can also tell calibre to automatically start the and leave calibre running. You can also tell calibre to automatically start the
content server via :guilabel:`Preferences->Sharing over the net`. Content server via :guilabel:`Preferences->Sharing over the net`.
There are many apps for your iDevice that can connect to the calibre content server. There are many apps for your iDevice that can connect to the calibre Content
server.
One was mentioned above: Calibre Companion. Below we describe two more of them, One was mentioned above: Calibre Companion. Below we describe two more of them,
iBooks and Stanza. iBooks and Stanza.
@ -350,7 +351,7 @@ like and in the URL field, enter the following::
http://192.168.1.2:8080/ http://192.168.1.2:8080/
Replace ``192.168.1.2`` with the local IP address of the computer running Replace ``192.168.1.2`` with the local IP address of the computer running
calibre. If you have changed the port the calibre content server is running on, you calibre. If you have changed the port the calibre Content server is running on, you
will have to change ``8080`` as well to the new port. The local IP address is will have to change ``8080`` as well to the new port. The local IP address is
the IP address your computer is assigned on your home network. A quick Google the IP address your computer is assigned on your home network. A quick Google
search will tell you how to find out your local IP address. Now click "Save" search will tell you how to find out your local IP address. Now click "Save"
@ -369,7 +370,7 @@ running the calibre server, like this::
http://192.168.1.2:8080/ http://192.168.1.2:8080/
Replace ``192.168.1.2`` with the local IP address of the computer running Replace ``192.168.1.2`` with the local IP address of the computer running
calibre. If you have changed the port the calibre content server is running on, you calibre. If you have changed the port the calibre Content server is running on, you
will have to change ``8080`` as well to the new port. The local IP address is will have to change ``8080`` as well to the new port. The local IP address is
the IP address your computer is assigned on your home network. A quick Google the IP address your computer is assigned on your home network. A quick Google
search will tell you how to find out your local IP address. search will tell you how to find out your local IP address.
@ -433,14 +434,14 @@ plugged in the device with a USB cable. You can browse files on the device
in calibre and use the :guilabel:`Send to device` button to transfer files to in calibre and use the :guilabel:`Send to device` button to transfer files to
your device wirelessly. your device wirelessly.
calibre also has a builtin web server, the :guilabel:`Content Server`. calibre also has a builtin web server, the :guilabel:`Content server`.
You can browse your calibre collection on your Android device by using the You can browse your calibre collection on your Android device by using the
calibre content server, which makes your collection available over the net. calibre Content server, which makes your collection available over the net.
First perform the following steps in calibre First perform the following steps in calibre
* Set the :guilabel:`Preferred Output Format` in calibre to EPUB for normal Android devices or MOBI for Kindles (The output format can be set under :guilabel:`Preferences->Interface->Behavior`) * Set the :guilabel:`Preferred Output Format` in calibre to EPUB for normal Android devices or MOBI for Kindles (The output format can be set under :guilabel:`Preferences->Interface->Behavior`)
* Convert the books you want to read on your device to EPUB/MOBI format by selecting them and clicking the :guilabel:`Convert` button. * Convert the books you want to read on your device to EPUB/MOBI format by selecting them and clicking the :guilabel:`Convert` button.
* Turn on the :guilabel:`Content Server` in calibre's preferences and leave calibre running. * Turn on the :guilabel:`Content server` in calibre's preferences and leave calibre running.
Now on your Android device, open the browser and browse to Now on your Android device, open the browser and browse to
@ -449,7 +450,7 @@ Now on your Android device, open the browser and browse to
Replace ``192.168.1.2`` with the local IP address of the computer running Replace ``192.168.1.2`` with the local IP address of the computer running
calibre. If your local network supports the use of computer names, you can calibre. If your local network supports the use of computer names, you can
replace the IP address with the network name of the computer. If you have replace the IP address with the network name of the computer. If you have
changed the port the calibre content server is running on, you will have to changed the port the calibre Content server is running on, you will have to
change ``8080`` as well to the new port. change ``8080`` as well to the new port.
The local IP address is the IP address your computer is assigned on your home The local IP address is the IP address your computer is assigned on your home
@ -467,9 +468,9 @@ reading software.
Can I access my calibre books using the web browser in my Kindle or other reading device? Can I access my calibre books using the web browser in my Kindle or other reading device?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
calibre has a *Content Server* that exports the books in calibre as a web page. You can turn it on under calibre has a *Content server* that exports the books in calibre as a web page. You can turn it on under
:guilabel:`Preferences->Sharing over the net`. Then just point the web browser on your device to the computer running :guilabel:`Preferences->Sharing over the net`. Then just point the web browser on your device to the computer running
the Content Server and you will be able to browse your book collection. For example, if the computer running the Content server and you will be able to browse your book collection. For example, if the computer running
the server has IP address 63.45.128.5, in the browser, you would type:: the server has IP address 63.45.128.5, in the browser, you would type::
http://63.45.128.5:8080 http://63.45.128.5:8080
@ -479,7 +480,7 @@ server runs). In that case, change the port in the calibre Preferences to 80. (O
you may not be able to run the server on a port number less than 1024 because of security settings. In you may not be able to run the server on a port number less than 1024 because of security settings. In
this case the simplest solution is to adjust your router to forward requests on port 80 to port 8080). this case the simplest solution is to adjust your router to forward requests on port 80 to port 8080).
I get the error message "Failed to start content server: Port 8080 not free on '0.0.0.0'"? I get the error message "Failed to start Content server: Port 8080 not free on '0.0.0.0'"?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The most likely cause of this is your antivirus program. Try temporarily disabling it and see if it does the trick. The most likely cause of this is your antivirus program. Try temporarily disabling it and see if it does the trick.
@ -671,7 +672,7 @@ Now this makes it very easy to find for example all science fiction books by Isa
In calibre, you would instead use tags to mark genre and read status and then just use a simple search query like ``tag:scifi and not tag:read``. calibre even has a nice graphical interface, so you don't need to learn its search language instead you can just click on tags to include or exclude them from the search. In calibre, you would instead use tags to mark genre and read status and then just use a simple search query like ``tag:scifi and not tag:read``. calibre even has a nice graphical interface, so you don't need to learn its search language instead you can just click on tags to include or exclude them from the search.
To those of you that claim that you need access to the filesystem, so that you can have access to your books over the network, calibre has an excellent content server that gives you access to your calibre library over the net. To those of you that claim that you need access to the filesystem, so that you can have access to your books over the network, calibre has an excellent Content server that gives you access to your calibre library over the net.
If you are worried that someday calibre will cease to be developed, leaving all your books marooned in its folder structure, explore the powerful :guilabel:`Save to Disk` feature in calibre that lets you export all your files into a folder structure of arbitrary complexity based on their metadata. If you are worried that someday calibre will cease to be developed, leaving all your books marooned in its folder structure, explore the powerful :guilabel:`Save to Disk` feature in calibre that lets you export all your files into a folder structure of arbitrary complexity based on their metadata.
@ -787,8 +788,9 @@ library, bad things will happen. Finally, different OSes impose different
limitations on filesystems, so if you share your networked drive across OSes, limitations on filesystems, so if you share your networked drive across OSes,
once again, bad things *will happen*. once again, bad things *will happen*.
Consider using the calibre Content Server to make your books available on other Consider using the calibre Content server to make your books available on other
computers. Run calibre on a single computer and access it via the Content Server computers. Run calibre on a single computer and access it via the Content
server
or a Remote Desktop solution. or a Remote Desktop solution.
If you must share the actual library, use a file syncing tool like If you must share the actual library, use a file syncing tool like
@ -1099,7 +1101,7 @@ How do I run calibre from my USB stick?
A portable version of calibre is available `here <https://calibre-ebook.com/download_portable>`_. A portable version of calibre is available `here <https://calibre-ebook.com/download_portable>`_.
How do I run parts of calibre like news download and the content server on my own linux server? How do I run parts of calibre like news download and the Content server on my own linux server?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
First, you must install calibre onto your linux server. If your server is using First, you must install calibre onto your linux server. If your server is using

View File

@ -242,7 +242,7 @@ Connect/share
2. **Connect to iTunes**: Allows you to connect to your iTunes books database as though it were a device. Once the books are sent to iTunes, you can use iTunes to make them available to your various iDevices. 2. **Connect to iTunes**: Allows you to connect to your iTunes books database as though it were a device. Once the books are sent to iTunes, you can use iTunes to make them available to your various iDevices.
3. **Start Content Server**: Starts calibre's built-in web server. When started, your calibre library will be accessible via a web browser from the Internet (if you choose). You can configure how the web server is accessed by setting preferences at :guilabel:`Preferences->Sharing->Sharing over the net` 3. **Start Content server**: Starts calibre's built-in web server. When started, your calibre library will be accessible via a web browser from the Internet (if you choose). You can configure how the web server is accessed by setting preferences at :guilabel:`Preferences->Sharing->Sharing over the net`
4. **Setup email based sharing of books**: Allows sharing of books and news feeds by email. After setting up email addresses for this option, calibre will send news updates and book updates to the entered email addresses. You can configure how calibre sends email by setting preferences at :guilabel:`Preferences->Sharing->Sharing books by email`. Once you have set up one or more email addresses, this menu entry will be replaced by menu entries to send books to the configured email addresses. 4. **Setup email based sharing of books**: Allows sharing of books and news feeds by email. After setting up email addresses for this option, calibre will send news updates and book updates to the entered email addresses. You can configure how calibre sends email by setting preferences at :guilabel:`Preferences->Sharing->Sharing books by email`. Once you have set up one or more email addresses, this menu entry will be replaced by menu entries to send books to the configured email addresses.

View File

@ -468,7 +468,7 @@ Plugboards are used for changing the metadata written into books during send-to-
When you create a plugboard, you specify the format and device for which the plugboard is to be used. A special device is provided, save_to_disk, that is used when saving formats (as opposed to sending them to a device). Once you have chosen the format and device, you choose the metadata fields to change, providing templates to supply the new values. These templates are `connected` to their destination fields, hence the name `plugboards`. You can, of course, use composite columns in these templates. When you create a plugboard, you specify the format and device for which the plugboard is to be used. A special device is provided, save_to_disk, that is used when saving formats (as opposed to sending them to a device). Once you have chosen the format and device, you choose the metadata fields to change, providing templates to supply the new values. These templates are `connected` to their destination fields, hence the name `plugboards`. You can, of course, use composite columns in these templates.
When a plugboard might apply (content server, save to disk, or send to device), calibre searches the defined plugboards to choose the correct one for the given format and device. For example, to find the appropriate plugboard for an EPUB book being sent to an ANDROID device, calibre searches the plugboards using the following search order: When a plugboard might apply (Content server, save to disk, or send to device), calibre searches the defined plugboards to choose the correct one for the given format and device. For example, to find the appropriate plugboard for an EPUB book being sent to an ANDROID device, calibre searches the plugboards using the following search order:
* a plugboard with an exact match on format and device, e.g., ``EPUB`` and ``ANDROID`` * a plugboard with an exact match on format and device, e.g., ``EPUB`` and ``ANDROID``
* a plugboard with an exact match on format and the special ``any device`` choice, e.g., ``EPUB`` and ``any device`` * a plugboard with an exact match on format and the special ``any device`` choice, e.g., ``EPUB`` and ``any device``

View File

@ -84,7 +84,7 @@ You can tell calibre that you always want to apply a particular virtual library
when the current library is opened, by going to when the current library is opened, by going to
:guilabel:`Preferences->Behavior`. :guilabel:`Preferences->Behavior`.
If you use the calibre Content Server, you can have it share a virtual library If you use the calibre Content server, you can have it share a virtual library
instead of the full library by going to :guilabel:`Preferences->Sharing over the net`. instead of the full library by going to :guilabel:`Preferences->Sharing over the net`.
You can quickly use the current search as a temporary virtual library by You can quickly use the current search as a temporary virtual library by

View File

@ -87,7 +87,7 @@ authors_split_regex = r'(?i),?\s+(and|with)\s+'
# Set which author field to display in the tags pane (the list of authors, # Set which author field to display in the tags pane (the list of authors,
# series, publishers etc on the left hand side). The choices are author and # series, publishers etc on the left hand side). The choices are author and
# author_sort. This tweak affects only what is displayed under the authors # author_sort. This tweak affects only what is displayed under the authors
# category in the tags pane and content server. Please note that if you set this # category in the tags pane and Content server. Please note that if you set this
# to author_sort, it is very possible to see duplicate names in the list because # to author_sort, it is very possible to see duplicate names in the list because
# although it is guaranteed that author names are unique, there is no such # although it is guaranteed that author names are unique, there is no such
# guarantee for author_sort values. Showing duplicates won't break anything, but # guarantee for author_sort values. Showing duplicates won't break anything, but
@ -350,10 +350,10 @@ sony_collection_sorting_rules = []
# a book' are added when copying books to another library # a book' are added when copying books to another library
add_new_book_tags_when_importing_books = False add_new_book_tags_when_importing_books = False
#: Set the maximum number of tags to show per book in the content server #: Set the maximum number of tags to show per book in the Content server
max_content_server_tags_shown=5 max_content_server_tags_shown=5
#: Set custom metadata fields that the content server will or will not display. #: Set custom metadata fields that the Content server will or will not display.
# content_server_will_display is a list of custom fields to be displayed. # content_server_will_display is a list of custom fields to be displayed.
# content_server_wont_display is a list of custom fields not to be displayed. # content_server_wont_display is a list of custom fields not to be displayed.
# wont_display has priority over will_display. # wont_display has priority over will_display.
@ -457,8 +457,8 @@ maximum_cover_size = (1650, 2200)
# the files will be sent to the location with the most free space. # the files will be sent to the location with the most free space.
send_news_to_device_location = "main" send_news_to_device_location = "main"
#: What interfaces should the content server listen on #: What interfaces should the Content server listen on
# By default, the calibre content server listens on '0.0.0.0' which means that it # By default, the calibre Content server listens on '0.0.0.0' which means that it
# accepts IPv4 connections on all interfaces. You can change this to, for # accepts IPv4 connections on all interfaces. You can change this to, for
# example, '127.0.0.1' to only listen for connections from the local machine, or # example, '127.0.0.1' to only listen for connections from the local machine, or
# to '::' to listen to all incoming IPv6 and IPv4 connections (this may not # to '::' to listen to all incoming IPv6 and IPv4 connections (this may not
@ -561,7 +561,7 @@ highlight_virtual_library = 'yellow'
# all available output formats to be present. # all available output formats to be present.
restrict_output_formats = None restrict_output_formats = None
#: Set the thumbnail image quality used by the content server #: Set the thumbnail image quality used by the Content server
# The quality of a thumbnail is largely controlled by the compression quality # The quality of a thumbnail is largely controlled by the compression quality
# used when creating it. Set this to a larger number to improve the quality. # used when creating it. Set this to a larger number to improve the quality.
# Note that the thumbnails get much larger with larger compression quality # Note that the thumbnails get much larger with larger compression quality

View File

@ -1267,7 +1267,7 @@ class Server(PreferencesPlugin):
category_order = 4 category_order = 4
name_order = 2 name_order = 2
config_widget = 'calibre.gui2.preferences.server' config_widget = 'calibre.gui2.preferences.server'
description = _('Setup the calibre Content Server which will ' description = _('Setup the calibre Content server which will '
'give you access to your calibre library from anywhere, ' 'give you access to your calibre library from anywhere, '
'on any device, over the internet') 'on any device, over the internet')

View File

@ -189,7 +189,7 @@ def _config(): # {{{
'Formats that are viewed using the internal viewer')) 'Formats that are viewed using the internal viewer'))
c.add_opt('column_map', default=ALL_COLUMNS, c.add_opt('column_map', default=ALL_COLUMNS,
help=_('Columns to be displayed in the book list')) help=_('Columns to be displayed in the book list'))
c.add_opt('autolaunch_server', default=False, help=_('Automatically launch content server on application startup')) c.add_opt('autolaunch_server', default=False, help=_('Automatically launch Content server on application startup'))
c.add_opt('oldest_news', default=60, help=_('Oldest news kept in database')) c.add_opt('oldest_news', default=60, help=_('Oldest news kept in database'))
c.add_opt('systray_icon', default=False, help=_('Show system tray icon')) c.add_opt('systray_icon', default=False, help=_('Show system tray icon'))
c.add_opt('upload_news_to_device', default=True, c.add_opt('upload_news_to_device', default=True,

View File

@ -49,7 +49,7 @@ class ShareConnMenu(QMenu): # {{{
self.addSeparator() self.addSeparator()
self.toggle_server_action = \ self.toggle_server_action = \
self.addAction(QIcon(I('network-server.png')), self.addAction(QIcon(I('network-server.png')),
_('Start Content Server')) _('Start Content server'))
self.toggle_server_action.triggered.connect(lambda x: self.toggle_server_action.triggered.connect(lambda x:
self.toggle_server.emit()) self.toggle_server.emit())
self.control_smartdevice_action = \ self.control_smartdevice_action = \
@ -71,12 +71,12 @@ class ShareConnMenu(QMenu): # {{{
ac = getattr(self, 'connect_to_%s_action'%attr) ac = getattr(self, 'connect_to_%s_action'%attr)
r(prefix + attr, unicode(ac.text()), action=ac, r(prefix + attr, unicode(ac.text()), action=ac,
group=gr) group=gr)
r(prefix+' content server', _('Start/stop content server'), r(prefix+' content server', _('Start/stop Content server'),
action=self.toggle_server_action, group=gr) action=self.toggle_server_action, group=gr)
def server_state_changed(self, running): def server_state_changed(self, running):
from calibre.utils.mdns import get_external_ip, verify_ipV4_address from calibre.utils.mdns import get_external_ip, verify_ipV4_address
text = _('Start Content Server') text = _('Start Content server')
if running: if running:
listen_on = (verify_ipV4_address(tweaks['server_listen_on']) or listen_on = (verify_ipV4_address(tweaks['server_listen_on']) or
get_external_ip()) get_external_ip())
@ -86,7 +86,7 @@ class ShareConnMenu(QMenu): # {{{
port=cs_port) port=cs_port)
except: except:
ip_text = ' [%s]'%listen_on ip_text = ' [%s]'%listen_on
text = _('Stop Content Server') + ip_text text = _('Stop Content server') + ip_text
self.toggle_server_action.setText(text) self.toggle_server_action.setText(text)
def hide_smartdevice_menus(self): def hide_smartdevice_menus(self):

View File

@ -281,8 +281,8 @@ class EximDialog(Dialog):
g = get_gui() g = get_gui()
if g is not None: if g is not None:
if g.iactions['Connect Share'].content_server_is_running: if g.iactions['Connect Share'].content_server_is_running:
error_dialog(self, _('Content Server running'), _( error_dialog(self, _('Content server running'), _(
'Cannot import while the content server is running, shut it down first by clicking the' 'Cannot import while the Content server is running, shut it down first by clicking the'
' "Connect/share" button on the calibre toolbar'), show=True) ' "Connect/share" button on the calibre toolbar'), show=True)
return False return False
if self.import_panel.stack.currentIndex() == 0: if self.import_panel.stack.currentIndex() == 0:

View File

@ -374,7 +374,7 @@ class CreateCustomColumn(QDialog):
self.composite_contains_html = cch = QCheckBox(_("Show as HTML in book details")) self.composite_contains_html = cch = QCheckBox(_("Show as HTML in book details"))
cch.setToolTip('<p>' + cch.setToolTip('<p>' +
_('If checked, this column will be displayed as HTML in ' _('If checked, this column will be displayed as HTML in '
'book details and the content server. This can be used to ' 'book details and the Content server. This can be used to '
'construct links with the template language. For example, ' 'construct links with the template language. For example, '
'the template ' 'the template '
'<pre>&lt;big&gt;&lt;b&gt;{title}&lt;/b&gt;&lt;/big&gt;' '<pre>&lt;big&gt;&lt;b&gt;{title}&lt;/b&gt;&lt;/big&gt;'

View File

@ -484,8 +484,8 @@ class Main(MainWindow, MainWindowMixin, DeviceMixin, EmailMixin, # {{{
Dispatcher(self.content_server_start_failed) Dispatcher(self.content_server_start_failed)
def content_server_start_failed(self, msg): def content_server_start_failed(self, msg):
error_dialog(self, _('Failed to start Content Server'), error_dialog(self, _('Failed to start Content server'),
_('Could not start the content server. Error:\n\n%s')%msg, _('Could not start the Content server. Error:\n\n%s')%msg,
show=True) show=True)
def resizeEvent(self, ev): def resizeEvent(self, ev):
@ -558,7 +558,7 @@ class Main(MainWindow, MainWindowMixin, DeviceMixin, EmailMixin, # {{{
def test_server(self, *args): def test_server(self, *args):
if self.content_server is not None and \ if self.content_server is not None and \
self.content_server.exception is not None: self.content_server.exception is not None:
error_dialog(self, _('Failed to start content server'), error_dialog(self, _('Failed to start Content server'),
unicode(self.content_server.exception)).exec_() unicode(self.content_server.exception)).exec_()
@property @property
@ -960,11 +960,11 @@ class Main(MainWindow, MainWindowMixin, DeviceMixin, EmailMixin, # {{{
try: try:
try: try:
if self.content_server is not None: if self.content_server is not None:
# If the content server has any sockets being closed then # If the Content server has any sockets being closed then
# this can take quite a long time (minutes). Tell the user that it is # this can take quite a long time (minutes). Tell the user that it is
# happening. # happening.
self.show_shutdown_message( self.show_shutdown_message(
_('Shutting down the content server. This could take a while ...')) _('Shutting down the Content server. This could take a while ...'))
s = self.content_server s = self.content_server
self.content_server = None self.content_server = None
s.exit() s.exit()

View File

@ -23,7 +23,7 @@
<item> <item>
<widget class="QLabel" name="label"> <widget class="QLabel" name="label">
<property name="text"> <property name="text">
<string>&lt;p&gt;If you use the &lt;a href=&quot;http://www.appstafarian.com/marvin.html&quot;&gt;Marvin&lt;/a&gt; e-book reading app (or similar OPDS enabled apps) on your Apple iDevice, you can access your calibre book collection wirelessly, directly on the device. To do this you have to turn on the calibre content server.</string> <string>&lt;p&gt;If you use the &lt;a href=&quot;http://www.appstafarian.com/marvin.html&quot;&gt;Marvin&lt;/a&gt; e-book reading app (or similar OPDS enabled apps) on your Apple iDevice, you can access your calibre book collection wirelessly, directly on the device. To do this you have to turn on the calibre Content server.</string>
</property> </property>
<property name="wordWrap"> <property name="wordWrap">
<bool>true</bool> <bool>true</bool>
@ -49,7 +49,7 @@
<item> <item>
<widget class="QCheckBox" name="content_server"> <widget class="QCheckBox" name="content_server">
<property name="text"> <property name="text">
<string>Turn on the &amp;content server</string> <string>Turn on the &amp;Content server</string>
</property> </property>
</widget> </widget>
</item> </item>

View File

@ -1050,7 +1050,7 @@ def get_appdata():
'summary':_('The one stop solution to all your e-book needs'), 'summary':_('The one stop solution to all your e-book needs'),
'description':( 'description':(
_('calibre is the one stop solution to all your e-book needs.'), _('calibre is the one stop solution to all your e-book needs.'),
_('You can use calibre to catalog your books, fetch metadata for them automatically, convert them from and to all the various e-book formats, send them to your e-book reader devices, read the books on your computer, edit the books in a dedicated e-book editor and even make them available over the network with the built-in content server. You can also download news and periodicals in e-book format from over a thousand different news and magazine websites.') # noqa _('You can use calibre to catalog your books, fetch metadata for them automatically, convert them from and to all the various e-book formats, send them to your e-book reader devices, read the books on your computer, edit the books in a dedicated e-book editor and even make them available over the network with the built-in Content server. You can also download news and periodicals in e-book format from over a thousand different news and magazine websites.') # noqa
), ),
'screenshots':( 'screenshots':(
(1408, 792, 'https://lh4.googleusercontent.com/-bNE1hc_3pIc/UvHLwKPGBPI/AAAAAAAAASA/8oavs_c6xoU/w1408-h792-no/main-default.png',), (1408, 792, 'https://lh4.googleusercontent.com/-bNE1hc_3pIc/UvHLwKPGBPI/AAAAAAAAASA/8oavs_c6xoU/w1408-h792-no/main-default.png',),

View File

@ -180,7 +180,7 @@ def create_option_parser():
parser=opts_to_parser('%prog '+ _( parser=opts_to_parser('%prog '+ _(
'''[options] [path to library folder...] '''[options] [path to library folder...]
Start the calibre content server. The calibre content server Start the calibre Content server. The calibre Content server
exposes your calibre libraries over the internet. You can specify exposes your calibre libraries over the internet. You can specify
the path to the library folders as arguments to %prog. If you do the path to the library folders as arguments to %prog. If you do
not specify any paths, the library last opened (if any) in the main calibre not specify any paths, the library last opened (if any) in the main calibre