2

在将 rails 从 3.2.3 更新到 3.2.14 并将 twitter-bootstrap-rails 从 2.2.0 更新到 2.2.6 之后,我收到了 Less unrecognized input 错误:

 Less::Error - Unrecognised input
  (in /Users/andrew/rails/teebox_network/app/assets/stylesheets/bootstrap_and_overrides.css.less):
  (gem) less-2.4.0/lib/less/parser.rb:74:in `block (2 levels) in parse'
  at finish (/Users/andrew/.rvm/gems/ruby-1.9.3-p448/gems/less-2.4.0/lib/less/js/lib/less/parser.js:475:in `'
  at tree.importVisitor.run (/Users/andrew/.rvm/gems/ruby-1.9.3-p448/gems/less-2.4.0/lib/less/js/lib/less/import-visitor.js:25:in `'
  at Parser.parser.parse (/Users/andrew/.rvm/gems/ruby-1.9.3-p448/gems/less-2.4.0/lib/less/js/lib/less/parser.js:484:in `'

违规行似乎是 bootstrap_and_overrides.css.less 中的前 2 行。

@import "twitter/bootstrap/bootstrap";
@import "twitter/bootstrap/responsive";

// Set the correct sprite paths
@iconSpritePath: asset-path("twitter/bootstrap/glyphicons-halflings");
@iconWhiteSpritePath: asset-path("twitter/bootstrap/glyphicons-halflings-white");

@fontAwesomeEotPath: asset-path("fontawesome-webfont.eot");
@fontAwesomeEotPath_iefix: asset-path("fontawesome-webfont.eot#iefix");
@fontAwesomeWoffPath: asset-path("fontawesome-webfont.woff");
@fontAwesomeTtfPath: asset-path("fontawesome-webfont.ttf");
@fontAwesomeSvgPath: asset-path("fontawesome-webfont.svg");

// Font Awesome
@import "fontawesome";

// Glyphicons
@import "twitter/bootstrap/sprites.less";

谷歌搜索建议降级到 2.2.0,但错误仍然存​​在。我正在运行 less-rails (2.4.2)、sass-rails (3.2.6)、therubyracer (0.12.0)。如果有人需要任何其他 gem 版本,请大声喊叫。

我是否必须更新关键 gem 才能解决此问题?

4

2 回答 2

4

问题在于 less-rails 而不是引导程序。似乎 less 语法发生了变化。很多人现在似乎都有这个问题:https ://github.com/metaskills/less-rails/issues/71有详细信息。

那里的建议对我有用,是确保你现在使用旧版本的 less-rails。

gem 'less-rails', '2.3.3'

在我的 Gemfile 中为我解决了这个问题。

于 2013-12-05T13:34:18.660 回答
0

我从来没有深入了解这个问题,但由于我不需要访问引导程序混合,我重新安装了 twitter-bootstrap-rails 但运行了静态样式表生成器,所以我不再使用 Less。

rails generate bootstrap:install static
于 2013-10-16T17:05:56.250 回答