Archive for November 5, 2024

Tuesday, November 5, 2024

Sequoia No Longer Supports QuickLook Generator Plug-ins

Howard Oakley:

Prior to macOS 10.15 Catalina in 2019, the display of Thumbnails was supported by the QuickLook framework. From Catalina onwards, this is provided by a new framework named QuickLook Thumbnailing. The older framework is documented here, and had been deprecated for some years. Its replacement is documented here. To extend these, the older framework used QuickLook generators with the extension .qlgenerator, but in the newer framework this function is provided by QuickLook preview extensions, in particular Thumbnail Extensions, that were explained to developers at WWDC in 2019.

As with most deprecated features, eventually the time comes for Apple to remove support for the old, and for QuickLook generators that has occurred in macOS 15.0 Sequoia. From now on, QuickLook Generator plugins no longer work. Oddly, those provided by macOS in /System/Library/QuickLook are still named with the old extension of .qlgenerator, but all custom support now has to use the new framework in App Extensions.

Howard Oakley:

These are controlled in the Quick Look item in Login Items & Extensions in General settings.

That should list all third-party app extensions providing this service, and enabling the right one(s) could fix some of those problems. But it turns out this list isn’t complete, and doesn’t in any case tell you which app extension handles which file type. For those, you’d normally turn to qlmanage, but its -m option can only see the qlgenerators in macOS, and no third-party app extensions at all. In fact, qlmanage is now of little help for anything related to QuickLook.

[…]

As far as I can discover, Apple doesn’t provide any equivalent of qlmanage that can report on QuickLook app extensions. The closest it comes is in the pluginkit tool, that can list all app extensions known to macOS. With a bit of tweaking, its -m option can reveal which of those use the QuickLook SDKs for Thumbnails or Previews.

His Mints app makes it easier to view this information.

How to Highlight Text Fragments When Linking

Paul Kafasis:

In recent months, I’ve begun to notice that results from web searches often highlight specific text on the page to which they’re linking. The web page is also scrolled to the relevant content. It’s quite helpful!

A quick investigation showed this is accomplished by appending a bit of code, #:~:text= to the URL for a link. These are called Text Fragments, and they’ve been supported by Chrome since back in 2020. It took a couple more years for support to come to Safari, but at this point, the element is well-supported enough to be worth using.

[…]

By using this code in a bookmarklet, you can easily create links with helpful highlighting.

Ahmad Alfy:

This feature is complemented by the ::target-text CSS pseudo-element, which provides a way to style the highlighted text.

[…]

Here’s the basic syntax for a text fragment URL:

https://example.com/page.html#:~:text=[prefix-,]textStart[,textEnd][,-suffix]

Via Nick Heer:

As someone who writes essays containing citations, this is one of the nicest additions to the web that I wish was easier to use in Safari. What I, like Alfy, want to be able to do is highlight a specific phrase and copy a direct link.

Also, something I often forget is that you can link directly to specific pages of a PDF file by appending #page= and then the page number.

Avram Piltch:

Note that you should use the page number within the PDF (as seen in the page list), not whatever number it says on the top of the page itself.

Jeff Johnson:

StopTheMadness Pro 11.0 adds the ability to copy a text fragment link from selected text in Safari, using a contextual menu item on macOS or Show Menu on Tap on iOS.

Timothy Hatcher:

This is actually in Safari 18.2 beta now as well.

Jeff Johnson:

Sherlocked: The phenomenon of Apple releasing a feature that supplants or obviates third-party software

[…]

The good news is that this feature is available now in StopTheMadness Pro, whereas Safari 18.2 is not scheduled for release by Apple until December. Also, it’s available in StopTheMadness Pro to users of older versions of Safari. And from what I’ve seen, Apple’s feature is available only in macOS Safari, not in iOS Safari. So my efforts weren’t totally wasted.

Previously:

Update (2024-11-06): Vítor:

There’s also an Alfred workflow for this.

Update (2024-11-07): See also: Keyboard Maestro.

Exporting Kindle Highlights for Personal Documents

I’ve long used the Send to Kindle app to upload documents for reading on my Kindle Oasis. Unlike with books, I usually don’t care about saving notes and highlights for these, so I haven’t tried doing that in a while. However, I recently read a long document where I did make extensive highlights. Then I realized that there seems to be no way to export them (other than by taking screenshots).

The problem seems to be that Kindle’s feature for e-mailing annotations only works for documents that are stored in the Amazon cloud. I didn’t realize this and had Send to Kindle set not to do this because these were ephemeral documents that I didn’t want to have to clean up later. However, now that I know this is a one-way door, in the future I will upload them to the cloud just in case.

Secondly, I had thought that it was always possible to access the highlights by connecting the Kindle to my Mac via USB and opening the My Clippings.txt file. However, for whatever reason, my Kindle no longer has this file.

Lastly, even if I upload my document to the cloud, the Kindle itself can’t e-mail the annotations. That only works for books purchased from Amazon. However, because the document is in the cloud, it can sync the highlights to my other devices, and the Kindle app for Mac does let me export them. (Annoyingly, it can’t copy/paste or save a file; I have to e-mail them to myself.) The Mac app also supports larger window sizes, so it’s easier to take screenshots to save or OCR.

I thought the discontinued Kindle Classic app might have more options, but now it’s crashing a lot on my Mac and seems unable to download documents.

Anyway, the summary is that is possible to get your data out, if you’re aware of the roundabout process.

Previously:

Paddle’s Single-Click Apple Pay

Paddle writes:

Previously, to initiate Apple Pay, customers were redirected to a secondary page due to Apple constraints with top-level domains. But now, Apple has updated their framework, allowing us to provide a seamless, single-click Apple Pay experience, where the native payment dialogue is triggered instantly upon checkout—no redirects, no extra clicks!

[…]

To get started with single-click Apple Pay, follow these simple steps:

  1. Turn on Apple Pay in your checkout settings from the Paddle dashboard.
  2. Download and host the domain association file from our developer documentation​ on the pages where Paddle Checkout is used.
  3. Verify your domain automatically or manually through our dashboard.

This is a bit confusing because the above link doesn’t go to the help page that actually has the domain association file. Once you have the file, you just remove the .txt extension that Safari adds and upload it to your site at /.well-known/apple-developer-merchantid-domain-association. Sure enough, now my store has inline Apple Pay instead of popping up a separate window.

Lots of people seem to like and use Apple Pay, and it seems to work as promised to make purchasing easy. A potential downside is that, when combined with Hide My Email, I see some orders where the only information that we get from the customer is the auto-generated e-mail address. If they later lose their order info, we would not be able to help them find it unless they know which address was used.

Previously:

Update (2024-11-06): Rosyna Keller:

Along with iCloud settings on macOS and iOS, you can search for and view generated Hide My Email addresses for each domain on the iCloud+ website by following these instructions.

It seems like, if you unsubscribe from iCloud+, the e-mail forwarding continues but you lose access to this management interface.