Проблемы с Ruby 1.9 и Sass.(от ASCII-8BIT до UTF-8) - PullRequest
6 голосов
/ 11 мая 2011

Я недавно обновился до Ruby 1.9 и больше не могу ничего скомпилировать с помощью Sass.

Я видел решения, которые утверждают, что если я поместу

 @charset "utf-8";

вверху моего файла .sccs, это исправит это.Однако я все еще получаю ошибку.Вот полная трассировка

Я также пытался удалить любые не-ascii символы из моего CSS-файла, создать новый и т. Д. Он просто не будет компилироваться.Любые советы?

Traceback:

Sass следит за изменениями.Нажмите Ctrl-C, чтобы остановить.

/ home / webdev / .gem / repository / gems / sass-3.1.1 / lib / sass / util.rb: 496: в `encode ': транскодирование не поддерживается (от ASCII-8BIT до UTF-8) (ArgumentError)

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/util.rb:496:in _enc' from /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/util.rb:515:in спасение в блоке (1 уровень) в '

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/util.rb:508:in `блока (1уровней) в '

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/util.rb:472:in `yield'

из/home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/util.rb:472:in `default '

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/util.rb:472:in `block in check_sass_encoding '

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass / util.rb: 471: в "каждом"

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/util.rb:471:in `найти'

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/util.rb:471:in `check_sass_encoding '

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/engine.rb:349:in `check_encoding!'

из /home / webdev / .gem / repository / gems / sass-3.1.1 / lib / sass / engine.rb: 316: в `_to_tree '

из /home/webdev/.gem/repository/gems/sass-3.1.1 / lib / sass / engine.rb: 291: в `_render '

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/engine.rb: 238: в `render '

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/plugin/compiler.rb:319:in` update_stylesheet'

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/plugin/compiler.rb:169:in `блока в update_stylesheets '

из/home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/plugin/compiler.rb:167:in `each '

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/plugin/compiler.rb:167:in `update_stylesheets '

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib / sass / plugin / compiler.rb: 214: в `watch '

from /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/plugin.rb:111:in `method_missing '

из /home/webdev/.gem/repository/gems / sass-3.1.1 / lib / sass / exec.rb: 408: в `watch_or_update '

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/exec.rb:294:in `process_result '

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/exec.rb:41:in` parse'

из /home/webdev/.gem/repository/gems/sass-3.1.1/lib/sass/exec.rb:21:in `parse! '

из / home /webdev / .gem / repository / gems / sass-3.1.1 / bin / sass: 8: в `'

из /home/webdev/.gem/repository/bin/sass:19:in` load'

из /home/webdev/.gem/repository/bin/sass:19:in `'

Ответы [ 5 ]

11 голосов
/ 09 декабря 2013

Для завершения @ nex3 ответа вы можете

Открыть файл config.rb и добавить:

Encoding.default_external = "UTF-8"
2 голосов
/ 12 мая 2011

Похоже, что ваша среда Ruby настроена для загрузки исходного кода Sass как ASCII-8BIT, он же BINARY.Вероятно, это связано с тем, что вы либо передаете флаг -Kn процессу Ruby, либо устанавливаете Encoding.default_external в Encoding::BINARY где-то в своем коде перед загрузкой Sass.Отмените это, и Sass должен работать.

2 голосов
/ 12 мая 2011

Я не знаю точно суть проблемы, но, похоже, были некоторые проблемы с Ruby 1.9.0 (версия, доступная в apt для этой коробки Ubuntu) и кодированием.

Чтобы решить эту проблему, я использовал https://rvm.io, который является помощником для загрузки и компиляции Ruby из Git, давая мне последнюю версию. После запуска sass компилируется нормально и все отлично.

0 голосов
/ 02 июля 2019

Это случилось со мной, и решение не было очевидным: Елена Погорелова из Jet Brains объяснила в этом посте, что символы не-ASCII в маршруте ваших файлов могут нарушать SASS , как было в моем случае.

users/xxxx/projects/chilediseño/cms/scss (ñ)

Мне просто нужно было исключить (-) в названии выше, и все заработало.

0 голосов
/ 11 мая 2011

Это, вероятно, очевидно, но вы уверены, что ваш файл Sass имеет кодировку UTF-8?Любой приличный текстовый редактор позволит вам конвертировать кодировки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...