Не удается скомпилировать скин rwd SCSS в Magento CE 1.9

Я пытаюсь создать скин Magento на основе скина rwd, представленного в CE 1.9/EE 1.14. Однако, когда я пытаюсь скомпилировать SCSS (при чистой установке, после удаления файлов в /skin/frontend/rwd/default/css), я получаю следующую ошибку:

$ compass compile scss
    write css/madisonisland-ie8.css
    write css/madisonisland.css
    write css/scaffold-forms.css
    error scss/styles-ie8.scss (Line 541 of scss/core/_common.scss: Invalid CSS after "a:not(": expected ")", was "".button")")
Sass::SyntaxError on line ["541"] of /var/www/development/magento-mirror/skin/frontend/rwd/default/scss/core/_common.scss: Invalid CSS after "a:not(": expected ")", was "".button")"
Run with --trace to see the full backtrace

Строка 541 в scss/core/_common.scss:

a:not(".button") {

И если я уберу окружающие кавычки из .button - он успешно компилируется. Однако, поскольку это новая установка Magento, мне действительно нужно редактировать файлы, чтобы заставить их скомпилироваться? Может ли быть параметр конфигурации в компасе, который я пропустил и т. д.?

Спасибо


person Tom Griffin    schedule 02.09.2014    source источник
comment
Проблема в коде, который вы написали или в коде, написанном кем-то другим?   -  person cimmanon    schedule 02.09.2014
comment
Это немодифицированный основной код проекта Magento, так что да, написанный кем-то другим. Но я бы предположил, что новая установка будет скомпилирована. Я не могу найти что-либо еще об этом в Интернете, поэтому я предполагаю, что это связано с конфигурацией?   -  person Tom Griffin    schedule 02.09.2014
comment
Вы хотели бы думать, что новая установка будет скомпилирована. К сожалению нет. Строка, содержащая проблему, не соответствует SCSS или CSS. С этим вопросом нужно обратиться к сопровождающим кода.   -  person cimmanon    schedule 02.09.2014
comment
Оскорбительная строка кода: github.com/OpenMage/magento-mirror/blob/magento-1.9/skin/ — спасибо за помощь @cimmanon   -  person Tom Griffin    schedule 02.09.2014
comment
У меня была та же проблема, что и выше, странно иметь ее в основных файлах.   -  person tawfekov    schedule 04.09.2014
comment
Только что распаковал свежий tar.gz с сервера magento. Вопрос остается. Отредактировал _common.scss, чтобы удалить кавычки, после чего он отлично скомпилировался.   -  person Joshua34    schedule 18.09.2014
comment
Я столкнулся с этой проблемой после обновления драгоценного камня Sass. Кто-то в Magento использует старую версию.   -  person DSG    schedule 23.12.2014


Ответы (3)


Я тоже столкнулся с этой проблемой, делая то же самое, что и Том Гриффин — создавая новый custompackage/customtheme с rwd/default в качестве родителя.

Копирование core/_common.scss в папку my customtheme и удаление кавычек в соответствии с исходным сообщением Тома устраняет проблему и позволяет компасу правильно компилироваться.

Очень плохо, что Magento поставляется с недопустимыми файлами SCSS, которые не компилируются. Конечно, это не помогло мне при первом изучении SASS и Compass!

Как предположил Том, возможно, это версия SASS/Compass или настройка, которая есть у разработчиков темы Magento. Я использую SASS 3.4.1 и Compass 1.0.0.

Спасибо

Том

person Tom Castleman    schedule 05.09.2014

Откройте scss/core/_common.scss и отредактируйте строку 541, удалите кавычки только из «.button».

a:not(.button) {
person Amer    schedule 28.09.2014

Это проблема совместимости с компасом. Когда была выпущена тема Magento 1.9 rwd, последней версией компаса была 0.12.6, которая скомпилировалась правильно. По крайней мере, я тестировал 1.12.3, и у меня не было проблем с компиляцией. Я подозреваю, что это будет исправлено в следующем выпуске, поскольку разработчики компилируют более позднюю версию компаса по мере их выхода. Удаление кавычек приведет к желаемому результату и корректной компиляции по крайней мере в версиях 1.0.0 и 1.0.1. Это действительно больше проблема совместимости с компасом, чем основная ошибка Magento, но я уверен, что об этом скоро позаботятся.

person Jonathan Hodges    schedule 26.09.2014