レンタルサーバー・自宅サーバー設定・構築のヒント
レンタルサーバー・自宅サーバー設定・構築のヒント - レンタルサーバー・自宅サーバーの設定・構築情報を公開しています。

Windows で Compass を使ってみた

2015年11月24日 2017年8月8日
Compass

今回は、Windows で Compass を使ってみました。

Compass とは、
Sass(サス、Syntactically Awesome Stylesheets)で記述された ファイルを コンパイルし、CSS へ変換する ruby ベースのツールです。
Sassは、当初、字下げを用いた インデント構文を用いていましたが、最新では、セミコロン、波括弧を用いたブロック書式を用いるようになりました。 それらを区別するために 拡張子を 前者は、.sass 、後者を .scss とするようになっています。
プログラム言語をご存知なら、前者は、文字位置に意味を持たせる Python に、 後者は、C/C++,Java,PHP などの {} で括る言語によく似ています。

CSS は、通常、微妙に異なる定義の繰り返しがあった場合、何度も同じような記述する必要があります。 そこで、 Sass では、先の微妙に異なる条件を記述することで、プログラミングのように記述することができます。 その Sass ファイルをコンパイル(解析)し、CSSファイルを出力してくれる非常に便利ツールです。

では、早速、インストールから簡単な使い方までを解説してみます。

Compass を Windowsへインストールするには

先にも書いたように Compass は、Ruby ベースのアプリケーションです。 まずは、Ruby のインストールが必要になります。


Ruby for Windows をダウンロード

http://rubyinstaller.org/downloads/ から 最新の Ruby ダウンロードします。

Ruby Download

最新(2015.11)は、 2.2.3 のようです。
64bit版は、Ruby 2.2.3 (x64) をダウンロードします。


Ruby for Windows をインストール

  1. 先にダウンロードした rubyinstaller-xxx.exe をダブルクリックなどで起動します。
    Ruby Install#1

    ここで インストーラで表示する言語を指定します。ここでは、日本語を選択し、OKをクリックします。


  2. 使用許諾では、”同意する” をチェックし、 “次へ” をクリックします。
    Ruby Install#2

  3. インストール先ディレクトリを指定し、 “インストール” をクリックします。
    Ruby Install#3

    ここで “Ruby の実行ファイルへ環境PATHを設定する” をチェックしておくと、後でコマンドラインからruby を起動する際、パスの設定を設定をしなくて良くなるので、 他のバージョンの ruby をインストールしていない限りは、“Ruby の実行ファイルへ環境PATHを設定する” もチェックしておきましょう。

    Ruby Install#4

    インストールを開始すると上記の画面が表示されます。
    正常にインストールが完了すれば、以下の画面が表示され、”完了”をクリックし終了です。

    Ruby Install#5

  4. Rubyが正しく起動できるか確認します。

    Dosプロンプトを起動し、以下のように Ruby のバージョンを出力を実行してみてください。
    Rubyのバージョンが正しく出力されればOKです。

    > ruby -vreturn
    ruby 2.2.3p173 (2015-08-18 revision 51636) [i386-mingw32]
    


Compass をインストール

  1. Rubyを最新版へ更新します。

    Dosプロンプトを起動し、以下のように Ruby のアップデートコマンドを実行します。

    > gem update --systemreturn
    

  2. Compassをインストールします。

    Dosプロンプトから以下のように入力し、Compassをインストールします。

    > gem install compassreturn
    

  3. Compass が正しく起動できるか確認します。

    Dosプロンプトから以下のように Compass のバージョン出力を実行してみてください。
    Compassのバージョンが正しく出力されればOKです。

    > compass -vreturn
    Compass 1.0.3 (Polaris)
    Copyright (c) 2008-2015 Chris Eppstein
    Released under the MIT License.
    Compass is charityware.
    Please make a tax deductable donation for a worthy cause: http://umdf.org/compass
    

Compass を 使ってみる

先の手順にて Compass のインストールが正しく行えたら、実際に Compassを使ってみましょう。


前準備

Rubyでの環境設定は、各ディレクトリの配下に config.rb を設置することで行います。
ここでは、D:\ruby\compass\test というディレクトリを作成し、そこにconfig.rbを設置してみます。

#  ディレクトリを作成します。
> mkdir D:\ruby\compass\testreturn

#  カレントディレクトリを移動します。
> cd D:\ruby\compass\testreturn

#  notepad を起動し、config.rbを編集します。
D:\ruby\compass\test> notepad .\config.rbreturn

config.rbには、以下のように記述、保存します。

