42

I don't know if other people have notice this in Yosemite:

With a file in Finder in focus, when you move the cursor to "Open With" entry, whether from context menu or menu bar -> File, a "Fetching..." subentry appears.

Finder Right Click Open With Fetching Screenshot

A moment later, the usual suspects show up, as they did in previous OS X versions.

Finder Right Click Open With FETCHED Screenshot

This behavior, I assume, is supposed to be an improvement. Since /Application/***.app/Contents/Info.plist is live-fetched, an user no longer need to reset LaunchServices for related changes to appear. This is my conjecture.

However, this causes a problem for me. I create keyboard shortcut through applescript or BetterTouchTool to invoke Menu Bar -> File -> Open With -> Certain App.

This way I programed FN+SHIFT+1 to open the file with TextMate, FN+SHIFT+2 for Writer Pro, etc.

The 1) need for cursor over "Open With" to trigger fetch, and 2) the delay in fetching cause my scripts to be invalid.

I was able to verify this theory by: 1) Right clicking a file, 1) Hover over "Open With" entry, 3) Wait for the submenu to fetch, 4) Click outside the Context Menu to have it disappear, 5) and invoke the keyboard shortcut.

And the shortcut worked.

So these are my questions:

1) Obviously, can I revert to pre-Yosemite behavior?

2) Does anyone have clever ways to open a file type with multiple apps on demand cleanly and efficiently?

UPDATE:

So far, I have one workaround, that is to create a Automator Service. Here is an example with TextMate:

Service

I can run this without delay through 1) Menubar -> Finder -> Services -> Open With TextMate, 2) top level of the context menu, or 3) a keyboard shortcut if I choose to.

Context Menu

This comes with two caveats:

1) The items received into the service have to be in the broadest definition possible, e.g. files and folders. Finder doesn't recognized, for example, .plist files as documents. If you set the service to only receive documents, Open With TextMate would not show up when you want to use it on a .plist file.

2) Because of (1), this menu entry shows up on every item in Finder. It's innocuous enough if there is only one or two custom entries. If there is six or seven, this group of items is going to take over the context menu.

  • I'm getting this too, but for me it's taking longer than a moment to pop up the list, sometimes it just won't. I'm using a late 2012 Mac mini with 16GB of ram so it should not be so hard to run! – Jay B. Oct 30 '14 at 0:40
  • How did you get it to appear in the top level menu instead of just the Services submenu? – Noah Sep 8 '16 at 19:47
  • @Noah when there is only few items in Services menu it show like this without submenu, i think. – diimdeep Jan 4 '17 at 11:28
65

I had a similar issue and the 'Fetching...' was taking many seconds. I just reset Launch Services with the following command:

/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -seed -r -f -v -domain local -domain user -domain system
  • 1
    seems to work ;) – Toby Nov 6 '14 at 22:56
  • 1
    This fixed the lag (sometimes ~1min) between 'Fetching...' and a usable list being presented for me too – Erin Drummond Jan 20 '15 at 22:26
  • This fixed it for me as well. Before this fix, when eventually fetched the list, choosing "Other..." would be incredible slow and laggy, making my CPU run at 70% for the finder process. – mewm Feb 8 '15 at 15:59
  • 2
    Yes this fixes... but it come back after few days. This is not a permanent solution – Pujan Srivastava Apr 15 '15 at 2:23
  • Worked first shot... I didn't think of even doing this! hah! I thought it was the new Adobe stuff I installed :P – Adrian Sluyters Apr 30 '15 at 21:43
2

After things settled down (spotlight indexing is complete, a few reboots, using different user names), things have settled down and the "fetching" delay has gone away and the popup menu opens in less than 2 seconds are so. But some conditions (like mounting new disks) seem to make the delay increase again.

Resetting Launch Services from first comment DOES work, if the delay increases (/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -seed -r -f -v -domain local -domain user -domain system). While the command executes, you can see in the Console

LaunchServices: Begin database seeding"

and

"... Completed database seeding"

Sometimes it takes a whole minute to reset/rebuild! There are also several error messages in the terminal window when the command executes (e.g., registering Livecode application's community edition).

Putting the reset launch services command in something like Lingon and running it every so often may be way to go until Apple fixes the delay in some future update.

0

I noticed this when I have a Time Machine disk attached that has not been used in a while. If the disk is asleep and I right-click, I see "Fetching" in the contextual menu. Then I hear the HDD wake up, spin for a second, and the "Open With" menu is finally populated.

When I don't have the external drive attached, I don't see this behavior.

You must log in to answer this question.

protected by Community Nov 8 '14 at 23:30

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged .