![]() |
#196 |
Custom User Title
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 9,204
Karma: 63194629
Join Date: Oct 2018
Location: Canada
Device: Kobo Libra H2O, formerly Aura HD
|
Thank you.
|
![]() |
![]() |
![]() |
#197 | |
Deviser
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,265
Karma: 2090983
Join Date: Aug 2013
Location: Texas
Device: none
|
CalibreSpy does not use Calibre's VLs, but rather emulates them...
If you run CalibreSpy from a .bat file, or run with Calibre in debug mode from the start using "calibre-debug -g ", you will get an explanation of what CS is doing with your Calibre VLs.
CS does not use Calibre's VLs, but rather emulates them (analogous to how WINE emulates Windows in Linux) by converting them into SQL and running that dynamic SQL against metadata.db. It loads the VLs from Calibre only one time, so if you change them in Calibre while using CalibreSpy, the changes will not appear in CalibreSpy until you restart it or run another instance of CalibreSpy via a .bat file. Therefore, there may be a few subtle differences that work in Calibre but not CalibreSpy. See below in bold red. CS interprets #cs_tag_hierarchy:"=.Factual" as meaning "show me .Factual (literally)". It found one (1) book with a value of exactly .Factual. CS interprets #cs_tag_hierarchy:=.Factual as meaning "show me any of the taglike-tags having Factual as a value. It found 26 books with a value equal to Factual or starting with Factual, such as Factual.Business.Finance.Accounting.CostAccounting . The quotes mean "exactly" to CS in this particular case. Code:
Selected: S:/Calibre/CalibreJobSpyTest1 Unsupported VL: ((formats:true) and (marked:true)) reason: marked: Unsupported VL: A Fortune for Kregen reason: No Colons - ':' Unsupported VL: Larry Niven reason: No Colons - ':' Unsupported VL: Tweak Author Sort for Complex Surnames reason: No Colons - ':' Unsupported VL: error: @asdfasdf search:asdfasd reason: Both '@' and 'search:' used in the same VL Unsupported VL: error: @asdfasdf AND @dasdfd reason: Only 1 @UserCategory criterion is allowed. Unsupported VL: selected:true reason: selected: Unsupported VL: thelma adams reason: No Colons - ':' Unsupported VL: vl:@MyColors:true or vl:search:example_ reason: Both '@' and 'search:' used in the same VL ------------------------------------------------------ VL Selected: obc6: #cs_tag_hierarchy:"=.Factual" SQL Query: SELECT id AS books_id FROM books WHERE EXISTS (SELECT book FROM books_custom_column_41_link WHERE book = books.id AND value IN (SELECT id FROM custom_column_41 WHERE value REGEXP '.factual')) ; total number of books found: 1 for VL criteria: #cs_tag_hierarchy:"=.Factual" ------------------------------------------------------ VL Selected: obc5: #cs_tag_hierarchy:=.Factual SQL Query: SELECT id AS books_id FROM books WHERE (EXISTS (SELECT book FROM books_custom_column_41_link WHERE book = books.id AND value IN (SELECT id FROM custom_column_41 WHERE value REGEXP '^factual[.]*.*$')) OR EXISTS (SELECT book FROM books_custom_column_41_link WHERE book = books.id AND value IN (SELECT id FROM custom_column_41 WHERE value = 'factual')) ) ; total number of books found: 26 for VL criteria: #cs_tag_hierarchy:=.Factual .............. Your other issue was: Quote:
User Categories in VLs have special conditions to be usable in CS, as you discovered. Simply change your VL in Calibre to comply with the stated rules if you want to use that specific VL in CalibreSpy. I highly recommend running CalibreSpy from a .bat file (or simultaneously from many .bat files for different Libraries) so that you see what is going on within the CS run log if you encounter scenarios that you do not understand. DaltonST |
|
![]() |
![]() |
Advert | |
|
![]() |
#198 |
Deviser
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,265
Karma: 2090983
Join Date: Aug 2013
Location: Texas
Device: none
|
Version 1.0.83- 15 Nov 2020 Miscellany
Version 1.0.83- 15 Nov 2020 Miscellany
DaltonST |
![]() |
![]() |
![]() |
#199 |
null operator (he/him)
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 20,854
Karma: 27620684
Join Date: Mar 2012
Location: Sydney Australia
Device: none
|
Would it possible to implement the same Copy link to book… options that Kovid has added to the Book Details, to the CalibreSpy book context menu, viz:
Usage: it will make it a lot easier to create links between books in different libraries BR |
![]() |
![]() |
![]() |
#200 |
Deviser
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,265
Karma: 2090983
Join Date: Aug 2013
Location: Texas
Device: none
|
I will look at it after I finish a major update to MCS for a new "save named search criteria by query type/Tab" function. That will take me ~2 more weeks.
DaltonST |
![]() |
![]() |
Advert | |
|
![]() |
#201 |
null operator (he/him)
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 20,854
Karma: 27620684
Join Date: Mar 2012
Location: Sydney Australia
Device: none
|
|
![]() |
![]() |
![]() |
#202 |
Deviser
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,265
Karma: 2090983
Join Date: Aug 2013
Location: Texas
Device: none
|
"The calibre:// URL scheme" ?
To clarify, are you requesting CalibreSpy to support "The calibre:// URL scheme" as defined in https://manual.calibre-ebook.com/url_scheme.html ?
If so, that is a big ask, since CalibreSpy does not use Calibre's gui or guidb or gprefs or server or any other "live" part of Calibre. CalibreSpy is explicitly designed to run when Calibre is not running at all, anywhere, in any way, since CalibreSpy was intended to be run from a .bat file multiple times simultaneously using only Calibre's metadata.db as a stand-alone SQLite database. Could you clarify your request, and explain exactly how and when you would theoretically use what was copied to the OS clipboard from CalibreSpy? Also, how that is not redundant with performing CalibreSpy multi-Library searches for matching books using "Clipboard Search Queries" while simultaneously viewing multiple Libraries in CalibreSpy as shown in this video example from 2018: https://www.mobileread.com/forums/attachment.php?attachmentid=166302&d=1536956413 As well, CalibreSpy has my Drop Search Results plugin embedded with the DSR icon shown in the CS window. Simply Drag a book's textual path from any source that supports Dragging to the CS DSR icon. Or, simply copy a books partial path found anywhere into the CalibreSpy Regular Expression Search box, click the binocular icons for "path", and it will filter based on that search. Or,... DaltonST Last edited by DaltonST; 12-06-2020 at 12:03 PM. Reason: "Clipboard Search Queries" |
![]() |
![]() |
![]() |
#203 | |||
null operator (he/him)
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 20,854
Karma: 27620684
Join Date: Mar 2012
Location: Sydney Australia
Device: none
|
Quote:
Quote:
Quote:
Background: You might recall that want to keep extra data about 'entities' related to 'book' metadata - such as authors, publishers, tags even. I tried using the Entities Manager plugin for a but it really didn't suit my style of working. For Authors I have been pasting Evernote Note links into the Link field in Manage Authors, that allows me to click an Author name in the book details panel and view what I have for that author in my EN Authors notebook (obits, bio, web sites etc). But I had no easy way to do the reverse, i.e see a list of books I had for that author - I had a kludgey scheme of using calibre-server for a while, but like most kludges it was a PITA to maintain, and it was 'tied' to the version 2 read only server. A week or so after Kovid implemented the calibre:// URI protocol handler, Evernote published a major new version - a 'feature' of which is to end support for local notebooks and force everything into their cloud - grrrh. So I exported my Author Notes from Evernote into MHT 'files' and used them to create entries in an Authors library - one 'book' per Author. In my content libraries (Books, Journals, Media) I have replaced the evernote://blah-blah links in Manage Authors with calibre://show-book links to the relevant record in my Authors library, and in the Authors library I have put a calibre://search/ link into the Manage Author link fields. The easiest way to get the calibre://blah-blah links is to use the "Copy link to book" options Kovid has added to the Authors context menu in Book Details, viz: These options yield the following Code:
calibre://show-book/_hex_-54657374/457 calibre://search/_hex_-54657374?eq=617574686f72733a223d416e6e6520646520436f7572637922 But I've done what I needed to do for the 1800+ authors I have by switching back and forth between my content and Authors libraries, it wasn't as tedious as I had anticipated. So if adding the extra items to CalibreSpy's context menu presents a challenge I won't be bothered too much. Stay Safe - BR Aside: Rather maintaining the MHT files in Word I am moving the content into calibre custom columns - now that is tedious. PS: if you can think of a way to add a "Link" field to the other "Manageable" column types without major database surgery that would be no bad thing ![]() Last edited by BetterRed; 12-07-2020 at 04:02 PM. Reason: grammar |
|||
![]() |
![]() |
![]() |
#204 |
Deviser
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,265
Karma: 2090983
Join Date: Aug 2013
Location: Texas
Device: none
|
CS: New Menu Items Concept
Does the attached image show what you are looking for?
DaltonST |
![]() |
![]() |
![]() |
#205 |
null operator (he/him)
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 20,854
Karma: 27620684
Join Date: Mar 2012
Location: Sydney Australia
Device: none
|
Almost, what it doesn't do is cater for multiple authors. I would settle for just the first author, I would prefer separate options for each author, viz:
Link: Show book in Calibre Link: Show Books for <author_name_1> in Calibre Link: Show Books for <author_name_2> in Calibre What I wouldn't want is any 'AND/OR" combinations And I am not fussed about having keyboard shortcuts for everything, I use the Menu Key to pop context menus and then the arrow keys. And FYI: https://bugs.launchpad.net/calibre/+bug/1907159 You might want to hang fire until that gets resolved. Thanks - BR |
![]() |
![]() |
![]() |
#206 |
Deviser
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,265
Karma: 2090983
Join Date: Aug 2013
Location: Texas
Device: none
|
Beta #1: Calibre Link Support
See the later post re: Version 1.0.84 Released
Last edited by DaltonST; 12-11-2020 at 01:04 PM. Reason: Version 1.0.84 Released |
![]() |
![]() |
![]() |
#207 | |
null operator (he/him)
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 20,854
Karma: 27620684
Join Date: Mar 2012
Location: Sydney Australia
Device: none
|
Quote:
Back to the subject at hand - calibre:// links. I want to copy links from books in library A to paste into books in library B, which means I need to have library B open in the calibre GUI. If I can get the links from calibre-spy I wouldn't have to switch the calibre GUI between library A and library B. But, I would be reluctant to copy links from calibre-spy if it didn't deliver the same result as doing the same thing from the calibre book-details panel. There are occasions (e.g. one-offs) when I would copy in calibre, switch libraries, and paste in calibre. If it meant calibre-spy sourced links from the calibre GUI, then… for me at least… it would be preferable to disable the "Copy Calibre Links to Clipboard" context menu item if the Calibre GUI wasn't running. BR |
|
![]() |
![]() |
![]() |
#208 |
Deviser
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,265
Karma: 2090983
Join Date: Aug 2013
Location: Texas
Device: none
|
Read the Calibre user manual for Links. It had 2 methods. Hex and User Friendly.
Also, CS will never be able to use the hex method. Ever. The GUI being open is irrelevant. |
![]() |
![]() |
![]() |
#209 |
null operator (he/him)
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 20,854
Karma: 27620684
Join Date: Mar 2012
Location: Sydney Australia
Device: none
|
AFAIK the Copy Link options in Book Details always generate _hex_ links. I can't imagine I would ever create a link by typing it, and because I always give links a label I don't place any value on User Friendly URLs.
I don't like the possibility of having two or more links that reference the same object using different encoding because I happened to copy them in different places. So, if its not possible to have calibre-spy generate links in the same manner, preferably with the same code, as those generated by calibre itself I will have to forego using it. Thanks for the work you've put into this. BR |
![]() |
![]() |
![]() |
#210 |
Deviser
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,265
Karma: 2090983
Join Date: Aug 2013
Location: Texas
Device: none
|
Version 1.0.84 "Copy Calibre links" item in CalibreSpy's context menu
Version 1.0.84- 11 Dec 2020 "Copy Calibre links" item in CalibreSpy's context menu, with "Show Book" and "Search for <author name>" options.
These URL Links are based on https://manual.calibre-ebook.com/url_scheme.html. Obviously this can be used only by Calibre 5.7+, although CalibreSpy will still generate them properly even with a minimum version of Calibre 4.6. To ensure the accuracy of the search results in Windows 10 users, the "author name" query (only) is shown as hexidecimal so that the Windows 10 command line does not corrupt the query when parsing it to pass it to Calibre. CalibreSpy Example: Book ID: 15 calibre://search/CalibreLibraryCodes?q="id:15" Book Author Name: Krasznahorkai, László Calibre Link's url: calibre://search/CalibreLibraryCodes?eq=617574686f72733a223d4cc3a17 37a6cc3b3204b7261737a6e61686f726b616922 Results in the Calibre GUI SearchBar: authors:"=László Krasznahorkai" Note: If you were to use the Calibre GUI Book Details "Copy Link" function, it would be in a totally different format that only Calibre itself can create due it its support of the Calibre Server library_id (which CalibreSpy does not use). DaltonST Last edited by DaltonST; 12-11-2020 at 01:13 PM. |
![]() |
![]() |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
[GUI Plugin] FanFicFare | JimmXinu | Plugins | 9879 | Yesterday 08:49 PM |
[GUI Plugin] KindleUnpack - The Plugin | DiapDealer | Plugins | 494 | 05-18-2024 02:34 AM |
[GUI Plugin] Save Virtual Libraries To Column (GUI) | chaley | Plugins | 14 | 04-04-2021 05:25 AM |
[GUI Plugin] Marvin XD | Philantrop | Plugins | 126 | 01-29-2017 12:48 PM |
[GUI Plugin] Plugin Updater **Deprecated** | kiwidude | Plugins | 159 | 06-19-2011 12:27 PM |