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.