The Robservatory

Robservations on everything…

 

Mac OS X Hints

How to copy non-visible formula results from Excel

I use Excel for a ton of stuff, both personal and work. As an example, on the work side I use an Excel workbook to track our apps’ hidden prefs—which are set using a long ugly Terminal command1Something like this: defaults write com.manytricks.Moom “PMWindowFadingDuration” -float 0.

These hidden prefs can be used to invoke features we’re testing, or to revert a behavior we’ve changed at some point, etc. For example, Moom has hidden prefs to use the full screen grid without clicking in the big box and to disable the fade in/out of the keyboard controller.

We don’t publish all of these, as we’re not necessarily ready for them to be put to use by everyone (otherwise, they’d be visible prefs). But there are cases when a user has a specific need for a setting, or when troubleshooting, that these hidden prefs can be very useful. As such, I often have to send someone a defaults write command.

Read on to see how I use Excel’s formatting features—plus the ever-valuable Keyboard Maestro—to disguise some of this workbook’s formula results, yet still easily copy them for sending to a user.

(more…)

How to auto-crop huge images with ImageMagick

In my recent post A new set of Hubble deep space iMac retina desktops, I included a set of auto-cropped 5120×2880 desktops. In that post, I wrote:

These images were automatically cropped from the master image (after I cropped that; more detail on what I did is coming in a follow-up post), via ImageMagick.

So this would be that post: How to auto-crop huge images using ImageMagick. If you’re not familiar with it, ImageMagick is a set of command-line tools to manipulate images. There are a number of ways to install ImageMagick, but I used Homebrew (brew install imagemagick).

(more…)

Force multiple tracks to play as one in iTunes

There are some musical tracks that—even though they’re distinct on the CD (or sold as separate tracks online)—are meant to be played together. As examples, there are a number of such Pink Floyd tracks, Queen’s We Will Rock You and We are the Champions, and Jackson Browne’s The Load Out and Stay.

I thought I remembered that iTunes used to be able to merge such tracks, and said as much on Twitter:

From the responses, I learned that my memory was wrong: You could only merge tracks during a CD import, which you can still do today:

But for online purchases or other non-CD music, the only solution appeared to be exporting the tracks, merging them together, then reimporting as one. (Doug Adams’ $5 Join Together, for example, makes the process about as simple as possible.)

I only had a few such tracks I wanted to combine, so duplicating song data and using an external tool seemed like overkill, but it seemed like the only way. Then Chris Jennings came up with a solution that works for me (with some caveats…).

(more…)

Show albums a given Photos’ photo has been added to

A friend asked if there was a way in Photos to see which albums a selected photo had been added to. This is one of those things that would be incredibly easy for Apple to provide: Select a photo, press Command-I, and in the info window, you could see a list of all albums containing the selected photo.

Unfortunately, Apple doesn’t seem to think people might care about what albums a photo is in, so this feature exists only in my mind. Thankfully, Mac users Jacques Rious and léonie wrote an AppleScript to solve the problem. I used the first instance (version 4) of the script in that post and it worked fine in High Sierra. (In case Apple ever decides to remove its forums, I’ve recreated the script below.)

To use the script, paste it all into AppleScript Editor and save it as an application (or you can just run it in AppleScript Editor). In Photos, create a top-level album (I named mine Find Albums Photo Is In), and place the photo you want to know about into that album. Leave it selected, then run the AppleScript. You’ll see one dialog stating what photo is being used, then after a bit, you should see a results dialog, like this:

As you can see, the album used for the search is included in the results; someone with better AppleScript skills than I could probably modify the script to exclude that album (any takers?). While I’d much prefer Apple include this feature directly in Photos, at least there’s an alternative when you need this information.

(more…)

How to download macOS Sierra

This morning on Twitter, Antonio asked…

I thought “Well, that’s an easy question to answer—via the Mac App Store, of course.” As it turns out, that’s the right answer, but it was much harder to find than I expected it to be. I started on the Purchased tab in the Mac App Store app, where you can (theoretically) see all past purchases, including prior Mac OS X versions. However, those old releases stop with Mac OS X El Capitan from 2015; neither Sierra nor High Sierra are listed.

Next I tried searching the Mac App Store for Sierra, but that nets only Server and High Sierra, and a few apps that appear to have gotten away with using “Sierra” in their descriptions:

I then tried the Apple Developer site, but they don’t offer Sierra for download either.

Somewhat stumped, I then started searching, and after way too many attempts, I finally landed on this useful page at Stack Exchange, which attempts to explain how to download all older versions of Mac OS X/macOS. Here’s the relevant bit for Sierra:

For OS versions since Sierra.

Sierra itself has now vanished from everybody’s Purchase History. However, Apple are keeping Sierra fully available, even though High Sierra is out. No Apple ID is required.

Apple KB – How to download macOS Sierra
Sierra – Direct download link from the App Store

Given how much trouble I had finding this page, I thought I’d post it here for anyone looking for Sierra. Going forward, keep that Stack Exchange link handy, as it should be updated in the future as new releases come out.

