Sublime Text don’t build anything

buildsublimetext2

I used Sublime Text 2 in Ubuntu Linux and worked pretty fine.

Now, when I use it in Windows, i can't build anything. It appears "building" in the status bar in the bottom and then do nothing. I did a trivial test like building a print "hello world" in python build system and nothing happens.

I am missing anything? Btw: the python is in the System Path

Best Answer

I'm not sure what the exact problem is, here are somethings you can try.

0. Recheck

Sublime text 2 just calls python -u $file on both linux and windows. I would first double check this command works in a new cmd window.

1. Patch exec.py

On Windows systems new windows opened by the build process are hidden. This stops GUIs and maybe the python terminal from appearing.

You can disable this patching Packages\Default\exec.py by commenting out line 33:

startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW

2. Indirectly calling python

Another option is to modify Packages/Python/Python.sublime-build so that it calls a bat file which then executes the python file. (this is what I am currently doing for .swf files)

3. Hardcoding Python path

Or, this is not ideal, you can try hard coding the python path into the build file like:

{
    "cmd": ["C:\\python27\\python.exe", "-u", "$file"],
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.python"
}

Hope one of the above works.