Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I would like to set IDLE as the default editor for python scripts, but when I click on "open with application" and hit the dropdown to show more applications it isn't an option.

Here's exactly what I am doing...

  1. right-click on .py file on my desktop.
  2. Right click on properties.
  3. Click on the Open with tab.

There is no "Use a custom command" option. The same thing happens when I right click on the file and select "open with other application".

Do you of any way I could set this up?

share|improve this question
    
Which Ubuntu version are you using? In 11.04 you can browse to arbitrary program location in "Open with" dialog. For 11.10 I think you can do same with "Properties" dialog –  zetah Nov 12 '11 at 15:38
    
I am using 11.04, but IDLE is showing up in the open with other app dialouge. –  Lance Collins Nov 12 '11 at 15:43
    
OK then, tick on "Remember this application" and select IDLE from "Open with" dialog –  zetah Nov 12 '11 at 15:46
    
Sorry, made a typo. *IDLE is NOT showing up in the open with other app dialouge box. –  Lance Collins Nov 12 '11 at 15:54
    
Well, when you select "Other application" a dialog will open. You'll notice at the bottom a roll on/off label "Use a custom command". Just browse then to location of IDLE and tick on "Remember this application" if you want to make it default –  zetah Nov 12 '11 at 16:00
show 5 more comments

1 Answer

up vote 7 down vote accepted

You didn't mention which idle package you are using, let's assume "Idle". If using "Idle3" then use idle3.desktop below. If using "Idle(using Python-2.7)" then use idle-python2.7.desktop

There are 2 things preventing you from finding idle in the context menus -

First none of the idle .desktops have a MimeType= line in them, that's why Idle doesn't show in the r. click > open with ... menu

Additionally - only .desktops whose Exec= line ends with a %letter will show in the r. click > properties context menu, even if they show up in the above 'open with' menu

So in this case easiest to just do this - first add to the open with menu

gedit ~/.local/share/applications/mimeapps.list

In the [Added Associations] section look for this line

text/x-python=

If there then add this to the end

idle.desktop;

If not there then just add

text/x-python=idle.desktop;

Idle should now be available in the open with menu, if not log out/in

While there, in the [Default Applications] section look for the same line & replace the .desktop as such, if not there just add the line ( no ; is used in the Defaults section

text/x-python=idle.desktop  

If Idle doesn't show up as the default, even after a restart then you'll need to 'force' it. I'd prefer this way rather than messing with defaults.list

open the .desktop in a root editor

 gksudo gedit /usr/share/applications/idle.desktop

Add a %f to the end of the line, save - like

Exec=/usr/bin/idle -n %f

Then ck. again & see if Idle is now the default, do a log out/in if needed. Once it's added then you can reopen idle.desktop & remove the %f, it should stay as default. I'm not sure if %f is appropriate for idle, otherwise I'd say you could leave it

enter image description here

share|improve this answer
1  
This works in Ubuntu 13.04, without reloading session (but maybe just relaunching Nautilus). Great thanks! –  Joël Jan 6 at 16:52
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.