Calibre:// URL方案¶
Calibre将自身注册为Calibre://URL的处理程序。因此,您可以使用它们来执行从其他程序/文档或通过命令行打开书籍、搜索书籍等操作。例如,在命令行中运行以下命令:
calibre calibre://switch-library/Some_Library
将使用名为``某些书库``的书库打开Calibre。书库名称是书库文件夹的文件夹名称,用下划线替换空格。特定值``_``表示当前书库。下面记录了各种类型的URL。
您甚至可以将这些链接放在HTML文件或Word文档或类似文件中,操作系统将自动运行Calibre来执行指定的操作。
切换到指定书库¶
URL语法为:
calibre://switch-library/Library_Name
库名称是库的文件夹名称,用下划线替换空格。特定值``_``表示当前库。您还可以对库名使用`十六进制编码<hex_encoding>`,如果库名包含需要URL编码的特殊字符,这一点很有用。十六进制编码库名称如下:
_hex_-AD23F4BC
在 calibre中显示指定的图书¶
URL语法为:
calibre://show-book/Library_Name/book_id
这将在calibre中显示带有“book_id”(数字)的书籍。 通过将鼠标悬停在“图书详细信息”面板中的“单击打开”链接上,可以在 calibre 界面中看到图书的 ID,它是图书文件夹路径末尾括号中的数字。
您可以通过右键单击“图书详细信息”面板并选择“复制图书链接”来复制 calibre 中显示的当前图书的链接。
如果搜索处于活动状态并且该书籍与搜索不匹配,则搜索将被清除。
如果选择虚拟书库,calibre 将在显示图书时使用它。 如果在该虚拟书库中找不到该书,则该虚拟书库将被清除。
如果您想在展示图书时切换到特定的虚拟书库,请使用:
calibre://show-book/Library_Name/book_id?virtual_library=Library%20Name
or
calibre://show-book/Library_Name/book_id?encoded_virtual_library=hex_encoded_virtual_library_name
将虚拟存储书库名称中的空格替换为``%20``。如果在该虚拟书库中找不到这本书,则忽略该虚拟书库。
在电子书阅读器中的特定位置打开特定图书¶
URL语法为:
calibre://view-book/Library_Name/book_id/book_format?open_at=location
其中,``book_Format``是图书的格式,例如,``EPUB`或``MOBI`,而``Location``是图书内部的可选位置。获取这些链接的最简单方法是在阅读器中打开一本书,然后在阅读器控件中选择`转到->位置`,此时会给出这样一个链接,您可以将其复制/粘贴到其他地方。
搜索书籍¶
URL语法为:
calibre://search/Library_Name?q=query
calibre://search/Library_Name?eq=hex_encoded_query
这里的查询是任何有效的"搜索表达式<search_interface>"。如果搜索表达式比较复杂,可以"将其编码为十六进制字符串<hex_encoding>",并使用``eq``。省略该查询将导致清除当前搜索。
默认情况下,如果选择了虚拟书库,Calibre将在执行搜索之前清除该选项,以确保找到所有图书。如果要保留虚拟书库,请使用:
calibre://search/Library_Name?q=query&virtual_library=_
如果要切换到特定的虚拟书库,请使用:
calibre://search/Library_Name?virtual_library=Library%20Name
or
calibre://search/Library_Name?encoded_virtual_library=hex_encoded_virtual_library_name
将虚拟书库名称中的空格替换为``%20``。
如果您在Calibre中执行搜索,并想为其生成链接,可以通过右键单击搜索栏并选择“将搜索复制为URL”来实现。
在某些书库的图书上打开图书详细信息窗口¶
URL语法为:
calibre://book-details/Library_Name/book_id
这将打开指定书库中指定图书的书籍详细信息窗口,而不更改当前书库或所选图书。
URL参数的十六进制编码¶
URL 参数的十六进制编码是通过首先将参数编码为 UTF-8 字节,然后将每个字节替换为表示该字节的两个十六进制字符来完成的。 例如,字符串“abc”是UTF-8中的字节“0x61 0x62和0x63”,因此编码版本是字符串:“616263”。