Use less-than-full-day periods in Photos’ Smart Albums

Update: With the passage of time—one calendar day, in this case—I can now say that this hint is wrong. Photos does not respect partial day values. Instead, any value less than one is rounded to zero, so all you can really do is create a Smart Album that finds imports you made during the current calendar day. That is, Date Added – is in the last – 0 – days. This is what I’m using now, as it’s better than one day, which actually shows two days (today and yesterday), but it’s not as nice as iPhoto’s Last Import album.

I’ve left the hint up, because it’s been linked to and tweeted a few times, but it’s wrong. Sorry for the lack of testing before I posted it.

(more…)

See how long an app has been running

For a recent customer support question, I needed to know how long our app Witch had been running. There are probably many ways to find this out, but I couldn’t think of one. A quick web search found the solution, via ps and the etime flag.

You need the process ID (pid), which you can find via ps ax | grep [a]ppname.1That [s]quare brackets around the first letter are there so grep won’t find itself—and thus list itself in the output. In my case, Witch runs a background task called witchdaemon, so I did it this way…

$ ps -ax | grep [w]itchd
  774 ??        26:40.73 /Users/robg/Library/PreferencePanes...[trimmed]

With the pid, the command to find that process’ uptime is:

$ ps -o etime= -p "774"
11-03:17:12

The elapsed time readout is in the form of dd-hh:mm:ss, so Witch had been running for 11 days and a few hours and minutes. Note that you can combine these steps, getting the process ID and using it in the ps command all at once:

ps -o etime= -p "`ps -ax | grep [a]ppname | cut -d ' ' -f 1`"

It’s messy looking, but this form saves time and typing.

June 2018 Addendum: If you add the lstart flag, you can see the exact start date and time for the process. For example:

$ ps -o lstart= -o etime= -p "16866"
Tue Jun  5 05:49:19 2018     09-06:11:25

Two ways to navigate column-view folders in Finder

If you use a column-view Finder window, and prefer to use keyboard navigation, here’s a trick you may not be aware of—even though this dates back to the original release of Mac OS X. If I hadn’t started the Mac OS X Hints site, I doubt I would’ve known this…

To drill down into Finder folders via the keyboard, you use the Right (down) and Left (up) Arrow keys-don’t worry, that’s not the tip, because that’s totally completely obvious. The tip is this: After navigating into a given subfolder (and optionally selecting an item in that folder), the Shift-Tab key combo will navigate back up, but leave your “path” to the subfolder visible. Think of this like a “breadcrumb” trail that shows your navigation. (By comparison, if you use the Left Arrow, Finder “closes” each folder as you exit it, leaving you with nothing selected once you reach the top.)

One you’ve used Shift-Tab to navigate all the way back out, pressing Tab will navigate back down the highlighted path. Alternatively, pressing the Right Arrow key will jump immediately to the rightmost-selected item.

Update

As of Mojave (or maybe High Sierra), Apple changed the behavior of the Right Arrow after you back navigate with Shift Tab: It no longer jumps back to the end of the trail, instead it just works like a usual Right Arrow and selects the first item in the next column over.

I did some experimenting though, and found that Control-Tab will jump to the end of the breadcrumb trail.

Here’s how that all looks in action—first is the normal arrow key navigation, then navigation using Shift-Tab and Tab.

You may not need/want the breadcrumb path all the time, but when you do, just remember to Shift-Tab your way out of the current folder. Using the arrow keys and the Tab/Shift-Tab keys together provides two complementary methods to navigate your column-view Finder windows.

How to not accidentally delete all your rsync backups

With my Time Machine-like rsync backups running well, I decided it was time to migrate over the cleanup portion of my old script—namely, the bit that removes older backups. Soon after I added this bit to my new script, though, I had a surprise: All of my backups, save the most recent, vanished.

In investigating why this happened, I stumbled across two rsync/macOS behaviors that I wasn’t aware of…and if you’re using rsync for backup, they may be of interest to you, too.

(more…)

Cancel shell script on remote connect failure

I use a shell script to back up this site (and a variant of the same script to back up the Many Tricks site). I’ve been using these scripts for over a decade (wow), and though they’ve evolved, they’re still fundamentally the same. (I did switch from cron to launchd for launching them, however.)

While the script typically runs very nicely, I recently noticed that my last backup was from a few weeks ago—uh oh. It didn’t take long to figure out what had gone wrong: My ISP changed the hostname of the machine my site runs on, and my script uses ssh, scp and rsync, which connect via the hostname. Unfortunately, the failure mode is silence, because the script runs via a scheduled task. The only way I knew it failed was when I went to check the backup folder. Obviously, something more automatic than that would be desirable.

After much web searching, I couldn’t find anything that seeemed like it’d do what I want: An email (and onscreen alert) if my backup failed. I found lots of Unix solutions to send mail using sendmail, but I didn’t really want to enable that on my Mac. So I futzed around and built a simple checker that will mail me when it can’t reach my web host.

(more…)

The Robservatory © 2018 • Privacy Policy Built from the Frontier theme