http_path = "/"
css_dir = "css"
sass_dir = "scss"
images_dir = "img"
javascripts_dir = "js"

最後に このディレクトリを compassで使えるように 必要なディレクトリを作成します。

#  compassの新しいプロジェクトを作成します。
D:\ruby\compass\test> compass createreturn
...
デフォルトで以下のファイルが作成されます。 不要な場合は、削除してもOKです。
D:\ruby\compass\test> dir /b scss\return
ie.scss
print.scss
scss.scss

D:\ruby\compass\test> dir /b css\return
ie.css
print.css
scss.css

SCSS 形式をためしてみる

テスト用に以下のSCSS 形式のファイル( “scss\test.scss” )を作成します。

$blue: #0000ff;
$margin: 16px;
 
.class_a {
  padding: $margin / 4;
  margin: $margin / 4;
  border-color: $blue;
  p {
     padding: $margin;
  }
}
 
.class_b {
  padding: $margin / 2;
  margin: $margin / 2;
  border-color: $blue;
  p {
     padding: $margin / 2;
  }
}

上記のSCSS 形式のファイル( “scss\test.scss” )をコンパイルしてみます。

D:\ruby\compass\test> compass compile scss/test.scssreturn
    write css/test.css

コンパイル結果としての cssファイルは、”css\test.css” として出力されます。

/* line 6, ../scss/test.scss */
.class_a {
  padding: 4px;
  margin: 4px;
  border-color: #0000ff;
}
/* line 10, ../scss/test.scss */
.class_a p {
  padding: 16px;
}
 
/* line 15, ../scss/test.scss */
.class_b {
  padding: 8px;
  margin: 8px;
  border-color: #0000ff;
}
/* line 19, ../scss/test.scss */
.class_b p {
  padding: 8px;
}

こんな感じで出力されればOKです。


SASS 形式をためしてみる

テスト用に以下のSASS 形式のファイル( “scss\test2.sass” )を作成します。

$blue: #0000ff
$margin: 16px
 
.class_a
  padding: $margin/4
  margin: $margin/4
  border-color: $blue
  p
    padding: $margin
 
.class_b
  padding: $margin/2
  margin: $margin/2
  border-color: $blue
  p
    padding: $margin/2

上記のSASS 形式のファイル( “scss\test2.sass” )をコンパイルしてみます。

D:\ruby\compass\test> compass compile scss/test2.sassreturn
    write css/test2.css

コンパイル結果としての cssファイルは、”css\test.css” として出力されます。

/* line 4, ../scss/test2.sass */
.class_a {
  padding: 4px;
  margin: 4px;
  border-color: #0000ff;
}
/* line 8, ../scss/test2.sass */
.class_a p {
  padding: 16px;
}
 
/* line 11, ../scss/test2.sass */
.class_b {
  padding: 8px;
  margin: 8px;
  border-color: #0000ff;
}
/* line 15, ../scss/test2.sass */
.class_b p {
  padding: 8px;
}

こんな感じで出力されればOKです。
SCSSと同様の出力になっているはず?ですので、細かい点でも確認されてみると良いと思います。


(おまけ)トラブルシューティング

“Individual stylesheets must be in the sass directory.” と出力されたら

> compass compile scss/test2.sassreturn
Individual stylesheets must be in the sass directory.

Compass のコンパイルを実行した際、上記のようなエラーが出力された場合、 config.rb で指定したディレクトリ に sass ファイル or scss ファイルが設置されているか確認してみましょう。

...
sass_dir = "scss"
...

config.rb のように設定されていれば、カレントディレクトリ\scss 配下に sass ファイル or scss ファイルが設置されていなければなりません。


” `initialize’: No such file or directory…” と出力されたら

> compass compile scss/test2.sassreturn
    error sass/test.scss (C:/Ruby22/lib/ruby/2.2.0/tempfile.rb:136:in `initialize': No such file or directory @ rb_sysopen - D:/ruby/compass/test/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbb/.sass-cache/75fcaf1b4852ceb732871195e41567cc2a7d8997/C%058/Ruby22/lib/ruby/gems/2.2.0/gems/compass-core-1.0.3/stylesheets/compass/utilities/general/_hacks.scssc20151124-2232-1jfvp94)
Compilation failed in 1 files.

これは、(Windowsの場合)ほとんどが パスの長さが長すぎて ファイルの作成ができないということが原因でしょう。 さらには キャッシュパスが原因がほとんどです。この場合、config.rb へキャッシュパスをもっと短いパスを指定してあげるとうまくいくことがあります。

...
cache_path = "D:/temp"
...

