1つのマスターファイル(styles.less)にすべてインポートされるいくつかのLESSファイルがあります。現時点での私の問題は、子ファイルの1つに変更を加える場合、CSSにコンパイルするためにstyle.lessを保存する必要があるということです。
子ファイルの監視を少なくして、親ファイルのみをコンパイルする方法はありますか?
乾杯、広告
私の問題の解決策を見つけましたが、ほとんどの人にとっては素晴らしいことです。
私は Mac を使用しているため、less.app ( http://incident57.com/less/ ) をインストールしました。less.js を使用して、less をコンパイルします。数日前の時点で、彼らは新しい機能を追加しました:
新機能: 「後方 @import 解析」。別のファイル Y をインポートするファイル X があり、Y に変更を加えると、Y を保存するときに X が自動的に再コンパイルされるようになりました (自動コンパイルがオンの場合)。この機能は自動です。電源を入れたり接続したりする必要はありません。これが発生すると、コンパイラの結果に "triggered by: X" が表示されます。
実際、非常にうまく機能することがわかりました。これが誰かを助けることを願っています!
ウォッチドッグを使用してファイル変更イベントをリッスンし、 lesscを使用して CSS にコンパイルする、 lesswatchと呼ばれる bash スクリプトをハックしました(「後方 @import 解析」はサポートされていません) 。今日、これについて短いブログ記事を書きました。
ファイルの変更や @import を介して含まれるすべてのファイルを監視する less.js のフォークがあります (上記の受け入れられた回答のように):
less.js の作成者は古い Ruby バージョンの --watch オプションを望んでいないため、現時点ではこのフォークが最適なオプションになる可能性があります。node.js を介して、すべてのプラットフォームで実行できます。
このnodejsスクリプトを使用して、同じことを行うことができます。
node less-watch-compiler.js FOLDER_TO_WATCH FOLDER_TO_OUTPUT
https://github.com/jonycheung/Dead-Simple-LESS-Watch-Compiler
アンダースコアまたはピリオドで始まる名前のファイルの監視をスキップします。
Mac を使用している場合、現在 Code Kit http://incident57.com/less/の less.app を使用しています。
それは本当にうまくいきます。