2

最初の Sinatra アプリを開始したばかりで、 Guard-Lessを起動して実行しようとしています。.less ファイルを変更しても CSS が更新されないというrb-readline の問題は既に修正しましたが、コンパイルされた CSS ファイルの出力を正しいディレクトリに取得することもできません。Guard-Less は、CSS が正しいディレクトリにコンパイルされることを保証するオプションを Guard に渡すことができると言っていますが:output、これはまだ一度も機能していません。CSS は、LESS ファイルと同じディレクトリにコンパイルされます。

foreman startローカルでアプリを実行しています。

ガードファイル:

# A sample Guardfile
# More info at https://github.com/guard/guard#readme

guard 'less', 
  :all_on_start => true,
  :output => 'public/assets/css' do
  watch(%r{^less/(.+\.less)$})
end

Gemfile:

source 'https://rubygems.org'

gem 'sinatra'
gem 'shotgun'
gem 'therubyracer'
gem 'rb-readline'
gem 'less', '~>1.2'
gem 'haml'
gem 'rb-fsevent', '~> 0.9'
gem 'guard-less'

プロファイル:

guard: bundle exec guard
web: bundle exec ruby bootstrap.rb -p $PORT

bootstrap.rb ファイル:

require 'rubygems'  
require 'sinatra/base'
require 'haml'

class MyApp < Sinatra::Base

  get '/' do  
    haml :index
  end

end

MyApp.run!

の出力はguard show、オプションが認識されていることを証明します。

$ guard show
+---------+--------+--------+-----------------------+
| Group   | Plugin | Option | Value                 |
+---------+--------+--------+-----------------------+
| Default | Less   | output | "public/assets/css"   |
+---------+--------+--------+-----------------------+

最悪の場合、出力 css と同じディレクトリに .less ファイルを残すことができますが、これは私を悩ませ、機能させたいと考えています。何か案は?

4

0 に答える 0