Сделать меньше-рельсы добавить номера строк в качестве комментария
Есть ли способ настроить less-rails
так что он показывает номер строки оригинальных источников в виде комментариев? И возможно ли включить сопоставление источников?
Рассмотрим следующий пример:
file1.less
body {
background-color: black;
}
file2.less
body {
padding: 20px;
}
application.css.less
@import "file1";
@import "file1";
Что я получаю:
body {
background-color: black;
}
body {
padding: 20px;
}
Что я хочу
/* file1.less line: 1 */
body {
background-color: black;
}
/* file2.less line: 1 */
body {
padding: 20px;
}
Или есть какой-нибудь другой способ выяснить, какое правило принадлежит какому файлу?
Обновить
При настройке моего приложения config.less
содержит только следующее:
{:paths=>
[#<Pathname:/home/yan-foto/.../vendor/less>,
#<Pathname:/home/yan-foto/.../node_modules/bootstrap-datetimepicker>,
#<Pathname:/home/yan-foto/.../node_modules/bootstrap-slider>],
:compress=>false}
1 ответ
Открой vendor/bundle/ruby/1.9.1/gems/less-2.6.0/lib/less/parser.rb
запишите и замените (около строки 54):
end
@parser = Less::JavaScript.exec { Less['Parser'].new(env) }
с:
end
env['dumpLineNumbers'] = 'comments';
@parser = Less::JavaScript.exec { Less['Parser'].new(env) }
На основании https://github.com/metaskills/less-rails вы должны попробовать:
MyProject::Application.configure do
config.less.line-numbers << "comments"
config.less.compress = true
end
Когда предыдущее работает как положено, вы также можете рассмотреть возможность использования исходных карт CSS:
MyProject::Application.configure do
config.less.source-map = true
config.less.source-map-map-inline = true
end
Я действительно не нахожу строку config.less.line-numbers << "комментарии" в документах
Фактически, мой ответ - только предложение, и я не смог проверить его. Вышесказанное предполагает, что вы можете установить некоторые параметры для компилятора Less.
Вы также можете найти эту опцию, запустивlessc
без каких-либо аргументов:
-------------------------- Deprecated ----------------
--line-numbers=TYPE Outputs filename and line numbers.
TYPE can be either 'comments', which will output
the debug info within comments, 'mediaquery'
that will output the information within a fake
media query which is compatible with the SASS
format, and 'all' which will do both.
--verbose Be verbose.
и я уверен, что у него есть синтаксическая ошибка из-за черты между строкой и числами
Могу поспорить, что вы правы в этом. Вы должны возможно использовать: config.less.dumpLineNumbers
а такжеconfig.less.sourceMap
Или в вашем config.less
::dumpLineNumbers>comments