Плагин grunt grunt-contrib-haml не может обрабатывать символы UTF-8

Я добавляю в проект grunt https://npmjs.org/package/grunt-contrib-haml

Gruntfile.coffee http://pastebin.com/JzDrVhrA

Я запускаю команду grunt в терминале

И когда я пытаюсь изменить файл haml, я получаю это

➜  caslty  grunt
Running "watch" task
Waiting...OK
> File "index.haml" changed.

Running "haml:compile" (haml) task
Haml error on line 58: Invalid US-ASCII character "\xD0"
    Use --trace for backtrace.
Warning: Haml error on line 58: Invalid US-ASCII character "\xD0"
    Use --trace for backtrace. Use --force to continue.

Aborted due to warnings.
Completed in 1.160s at Tue Jul 30 2013 12:48:17 GMT+0300 (EEST) - Waiting...
OK

Мой haml-файл http://pastebin.com/BitjWkjq содержит русские символы. Но почему haml не может обрабатывать UTF8 ?!

Как я могу это исправить?


person SilentImp    schedule 30.07.2013    source источник


Ответы (1)


Когда Haml получает содержимое вашего файла от Haml, он обрабатывает его как находящийся в кодировке US-ASCII и поэтому выдает ошибку с символами, отличными от ascii.

Вы можете указать кодировку Haml аналогично тому, как вы указываете исходную кодировку файла Ruby с комментарием о кодировке. Добавьте это как самое первое в вашем Haml:

- # encoding: UTF-8
person matt    schedule 30.07.2013