I'm using Ubuntu Linux and have my python files setup so that when I double click them it opens my text editor to edit them since most of my python files are "work-in-progress." However a few of my python files are in a "finished" state and I don't plan on editing them often, just running them. Is there a way to make those files double click to run instead of edit - on an individual basis? Or a way to encapsulate them some type of container to double click?
3 Answers
You can write wrapper scripts like this:
filename: foobar
#! /usr/bin/env python
import foobar
foobar.main()
filename: foobar.py
#! /usr/bin/env python
....
(actual code)
....
def main():
...
if __name__ == '__main__':
main()
Then chmod +x foobar
. To edit doubleclick on foobar.py
and to run doubleclick on foobar
.
This follows the unix/linux convention that executables have no extension and the python convention that the source files have a .py
extension.
As you're using file associations to edit them I suggest when you've finished them you rename them to something else (eg. blah.pyx) and then associate .pyx with execute.
Make sure you have this at the top of each ofc:
#!/usr/bin/env python
Asociate the .py file, right click file.py
select properties/open with, then select Other application at the bottom you see a + Use a custom command, Click and use
xterm -e python2