デフォルトでは、カレントディレクトリ配下へキャッシュディレクトリおよびファイルが作成されます。 上記のconfig.rb のように設定すれば、キャッシュディレクトリのルートディレクトリは “D:/temp” となり、パスの長さを縮めることができ、 先のエラーが解消されることがあります。


いかがだったでしょうか?
Compass は、プログラミングをやったことがある方には、非常に便利なCSS作成ツールです。 Rubyを知らなくても Windowsで気軽に使えるようにもなっています。

個人的に、CSSファイルを直に記述していたころは、似たような設定を何度も記述する必要がある箇所が複数あると、漏れが出て、確認作業も大変になり時間的なロスは大変なものでした。

まだ Compass を利用されたことがない方には、ぜひ、おすすめツールです。


関連記事 :


コメントを投稿 :

お名前 *

メールアドレス *
( メールアドレスが公開されることはありません。)

サイトアドレス

コメント *

* 印の項目は、入力が必要な項目です。




最近投稿の記事

Genymotionとは、 公式サイト(http://www.genymotion.com/)には、以下のように記述があります。 G ...

以下のように Android x86 を仮想マシンへインストールし、色々と試してきました。 仮想マシンを使って Android ...

Android x86とは、 いわゆる Android のPC版OSです。 Android は、Googleによって開発されたスマー ...

Android x86とは、 いわゆる Android のPC版OSです。 Android は、Googleによって開発されたスマー ...

今回は、Mondo Rescue を使って バックアップとリストア(復元)をやってみたいと思います。 いまだに、さくらのVPSは、バッ ...


さくらのVPS 全プラン リニューアルです。(石狩(北海道)も選択可)


root権限ありで ¥685 / 月 ~ と非常にリーズナブルな CPU 1(core)の 512 プランから、 最高 CPU 10(core), メモリ 32(GB), SSD容量 800(GB) までとプランが充実。
ディスクは、SSDとHDDの選択が可能になった他、データセンターは人気の東京、石狩(北海道)となりました。

また、どのプランでも好きなOSが選べます
( CentOS, Fedora, Scientific Linux, FreeBSD, Ubutu, Debian )

管理人もおすすめのVPSです。
試用期間がありますから、一度、お試しを!!

詳しくは、http://vps.sakura.ad.jp/さくらのVPSのサイトへ へどうぞ!!

カテゴリ


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。
最近、スワップにも対応した Serverman@VPS は、かなりリーズナブルかもです。

  • メモリ1GB~2GBのEntryプラン :月額:490円
  • メモリ2MB~4GBのStandardプラン :月額:980円
  • メモリ4GB~8GBのProプラン :月額:1,980円

新規申し込みで1ヶ月間完全無料となるキャンペーンを実施中です。
Serverman@VPSの特徴は、安さとIPv6対応です。また、初期設定費0円もポイントです。

IPv6でちょっと遊んでみたい方には、おすすめかもしれませんね。最低利用期間もありませんから、気に入らないときは即解約もできます。

Serverman@VPSの詳細については、 http://dream.jp/vps/ Serverman@VPSのサイトへへどうぞ。



KVM採用 ConoHa VPSは、時間単位で借りれる便利なVPSです。


ConoHa VPS は、初期設定費0円最低利用期間無し時間単位で清算可能、 さらに、Web APIを使って自動化を図ることもできる便利なVPSです。

海外サーバー設置も可能で、ローカル接続にも対応と、かなり、機能豊富なサーバーです。

新規ユーザ登録で、クーポンもらえますから、まずは、お試しですね。

ConoHa VPSの詳細については、
http://www.conoha.jp/ へどうぞ。

KVM採用 お名前.com VPS(KVM) 2G プラン 初期設定費無料 キャンペーン 実施です。


メモリ2GBプラン CPU:3core、Disk:200GB
月額:1,153円から (初期設定:1,680円0円)

さくらのVPSがリニューアルされてもなんのその。
1GBメモリ / 2Core を ¥834 – の格安価格で提供中です!
間違いなくスペックからすると割安感ありです。
年間割引時の途中解約で返金がないのは、 ちょっと残念ですが、それでもこの割安感は魅力です。

まずは、お試しですね。

お名前.com VPS(KVM)の詳細については、
http://www.onamae-server.com/vps/ へどうぞ。(お試し期間が15日あります。)



  • はてなブックマークへ追加する
  • Facebookでシェアする
  • twitter でつぶやく
  • Google Plusでシェアする
  • Pocketでシェアする
ページトップへ
Time : 0.2055 [s]