多くの場合、私のプロジェクトでは、ファイル システムの奥深くに SCSS+Compass ディレクトリがあります。
たとえば、私のプロジェクトはすべて下~/Web/com.example.subdomain
にあり、時にはスタイル ディレクトリが~/Web/com.example.subdomain/trunk/docroot/_assets/locked/styles
.
CD コマンド全体を 1 日に何度も入力するのは、明らかに少し反復的です。プロジェクトごとにエイリアスを作成することもできますが (例: alias cd-com.marketo.subdomain-scss="..."
)、25 以上のすべてのプロジェクトに対してエイリアスを追加して維持する必要があります。
では、効果的に入力できる関数を作成するにはどうすればよいでしょうか。
$ cd ~/Web/com.example
$ cd-compass
ここから、cd-compass は次のようになると思います。
- または
find .
を探す何らかの形式のコマンドを使用するconfig.rb
.sass-cache/
- 両方が同じディレクトリに存在する場合は、それがコンパス ディレクトリであることがわかります...
.sass-cache/
が存在せず、存在する場合はconfig.rb
、実行されますcompass stats /the/dir
Nothing to compile. If you're trying to start
コンパス ディレクトリでない場合、出力は...で始まります。- コンパス ディレクトリの場合は、統計情報を吐き出し、
.sass-cache/
ディレクトリを作成します。
- ディレクトリが正常に検出されると、そのディレクトリに CD が挿入されます。
ボーナスポイント:
コンパス コマンドを含める機能を追加して、入力
cd-compass compile --force
が上記のフローに従い (ディレクトリへの cd を含む)、実行するようにします。compass compile --force
おそらくこの場合、コマンドは
compass-do
orfcompass
orlcompass
(f = find; l = locate) になります。
スーパーボーナスポイント:
複数の Compass インストールが見つかった場合は、オプションの番号付きリストを表示します。数字の 1 つを入力して Enter キーを押すと、そのオプションが続行されます。
これにより、基本的に次のように入力するだけで済みます。
$ cd-compass
1. /home/user/Web/git/com.example/trunk/docroot/admin/styles/compass
2. /home/user/Web/git/com.example/trunk/docroot/styles/compass
3. /home/user/Web/svn/com.example.sub/trunk/docroot/_assets/locked/styles
Which one? > __