Pelican 3.3 pelican-quickstart error "ValueError: unknown locale: UTF-8"

When I was trying to use pelican3.3, I typed the commend "pelican-quickstart", some errors showed up.

These are the errors:

    (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/", 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/", line 2566, in load_entry_point
        return ep.load()
      File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/", line 2260, in load
        entry = __import__(self.module_name, globals(),globals(), ['__name__'])
      File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/pelican/", line 16, in <module>
        from pelican.generators import (ArticlesGenerator, PagesGenerator,
      File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/pelican/", line 20, in <module>
        from pelican.readers import Readers
      File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/pelican/", line 11, in <module>
        import docutils.core
      File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/docutils/", line 20, in <module>
        from docutils import frontend, io, utils, readers, writers
      File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/docutils/", line 41, in <module>
        import docutils.utils
      File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/docutils/utils/", line 20, in <module>
      File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/site-packages/docutils/", 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/", line 47, in <module>
        locale_encoding = locale.getlocale()[1] or locale.getdefaultlocale()[1]
      File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/", line 513, in getdefaultlocale
        return _parse_localename(localename)
      File "/Users/Richo/Dropbox/Github/PelicanEnv/lib/python2.7/", line 445, in _parse_localename
        raise ValueError, 'unknown locale: %s' % localename
    ValueError: unknown locale: UTF-8

My OS is OS X Mavericks.

You could try a solution posted here or here. Basically, add some lines to your ~/.bash_profile:

    export LC_ALL=en_US.UTF-8
    export LANG=en_US.UTF-8

There is an outstanding bug report related to this issue. It appears that Python makes some assumptions about the format of locale names that aren't universally valid. Explicitly setting these environment vars is basically just a workaround for that bug.

[Edit:] As @asmeurer correctly points out, the above fix assumes English and the U.S. You should really pick your preferred locale from the list given by locale -a (generally one that ends in UTF-8).


Back to homepage or read more recommendations: