stianl
10/16/2012 - 1:53 PM

Since less doesn't include a --watch option, and the only options I found was with ruby watchr+shell scripting I modified this Powershell sc

Since less doesn't include a --watch option, and the only options I found was with ruby watchr+shell scripting I modified this Powershell script that continuously watch for file changes in a directory, and compiles less file

# watch a file changes in the current directory, 
# compiles bootstrap.less

$watcher = New-Object System.IO.FileSystemWatcher
$watcher.Path = get-location
$watcher.IncludeSubdirectories = $true
$watcher.EnableRaisingEvents = $false
$watcher.NotifyFilter = [System.IO.NotifyFilters]::LastWrite -bor [System.IO.NotifyFilters]::FileName

while($TRUE){
	$result = $watcher.WaitForChanged([System.IO.WatcherChangeTypes]::Changed -bor [System.IO.WatcherChangeTypes]::Renamed -bOr [System.IO.WatcherChangeTypes]::Created, 1000);
	if($result.TimedOut){
		continue;
	}
	write-host "Change in " + $result.Name
	lessc --compress bootstrap.less > ..\..\public\bootstrap\css\bootstrap.min.css
}