2

Is there a way to modify the "open with" list for a file type? I don't mean simply to remove duplicates - that's been answered; I'm not asking how to set the default program - I know how to do that. I'm using OS X Mavericks.

Example: I have .jpg set to default to open with Xee, but sometimes want to open it with an image editor, so I right-click in finder. I noticed I then get a very long list including lots of apps that cannot open .jpg files at all. (Some are Fluid Apps which may trigger because they're browser based.)

3
  • The terse answer is you modify the entitlements for each and every app you want removed so that the system indexing no longer associates that app with the specific file type in question. Do you want to specify a specific version of a program and ask how to modify it?
    – bmike
    Oct 15, 2014 at 18:49
  • @Tetsujin: the glitch you linked to is not the problem. I don't have duplicate entries, I have entries that I don't want associated with the file type. Oct 15, 2014 at 23:22
  • @bmike: you've gone over my head. Is this something a user can modify? All I can find on the subject seems to apply to app developers. Oct 15, 2014 at 23:35

2 Answers 2

1

I will suggest an alternative way than modifying the system's "open with" list.

I use LaunchBar as my main tool to interact with apps, files and more. I have configured LaunchBar so that when I select a document (or some text) and double tap the command key, LauchBar will allow me to specify the Application to open the file.

I believe that Alfred and Quicksilver have similar abilities.

1

You can fix this on a per-app basis. I don't quite know how to fix this on a per-file-type basis.

  1. Go To

    /Applications/App2Disassociate.app/Contents/Info.plist

and open it with a text editor.

  1. Search for the extensions you would like to disassociate and remove that whole block of code.

  2. Reset cache. You can restart, or run:

    /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user; killall Finder

P.S.: 1. Back up the original Info.plist file, and

  1. Backup the modified Info.plist, because an update of the app will erase your changes.
3
  • Thanks. I'm glad to know how that works, but it may be too cumbersome and too easy for me to make a mistake to be practical in this situation. (and would one need to change the plist for both the User and Library?) FYI, for anyone else reading this who may be as "innocent" as I, to see the app's contents, I needed to right-click the app and select "Show Package Contents." Oct 16, 2014 at 14:24
  • If you want a plainless solution, the only way is to completely disassociate an app with all file types. Have Spotlight exclude the app from its domain/realm, and restart. The app in question such as a Fluid-app will no show up in ANY Open With menu. The drawback is that there is no half measure. Oct 16, 2014 at 20:33
  • As an example, change <key>CFBundleTypeExtensions</key><array><string>drawio</string><string>png</string></array> to <key>CFBundleTypeExtensions</key><array><string>drawio</string><string>png</string><string>svg</string></array>. That makes the application a recommended application for .svg files in addition to .drawio and .png files. Dec 22, 2022 at 14:34

You must log in to answer this question.

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