Kiedy próbowałem użyć pelikana3.3, wpisałem polecenie „pelican-quickstart”, pojawiły się błędy.
Oto błędy:
(PelicanEnv)59-127-113-90:myblog Richo$ pelican-quickstart
Traceback (most recent call last):
File "/Users/Richo/Dropbox/Github/PelicanEnv/bin/pelican-quickstart", line 9, in <module>
load_entry_point('pelican==3.3', 'console_scripts', 'pelican-quickstart')()
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/pkg_resources.py", line 378, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/pkg_resources.py", line 2566, in load_entry_point
return ep.load()
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/pkg_resources.py", line 2260, in load
entry = __import__(self.module_name, globals(),globals(), ['__name__'])
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/pelican/__init__.py", line 16, in <module>
from pelican.generators import (ArticlesGenerator, PagesGenerator,
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/pelican/generators.py", line 20, in <module>
from pelican.readers import Readers
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/pelican/readers.py", line 11, in <module>
import docutils.core
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/docutils/core.py", line 20, in <module>
from docutils import frontend, io, utils, readers, writers
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/docutils/frontend.py", line 41, in <module>
import docutils.utils
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/docutils/utils/__init__.py", line 20, in <module>
import docutils.io
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/docutils/io.py", line 18, in <module>
from docutils.utils.error_reporting import locale_encoding, ErrorString, ErrorOutput
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/docutils/utils/error_reporting.py", line 47, in <module>
locale_encoding = locale.getlocale()[1] or locale.getdefaultlocale()[1]
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/locale.py", line 513, in getdefaultlocale
return _parse_localename(localename)
File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/locale.py", line 445, in _parse_localename
raise ValueError, 'unknown locale: %s' % localename
ValueError: unknown locale: UTF-8
Mój system operacyjny to OS X Mavericks.
python
python-2.7
pelican
Richo
źródło
źródło
Odpowiedzi:
Możesz wypróbować rozwiązanie zamieszczone tutaj lub tutaj . Zasadniczo dodaj kilka linii do swojego ~ / .bash_profile:
Istnieje zaległy raport o błędzie związany z tym problemem. Wygląda na to, że Python przyjmuje pewne założenia dotyczące formatu nazw ustawień regionalnych, które nie są powszechnie obowiązujące. Jawne ustawienie tych zmiennych środowiskowych jest w zasadzie tylko obejściem tego błędu.
[Edytuj:] Jak słusznie wskazuje @asmeurer, powyższa poprawka zakłada angielski i Stany Zjednoczone. Naprawdę powinieneś wybrać preferowaną lokalizację z listy podanej przez
locale -a
(zazwyczaj taka, która kończy się naUTF-8
).źródło
echo -e "export LC_ALL=en_US.UTF-8\nexport LANG=en_US.UTF-8" >> ~/.bashrc && source ~/.bashrc
LANG
poprawnego ciągu znaków dla twojego języka (możesz je wszystkie wymienićlocale -a
), zwykle używając tego, który kończy się naUTF-8
.Odpowiedź Gerrata działa i uważam, że powinniśmy wspomnieć, że jeśli używasz czegoś podobnego
zsh
, powinieneś dodać linie do~/.zshrc
zamiast~/.bash_profile
lub~/.bash_rc
źródło
Odpowiedzi na górze były szybkie, świetne! Ale uważam, że ludzie leniwi jak ja chcą zmienić globalne środowisko na wypadek, gdyby nigdy więcej się nie zmieniło podczas zmiany na innego użytkownika logowania. Musimy więc zmienić plik taki jak:
A następnie dodaj dwie linie w poniższych plikach
Pamiętaj, nie przegap żadnego z nich, dla mnie nie działa tylko $ LANG lub $ LC_ALL. Następnie uruchom polecenie, aby aktywować środowisko.
Ponownie, leniwi ludzie, tacy jak ja, mogą zakończyć za pomocą jednej linii poleceń.
źródło
Ponownie zamieszczam tutaj moją odpowiedź na to pytanie , ponieważ została ona oznaczona jako duplikat tego pytania, a przyjęta odpowiedź na to pytanie jest pod wieloma względami błędna.
Jest to błąd w aplikacji OS X Terminal, który pojawia się tylko w niektórych lokalizacjach (kombinacje kraju / języka). Otwórz Terminal w / Applications / Utilities i odznacz pole „Ustaw lokalne zmienne środowiskowe przy uruchamianiu”.
Spowoduje to ustawienie
LANG
pustej zmiennej środowiskowej. Może to spowodować użycie terminala do nieprawidłowych ustawień dla twojego języka. Polecenie locale w terminalu powie Ci, jakie ustawienia są używane. Aby użyć właściwego języka, dodaj linię do swojego profilu bash (zazwyczaj~/.profile
)Zastąp
your-lang
poprawnym specyfikatorem ustawień regionalnych dla Twojego języka. Polecenielocale -a
pokaże wszystkie specyfikatory. Na przykład kod języka angielskiego (USA) toen_US.UTF-8
. Ustawienia regionalne wpływają na to, jakie tłumaczenia są używane, gdy są dostępne, a także na formatowanie dat, walut i miejsc dziesiętnych.Uwaga, to zdjęcie i treść pochodzą z http://conda.pydata.org/docs/troubleshooting.html#unknown-locale (jestem też oryginalnym autorem tej strony).
źródło
Żadne z wymienionych tutaj rozwiązań nie zadziałało podczas uruchamiania projektu Python 3.7 w lokalnym środowisku silnika aplikacji.
Chociaż mogłem pobrać ustawienia regionalne za pomocą wiersza poleceń:
Nie można znaleźć tego języka w środowisku aparatu aplikacji:
Musiałem więc wyraźnie ustawić
env_variables
w moim pliku app.yaml:I to rozwiązało problem.
źródło
Z jakiegoś powodu potrzebowałem również:
źródło