2012-09-09 56 views
2

在Sublime Text2中設置生成環境時遇到問題。 我使用Macports進行Python和包安裝。在Sublime Text2中設置Python版本的麻煩

我python.sublime-build文件看起來像這樣:

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

我認爲(從搜索),我需要修改「CMD」線指向的MacPorts版本。任何人都成功地做到

從終端,一切都建立/運行良好,它只是Sublime Text2的構建抓住系統版本仍然。

附加信息:

which python 
/opt/local/bin/python 

感謝您的幫助。

+2

爲什麼不改變'python'

  • 通過設置而不是"shell"選項運行通過shell命令到'/ opt/local/bin/python'? – Blender

  • 回答

    15

    您的Sublime Text 2環境與您的shell環境不同; $PATH變量可能不指向相同的目錄並選擇錯誤的可執行文件。

    您有幾種選擇來解決是:

    1. 設置一個"path"選項,包括/opt/local/bin需要使用絕對路徑爲您python可執行文件,作爲崇高文本2不共享相同的環境路徑變量你的shell使用。檢查echo $PATH和使用,作爲一個模板:

      { 
          "cmd": ["python", "-u", "$file"], 
          "path": "/opt/local/bin:/opt/local/sbin:/Library/Frameworks/Python.framework/Versions/Current/bin:/Users/yourloginname/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin", 
          "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", 
          "selector": "source.python" 
      } 
      

      這將使用/bin/bash運行命令,我認爲將有相同$PATH設置爲你的終端。

      { 
          "cmd": ["python", "-u", "$file"], 
          "shell": true, 
          "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", 
          "selector": "source.python" 
      } 
      
    2. 使用python命令的完整路徑:

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

    示例2不會向崇高控制檯輸出打印消息或任何其他消息。 – user1767754