私はsassとcompassを使用しています。与えられたパターンに一致する画像のCSSクラスを作成しようとしています。コンパススプライト機能(http://compass-style.org/help/tutorials/spriting/)を使用することは可能かもしれませんが(それは新しいファイルが生成されるように)画像であるとして、それは私の場合には不便であるsass/compassでファイルのリストを取得する
.class1 { background-image: url(class1.png); }
.class2 { background-image: url(class2.png); }
: 意図/結果のCSSは、主に次のようになりますすでにスプライトシートそのもの。
ので
@each $clazz in listFiles("images/*") {
.#{$clazz} {
background-image: url('#{$clazz}.png');
}
}
ような何かを行うことができることは素晴らしいことです。 多かれ少なかれ簡単な方法がありますか?
それは私のための完全なファイルパスのリストを作成します(すなわちimages/filename1.png)。ルビー初心者のための基本名を取得する簡単な方法はありますか? – morewry
@morewryもちろん、Rubyの[File.basename](http://www.ruby-doc.org/core/File.html#method-c-basename)メソッドを使用してください: 'Sass :: Script :: String.new (File.basename(x)) 'を実行します。 – hopper
また、 'Sass :: Script :: String.new(File.basename(x、"。* "))'を使って拡張子のないファイル名だけを取得することもできます。 –