Set up Python 3 build system with Sublime Text 3 Set up Python 3 build system with Sublime Text 3 python python

Set up Python 3 build system with Sublime Text 3


The reason you're getting the error is that you have a Unix-style path to the python executable, when you're running Windows. Change /usr/bin/python3 to C:/Python32/python.exe (make sure you use the forward slashes / and not Windows-style back slashes \). Once you make this change, you should be all set.

Also, you need to change the single quotes ' to double quotes " like so:

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

The .sublime-build file needs to be valid JSON, which requires strings be wrapped in double quotes, not single.


Steps to Make Sublime Text a Python IDE (Windows)

Tested successfully on Sublime Text 3. Assuming Sublime Text and package control are already installed . . .

  1. Install Python (python.org) and pay attention to where it is installed or choose a simple location like the C drive, agreeing to remove character limit at the end of the installation.

  2. Install package SublimeREPL (Cntrl + Shift + P, Package Control - Install Package, SublimeREPL, Enter).

  3. Go to Preferences, Package Settings, SublimeREPL, Settings - User.

  4. Paste in the following, updating the file path to your python installation folder, as needed. You may customize these and choose whatever syntax you like (last line) but I prefer my output in plain text.

    {  "default_extend_env": {"PATH":"C:\\Program Files\\Python36\\"},  "repl_view_settings": {  "translate_tabs_to_spaces": false,  "auto_indent": false,  "smart_indent": false,  "spell_check": false,  "indent_subsequent_lines": false,  "detect_indentation": false,  "auto_complete": true,  "line_numbers": false,  "gutter": false,  "syntax": "Packages/Text/Plain text.tmLanguage"  }}
  5. Save and close the file (SublimeREPL.sublime-settings).

  6. Go to Tools, Build System, New Build System.

  7. Replace all existing text with the following:

    {"target": "run_existing_window_command", "id": "repl_python_run","file": "config/Python/Main.sublime-menu"}
  8. Cntrl + S or save as "C:\Users[username]\AppData\Roaming\Sublime Text 3\Packages\User\SublimeREPL-python.sublime-build" updating username or path as needed. This should be wherever your settings and builds are stored by Sublime Text.

  9. Go to Tools, Build System, select SublimeREPL-python.

  10. All done--now to test. Open or create a simple python file, having a *.py extension and save it wherever desired.

  11. Make sure the file is open and selected in Sublime Text. Now, when you press Cntrl + B to build and run it, it will open another tab, titled "REPL [python]", executing and displaying the results of your python code.

If you would like to go a step further, I highly recommend making the follow changes, to allow Sublime to reload your executed python in the same window, when you press Cntrl+B (Build), instead of it opening a new tab each time:

Add the following line in the "repl_python_run" command in (Preferences, Browse Packages) SublimeREPL\config\Python\Main.sublime-menu, right before the "external_id": "python" argument:

"view_id": "*REPL* [python]",

and then to change the line:

if view.id() == view_id

into:

if view.name() == view_id

in SublimeREPL\sublimerepl.py.


If you are using PyQt, then for normal work, you should add "shell":"true" value, this looks like:

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