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
