На странице Susy Начало работы есть раздел с пометкой 'Manual Start'
, в котором говорится:
«Вы можете использовать этот метод, если вы не используете Compass из Terminal и/или Rails».
Затем он объясняет, как скопировать определения Susy Sass и @import "susy"
, после чего (как утверждается) «все готово».
Я пытаюсь использовать Susy как часть моей собственной системы сборки, которая использует команду командной строки 'sass' для компиляции моих таблиц стилей. Очевидно, что Susy Sass mixins
и includes
зависят от Compass, поэтому я извлек определения Compass Sass из дистрибутива Compass и поместил их туда, где Susy может получить к ним доступ. Затем я попытался скомпилировать свои таблицы стилей с помощью:
sass -I scss/compass scss/foobar.scss ${CSSDIR}/foobar.css
Когда я это делаю, Susy выдает предупреждение:
«Вам необходимо предоставить либо допустимый макет (количество столбцов), либо допустимую точку останова минимальной ширины медиа-запроса (длина)».
Копаясь в коде, выясняется, что проблема в том, что Susy вызывает «компактную» функцию, предоставляемую Compass. Фактический вызов выглядит примерно так:
compact(false,false,false,...)
который, я полагаю, должен оцениваться как:
false
Но «компактный» — это не функция Sass; это функция Compass, реализованная в Ruby как часть Compass. Если расширения Compass Ruby недоступны, этот вызов остается без изменений, поэтому передается миксин Susy:
compact(false,false,false,...)
что не 'false'
... и так все идет грушевидной формы. (Проблема возникает в строке 93 файла susy/_grid.scss).
Мне кажется, что использование Susy без Compass на самом деле невозможно. Какое мое лучшее решение этой проблемы? Я просто использую 'compass compile ...'
вместо 'sass'
для компиляции моей таблицы стилей? Или я могу каким-то другим образом предоставить функцию 'compact'
для 'sass'?