Move URL scheme handler docs into its own document

This commit is contained in:
Kovid Goyal 2020-11-12 10:58:30 +05:30
parent 1074d026db
commit e11b6ef0b3
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
3 changed files with 65 additions and 61 deletions

View File

@ -782,64 +782,3 @@ calibre has several keyboard shortcuts to save you time and mouse movement. Thes
- Re-apply the current sort - Re-apply the current sort
* - :kbd:`Ctrl+Q` * - :kbd:`Ctrl+Q`
- Quit calibre - Quit calibre
The calibre:// URL scheme
------------------------------
calibre registers itself as the handler program for calibre:// URLs. So you can
use these to perform actions like opening books, searching for books, etc from
other programs/documents or via the command line. For example, running the
following at the command line::
calibre calibre://switch-library/Some_Library
Will open calibre with the library named ``Some Library``. Library names are
the folder name of the library folder with spaces replaced by underscores. The
special value ``_`` means the current library.
The various types of URLs are documented below.
Switch to a specific library
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The URL syntax is::
calibre://switch-library/Library_Name
Library names are the folder name of the library with spaces replaced by
underscores. The special value ``_`` means the current library. You can also
use hex encoding for the library names, useful if the library names have
special characters that would otherwise require URL encoding. Hex encoded
library names look like::
_hex_-AD23F4BC
Where the part after the ``_hex_-`` prefix is the library name encoded as UTF-8
and every byte represented by two hexadecimal characters.
Show a specific book in calibre
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The URL syntax is::
calibre://show-book/Library_Name/book_id
This will show the book with ``book_id`` (a number) in calibre. The ids for
books can be seen in the calibre interface by hovering over the
:guilabel:`Click to open` link in the book details panel, it is the number in
brackets at the end of the path to the book folder.
Open a specific book in the viewer at a specific position
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The URL syntax is::
calibre://view-book/Library_Name/book_id/book_format?open_at=location
Here, ``book_format`` is the format of the book, for example, ``EPUB`` or
``MOBI`` and the ``location`` is an optional location inside the book. The
easiest way to get these links is to open a book in the viewer, then in the
viewer controls select :guilabel:`Go to->Location` and there such a link
will be given that you can copy/paste elsewhere.

View File

@ -38,6 +38,7 @@ available <https://calibre-ebook.com/help>`_.
metadata metadata
faq faq
tutorials tutorials
url_scheme
customize customize
generated/en/cli-index generated/en/cli-index
develop develop

64
manual/url_scheme.rst Normal file
View File

@ -0,0 +1,64 @@
The calibre:// URL scheme
=========================================
calibre registers itself as the handler program for calibre:// URLs. So you can
use these to perform actions like opening books, searching for books, etc from
other programs/documents or via the command line. For example, running the
following at the command line::
calibre calibre://switch-library/Some_Library
Will open calibre with the library named ``Some Library``. Library names are
the folder name of the library folder with spaces replaced by underscores. The
special value ``_`` means the current library.
The various types of URLs are documented below.
.. contents::
:depth: 1
:local:
Switch to a specific library
-------------------------------
The URL syntax is::
calibre://switch-library/Library_Name
Library names are the folder name of the library with spaces replaced by
underscores. The special value ``_`` means the current library. You can also
use hex encoding for the library names, useful if the library names have
special characters that would otherwise require URL encoding. Hex encoded
library names look like::
_hex_-AD23F4BC
Where the part after the ``_hex_-`` prefix is the library name encoded as UTF-8
and every byte represented by two hexadecimal characters.
Show a specific book in calibre
-------------------------------
The URL syntax is::
calibre://show-book/Library_Name/book_id
This will show the book with ``book_id`` (a number) in calibre. The ids for
books can be seen in the calibre interface by hovering over the
:guilabel:`Click to open` link in the book details panel, it is the number in
brackets at the end of the path to the book folder.
Open a specific book in the viewer at a specific position
---------------------------------------------------------------
The URL syntax is::
calibre://view-book/Library_Name/book_id/book_format?open_at=location
Here, ``book_format`` is the format of the book, for example, ``EPUB`` or
``MOBI`` and the ``location`` is an optional location inside the book. The
easiest way to get these links is to open a book in the viewer, then in the
viewer controls select :guilabel:`Go to->Location` and there such a link
will be given that you can copy/paste elsewhere.