Estoy tratando de configurar Sublime Text 2 para que el comando de compilación ejecute correctamente los scripts de Python3/Python3.3.
Instalé Python 3.3 a través del instalador obtenido de python.org e instalé Sublime Text 2 a través del instalador de Sublime Text 2.
Después de esto, agregué una entrada de compilación personalizada llamada:
Python3.sublime-build
en la carpeta Python de Sublime Text 2 con los siguientes contenidos:
{
"cmd": ["python3", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python"
}
Recibo el siguiente error al intentar ejecutar el script:
[Errno 2] No such file or directory
[cmd: [u'python3', u'-u', u'/Users/user/Library/Application Support/Sublime Text 2/Packages/Python/Python3.sublime-build']]
[dir: /Users/user/Library/Application Support/Sublime Text 2/Packages/Python]
[path: /usr/bin:/bin:/usr/sbin:/sbin]
[Finished]
He leído en alguna parte que el enlace simbólico python3
podría /usr/bin
solucionar el problema, pero después de crear el enlace simbólico a /usr/bin
través de Finder, Sublime Text aún no puede compilarse porque recibe un error de permisos.
¿Cuál es la mejor manera de configurar Sublime Text 2 para permitir la ejecución de scripts de Python3?
[editar]
Si coloco la RUTA para el enlace sim python3 generado por la instalación, Sublime Text 2 puede construir el script,
{
"cmd": ["usr/local/bin/python3", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python"
}
Pero cuando intenté agregar la RUTA a ~/.MacOSX/environment.plist como se recomienda sin la RUTA definida, aparece el error. ¿Alguien podría señalar por qué esto no funciona?
Agregue "path": "/Library/Frameworks/Python.framework/Versions/3.3/bin/"
a su archivo de compilación de Python3. El mío se ve así:
{
"cmd": ["python3", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
"encoding": "utf8",
"path": "/Library/Frameworks/Python.framework/Versions/3.3/bin/"
}
Nota: asegúrese de que la ruta a Python3 sea relativa a su máquina; eso fue cierto para la mía
$(which python)
en el archivo de compilación.Di la ruta completa a python3 para que esto funcione:
{
"cmd" : ["/usr/local/bin/python3", "-u", "$file"],
}
El problema es el OSX normal de que las aplicaciones GUI no leen sus perfiles de shell, etc., por lo que solo tienen la ruta heredada del espacio de trabajo.
La forma de solucionar esto es agregar la ruta en ~/.MacOSX/environment.plist
Eso es agregar un par de cadenas clave para PATH, por ejemplo
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PATH</key>
<string>/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/libexec/binutils:</string>
</dict>
</plist>
Deberá cerrar sesión e iniciar sesión o posiblemente reiniciar para que esto funcione.
El stackoverflow del sitio hermano tiene pocas entradas con explicaciones sobre el problema de establecer variables de entorno PATH para aplicaciones basadas en GUI. Algunos afirman que environment.plist funciona y otros afirman que no y recomiendan usar launch.conf.
Mac OS X Lion ya no reconoce environment.plist , Variables de entorno en Mac OS X y Establecer variables de entorno en Mac OS X Lion . Además , esta respuesta tiene más detalles sobre el formato launch.conf.
mmmmmm
marcafknight
marcafknight