Archive for April 12, 2023

Wednesday, April 12, 2023

Keyboard Shortcuts for Exporting From Photos.app

Ole Begemann:

  1. The Photos app on macOS doesn’t provide a keyboard shortcut for the Export Unmodified Original command.
  2. macOS allows you to add your own app-specific keyboard shortcuts via System Settings > Keyboard > Keyboard Shortcuts > App Shortcuts. You need to enter the exact spelling of the menu item you want to invoke.
  3. Photos renames the command depending on what’s selected: Export Unmodified Original For 1 Photo“ turns into ”… Originals For 2 Videos“ turns into “… For 3 Items” (for mixed selections), and so on. Argh!

So he wrote a shell script to add shortcuts for all the different numbers to the user defaults. I would have probably done this with GUI scripting and FastScripts or Keyboard Maestro, but this method doesn’t require any third-party software.

There’s a bug in Photos.app on macOS 13.2 (and at least some earlier versions). Custom keyboard shortcuts don’t work until you’ve opened the menu of the respective command at least once.

Previously:

Side Mirror 2.5

Ben Scheirman:

Side Mirror allows you to select any attached display on your Mac and run it in a window.

This can be useful for a number of reasons:

  • During live presentations, to avoid looking back at a projector screen. You can see it and monitor what the audience sees right on your Mac. This keeps your eyes front toward the audience. Your main screen can have presenter notes, snippets to copy & paste, files to drag, etc.
  • Using a cheap HDMI dummy adapter (like this one), you can get a virtual screen in macOS. Using Side Mirror, you can put this screen inside a window.

It’s $24.99 in the Mac App Store.

Photos, Spotlight, and iCloud

Nick Heer:

So I assumed this message would disappear after my Mac figured out I had moved its library. A week later, it has not disappeared and images from Photos are, indeed, not searchable in Spotlight. Apple’s documentation implies Spotlight will work for whichever library is the system one, but the message in Photos implies that libraries stored on external drives will not be indexed.

[…]

My Mac has been dutifully downloading tens of thousands of original media files from iCloud until earlier this week when it decided to stop. The only information I have is a message in Photos, saying there are 42 originals not yet downloaded — but which ones are missing is anyone’s guess. Photos has Smart Albums but, unlike Music, it does not have a filtering criteria for whether the original file has been downloaded. There does not appear to be any logging, nor any status window. While writing this paragraph, I can see the library file slowly increasing in size; however, the number of original files remaining to be downloaded has not budged.

[…]

Happily, after repairing my library and waiting for it to reconcile with iCloud, it seems there were only 21 missing original media files which needed a local copy, and they seem to have downloaded. I still do not know what they were. I only have myself to blame for getting to this point. Even so, the lack of any way for me to figure out which items are only in iCloud and not on my local drive is a baffling omission. It is not quite a silent failure but it is in the spirit of one, where Apple seems to have assumed that its software will perform correctly and users should never need to intervene. In the real world, I just wanted to know what it was waiting on.

Like Josh Hill, he was using optimized photo storage. I think this is really common, even among people who know better, because it’s so much easier. Apple continues to use expensive and relatively low capacity SSDs, so many photo libraries just won’t fit on internal storage.

External storage is then the only way to download originals and, thus, back up your library, but it’s a pain, especially with a portable Mac. Even if you do get external storage and figure out how to use it with Photos, it doesn’t work the way you would want. Aside from the potential Spotlight limitation, having your whole photo library on the external drive is not ideal. That drive is then required to do anything with Photos, and performance is worse because you can’t keep the photo database on your fastest storage.

With Lightroom, I can keep metadata and thumbnails on the internal SSD, while offloading older originals to secondary storage. Apple’s Aperture could do stuff like this, too, but it’s not possible with Photos.

Scott Gruby:

You would think that Apple would put something in iCloud Photos that would warn you if 15K pictures were deleted. I went to look for a photo today and found out that I no longer had my full library. On disc, it was down to 85GB from 185GB. Luckily I had a separate backup from mid February and was able to import the photos.

Daily backups that overwrite your data only protects against hardware failure. Time Machine to a local drive (TM to a network sucks) or rotating external drives are key.

Previously:

Xcode Files With Source-Control Status

Jesse Squires:

I usually use Git Tower to review and commit my changes, but you can’t edit files in Git Tower, which means switching back-and-forth between Xcode if you need to make additional modifications. Xcode provides a nice commit interface that allows editing, but it isn’t always easy to use for editing — the side-by-side view forces lines to wrap and sometimes scrolling is wonky. File selection in this view is often glitchy, too.

[…]

Instead of trying to use Git Tower or Xcode’s commit UI, you can filter the files in the sidebar to show only ones that have been modified! It’s a very subtle button in the bottom right corner with a +/- icon. Click that and Xcode will hide all the files you haven’t touched. I’ve found this to be helpful for focusing specifically on the changes I’m making and removing all the clutter in large projects.

Xcode has had this feature for a while, but I only started using it recently after Apple fixed the bug where enabling this mode would mess up the outline expansion state in the regular view.

Besides reviewing commits, it’s also useful for regular coding, as it makes it easy to jump back and forth between files that I’m working on in different folders. I find that this often works better than tabs, which require more work to set up which files to Keep Open and to close the ones that are no longer relevant because there isn’t room to view many at a time.

Instead, I tend to use tabs for files that may not be modified but that I frequently want to flip back to. For example, I want quick access to the main English Localizable.strings files in my project because these are hard to access using Open Quickly… with so many for different languages.