Jak poprawnie skonfigurować Python3.3 i Sublime Text 2 w systemie OS X 10.8.2?


3

Próbuję skonfigurować Sublime Text 2, aby polecenie budowania poprawnie uruchamiało skrypty Python3 / Python3.3.

Zainstalowałem Pythona 3.3 za pomocą instalatora uzyskanego z python.org i zainstalowałem Sublime Text 2 za pomocą instalatora Sublime Text 2.

Następnie dodałem niestandardowy wpis o nazwie:

Python3.sublime-build 

do folderu Python w Sublime Text 2 o następującej treści:

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

Podczas próby uruchomienia skryptu pojawia się następujący błąd:

[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]

Przeczytałem gdzieś to symlinkng python3 z /usr/bin może rozwiązać problem, ale po utworzeniu dowiązania symbolicznego w /usr/bin za pomocą Findera tekst Sublime nadal nie może zostać zbudowany, ponieważ otrzymuje błąd uprawnień.

Jaki jest najlepszy sposób na ustawienie Sublime Text 2, aby umożliwić uruchamianie skryptów Python3?

[edytować]

Jeśli umieszczę PATH dla simlink generowanego przez instalację, Sublime Text 2 może zbudować skrypt,

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

Ale kiedy próbowałem dodać PATH do ~ / .MacOSX / environment.plist zgodnie z zaleceniami bez zdefiniowanej PATH, otrzymuję błąd. Czy ktoś mógłby wskazać, dlaczego to nie działa?


Czy masz na myśli budowanie Pythona 3 - co zwykle oznacza pobieranie źródeł i tworzenie pliku wykonywalnego Pythona? Myślę, że masz na myśli używanie Pythona 3, tj. Uruchamianie skryptu .py za pomocą pliku wykonywalnego python3
Mark

Tak, mam na myśli uruchamianie komendy budowania dla skryptu Pythona w SublimeText2 bez budowania Pythona - będzie edytować, aby wyjaśnić.
markfknight

Dziękuję za edycję bloków kodu, pierwsze pytanie, które zadałem, będzie musiało je zapamiętać następnym razem.
markfknight

Odpowiedzi:


3

Dodaj "path": "/Library/Frameworks/Python.framework/Versions/3.3/bin/" do twojego pliku kompilacji Python3. Mój wygląda tak:

{
    "cmd": ["python3", "-u", "$file"],
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.python",
    "encoding": "utf8",
    "path": "/Library/Frameworks/Python.framework/Versions/3.3/bin/"
}

Uwaga: Upewnij się, że ścieżka do Pythona3 jest względna Twój maszyna - tak było w moim


1
Robię to samo z linią „cmd”: [„usr / local / bin / python3”, „-u”, „$ file”], naprawdę szukając rozwiązania, aby OSX działało jak noga.
markfknight

2

Podałem pełną ścieżkę do python3, aby to działało:

{
  "cmd" : ["/usr/local/bin/python3", "-u", "$file"],
}

To była moja sztuczka.
JacobIRR

0

Problemem jest normalny OSX, którego aplikacje GUI nie czytają w twoich profilach powłoki itp., Więc po prostu mają dziedziczoną ścieżkę z obszaru roboczego.

Rozwiązaniem tego problemu jest dodanie ścieżki w ~ / .MacOSX / environment.plist

To znaczy dodaj parę kluczy ciągu dla PATH, np.

<!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>

Musisz się wylogować i zalogować lub ewentualnie uruchomić ponownie, aby to zadziałało.


Utworzono folder i plik przed dodaniem pary łańcuchów kluczy, niestety nadal pojawia się błąd. czy muszę dodać ścieżkę Pyhton3 do pliku binarnego?
markfknight

Co teraz pokazuje wyjście ścieżki w SublimeText?
Mark

wyjście ścieżki wciąż pokazuje [ścieżka: / usr / bin: / bin: / usr / sbin: / sbin]
markfknight

Dodałem & lt; Key & gt; PATH & lt; Key & gt; oraz następujący & lt; String & gt; / usr / bin: / bin: / usr / sbin: / sbin: / usr / local / bin: & lt; String & gt; do ~ / .MacOSX / environment.plist, zamknij i uruchom, wciąż otrzymując ten komunikat. Jeśli linkuję bezpośrednio do / usr / local / bin / python3 w pliku Python3.sublime-build, jego kompilacje bez żadnych problemów. Czy możesz pomóc dalej?
markfknight

Dodanie do kompilacji Sublime jest prawdopodobnie najlepsze
Mark

0

Przepełnienie stosu witryny siostrzanej ma niewiele wpisów z wyjaśnieniami dotyczącymi kwestii ustawiania zmiennych środowiskowych PATH dla aplikacji opartych na interfejsie GUI. Niektórzy twierdzą, że program environment.plist działa, a inni twierdzą, że nie działa i zalecają używanie launch.conf.

Mac OS X Lion nie rozpoznaje już środowiska , Zmienne środowiskowe w Mac OS X , i Ustaw zmienne środowiskowe w systemie Mac OS X Lion . Również ta odpowiedź ma więcej szczegółów na temat formatu launch.conf.


Próbowałem tych dwóch podczas moich poszukiwań bez powodzenia.
markfknight
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.