2014-07-24 53 views
3

我有一个中等大小的Django项目,并且正在使用Django翻译。虽然我运行命令django-admin.py makemessages -l fr。使用法语时出现以下错误。Django本地化msgmerge错误

CommandError: errors happened while running msgmerge 
msgmerge: input file doesn't contain a header entry with a charset specification 

在哪里指定字符集规范和指定什么?

回答

4

这只是普通的boiler-plate PO文件头。例如:

# SOME DESCRIPTIVE TITLE. 
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER 
# This file is distributed under the same license as the PACKAGE package. 
# FIRST AUTHOR <[email protected]>, YEAR. 
# 
#, fuzzy 
msgid "" 
msgstr "" 
"Project-Id-Version: PACKAGE VERSION\n" 
"Report-Msgid-Bugs-To: \n" 
"POT-Creation-Date: 2014-05-18 20:44+0200\n" 
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 
"Last-Translator: FULL NAME <[email protected]>\n" 
"Language-Team: LANGUAGE <[email protected]>\n" 
"Language: \n" 
"MIME-Version: 1.0\n" 
"Content-Type: text/plain; charset=UTF-8\n" 
"Content-Transfer-Encoding: 8bit\n" 
"Plural-Forms: nplurals=2; plural=(n != 1)\n" 

您应该在现有的法国PO文件中寻找标头。

错误可能是由没有国际化字符串的应用程序引起的。

+0

工作谢谢你!这是我正在寻找 – user3383301

+1

也请确保您的编辑器(我的月食)设置为UTF-8修改文件 –