How can I add an application to the list of Open With applications?

50,573

Solution 1

If you have /usr/share/applications/$application.desktop, change

Exec=$command

to

Exec=$command %F

in the file, where $application is the name of application, and $command is the command to execute for desired action.

Then, you will be able to add the application to the list.

It may be necessary to change MimeType=applications/php etc., if it is not still displayed. (Run sudo update-desktop-database after changing that.) Although it may be needlessness for Komodo, it could be necessary for other applications.


You may use the sed program to do the replacement. Please arrange the portion of Exec=command according to your application.desktop file.

sudo sed -i 's/Exec=command/Exec=command %F/' application.desktop

Solution 2

You could simply append a blank space and %F to the Exec parameter in the application.desktop file of your installed application.

You mentioned you didn't install from the software center so add a "komodo.desktop" file in /usr/share/applications/1 or ~/.local/share/applications/2, which would be very similar to the one I'm showing, just change the Name, Exec, Icon (etc) values to reflect your custom installation of komodo on your PC

Like so:
(using sublime as example because I don't use komodo)

an image of gedit using monokai color theme and showing the Exec line and the &F parameter highlighted

Explanation: the %F option activates the ability of passing arguments to your application, so if ubuntu can pass an argument it will activate the "opening file with" option on the context menus, and will pass the file as an argument3. Boom, that's all there is too it, not complicated at all.


Notes:
1: You will need root privileges to modify anything on this directory. (you could use sudo nano app.desktop from the "terminal" or open gedit with root privileges entering gksu gedit & , it will ask for your password of course)
2: ~ stands for your user home directory (which really resides in /home/username/blabla...), and that the /.local/ directory is usually hidden, if you are using nautilus to "explore" your file system you can hit ctrl+h to show hidden files.
3: If your application doesn't support passing arguments it wont work.

Solution 3

Only applications available in the Launcher/Dash show in the Other Applications list.

Komodo Edit 7 creates an icon on your desktop by default:

enter image description here

To put Komodo Edit in the Launcher list and thus make it available in Other Applications, you must do the following:

  1. Open the terminal with Ctrl-Alt-T
  2. Type or paste:

    sudo cp ~/Desktop/komodo-edit-7.desktop /usr/share/applications/
    

    or for the newer version (Komodo Edit 8):

    sudo cp ~/Desktop/komodo-edit-8.desktop /usr/share/applications/
    

    Note that before this step, in order to run Komodo Edit 8 (whose file was named komodo-edit-8.desktop) by simply clicking on the Desktop icon, I was getting an "Untrusted Application Launcher." I fixed this by making it executable by doing

    chmod +x ~/Desktop/komodo-edit-8.desktop
    
  3. Exit the terminal.

  4. Check that Komodo Edit shows up in the Dash (it may take a few moments):

    enter image description here

  5. Now, it should also show in the Other Applications list for php (and other) files:

    enter image description here

Solution 4

Based on vine_user's method, but with a different approach.

I normally download Blender from the official website, then use Alcarte / Main Menu software to create the menu link. After that, you will find the menu at "/.local/share/applications".

Now, see which one of the .desktop files is yours (and make sure it's executable). Right Click on it, hit Properties. Then, in the Command field, right after the command stated there, add %U.

That's it! It should now show in your menu.

Solution 5

In 14.04 you can directly set a program to appear in open with list. open nautilus in root mode, go to /usr/share/applications/ and select the application that you want to make appear on the list. right click and open properties at the command you will see like /usr/bin/appName at the end of that just add %U now the whole thing must look like this /usr/bin/appName %U. now you are done!

Share:
50,573

Related videos on Youtube

JohnB
Author by

JohnB

SOreadytohelp

Updated on September 18, 2022

Comments

  • JohnB
    JohnB over 1 year

    I installed Komodo Edit from a download (wasn't available in Software Center.) I want to be able to open .php files in Komodo, but when I right-click and choose Open With Other Application, Komodo doesn't display anywhere in the list. How can I add it to the list?

    enter image description here

  • JohnB
    JohnB almost 12 years
    This is an older version of Komodo - it was installed about a year ago, and definitely did not create an icon on the desktop. But it IS already available in the dash, so I don't get why it's not in the applications list.
  • ish
    ish almost 12 years
    @EmmyS, please find the Komodo Edit desktop file in /usr/share/Applications and share its content to better help us troubleshoot your problem (instructions in this answer)
  • Attila Fulop
    Attila Fulop over 10 years
    I rather put it in my home directory's share/applications folder as Komodo by default installs itself to my home directory so it's not available for other users. So the command modifies to cp ~/Desktop/komodo-ide-8.desktop ~/.local/share/applications/
  • Aquarius Power
    Aquarius Power over 9 years
    perfect! my blender was broken, just missed that, the moment I fixed it, nautilus promptly showed blender as option!
  • kanu
    kanu over 9 years
    This worked best for me with PDF-Exchange Viewer. Thanks.
  • Chris
    Chris about 9 years
    that %F ... why must linux be so breif
  • IlluminAce
    IlluminAce over 8 years
    If you do add a MimeType entry (the delimiter is a semicolon, by the way), then you may need to run sudo update-desktop-database before Nautilus will pick this up
  • Hunter
    Hunter over 8 years
    Thanks for your answer! It might be useful for beginners (like me) to know that the command line to to change the Exec=command for application.desktop is: gksudo gedit /usr/share/applications/application.desktop
  • Ondra Žižka
    Ondra Žižka over 7 years
    What's %U? Any docs on this?
  • Ondra Žižka
    Ondra Žižka over 7 years
    %F? Any documentation please?
  • AlikElzin-kilaka
    AlikElzin-kilaka over 6 years
    The desktop file might also be found in ~/.local/share/applications/.
  • Marc.2377
    Marc.2377 about 6 years
  • Stephen Ostermiller
    Stephen Ostermiller over 5 years
  • user309383
    user309383 about 5 years
    if %F is omitted in Exec, Ubunty 14 would not even consider putting your app on the 'open with' list - NO MATTER WHAT ELSE you do. I guess it expects some parameter to be passed.
  • Jonathan Giddy
    Jonathan Giddy about 4 years
    @AlikElzin-kilaka Thanks for adding your comment. I modified my configuration in /usr/share/applications with no effect, and then discovered it was shadowed by a broken configuration in ~/.local/share/applications!
  • jdpipe
    jdpipe almost 4 years
    Great! After following instruction to install Adobe Reader on Ubuntu 18.04, linuxconfig.org/…, and then changing my default PDF viewer back to atril again (file right-click→Properties→Open With→Set Default), Acrobat/Adobe Reader disappeared from the 'open with' menu. This trick brought it back again!