private static IEnumerable <string> CompileImpl(ILessEngine engine, string inputFilePath, string outputFilePath) { engine = new FixImportPathDecorator(engine); var currentDir = Directory.GetCurrentDirectory(); try { Console.WriteLine("{0} -> {1}", inputFilePath, outputFilePath); var directoryPath = Path.GetDirectoryName(inputFilePath); var fileReader = new dotless.Core.Input.FileReader(); var source = fileReader.GetFileContents(inputFilePath); Directory.SetCurrentDirectory(directoryPath); var css = engine.TransformToCss(source, inputFilePath); File.WriteAllText(outputFilePath, css); if (!engine.LastTransformationSuccessful) { returnCode = -5; Console.WriteLine(); Console.WriteLine("[Done - Failed]"); } else { Console.WriteLine("[Done]"); } var files = new List <string>(); files.Add(inputFilePath); foreach (var file in engine.GetImports()) { files.Add(Path.Combine(directoryPath, Path.GetExtension(file))); } engine.ResetImports(); return(files); } catch (IOException ex) { Console.WriteLine("[FAILED]"); Console.WriteLine("Compilation failed: {0}", ex.Message); Console.WriteLine(ex.StackTrace); returnCode = -2; return(null); } catch (Exception ex) { Console.WriteLine("[FAILED]"); Console.WriteLine("Compilation failed: {0}", ex.Message); Console.WriteLine(ex.StackTrace); returnCode = -3; return(null); } finally { Directory.SetCurrentDirectory(currentDir); } }
private static Parser GetEmbeddedParser(bool isUrlRewritingDisabled, bool importAllFilesAsLess, bool importCssInline) { var fileReader = new dotless.Core.Input.FileReader(new EmbeddedPathResolver()); return(new Parser { Importer = new Importer(fileReader) { IsUrlRewritingDisabled = isUrlRewritingDisabled, ImportAllFilesAsLess = importAllFilesAsLess, InlineCssFiles = importCssInline } }); }
private static Parser GetEmbeddedParser(bool isUrlRewritingDisabled, bool importAllFilesAsLess, bool importCssInline) { var fileReader = new dotless.Core.Input.FileReader(new EmbeddedPathResolver()); return new Parser { Importer = new Importer(fileReader) { IsUrlRewritingDisabled = isUrlRewritingDisabled, ImportAllFilesAsLess = importAllFilesAsLess, InlineCssFiles = importCssInline } }; }
/// <summary> /// Attempts to compile a less file into css. /// </summary> /// <param name="engine">The dotless engine.</param> /// <param name="inputFilePath">The input less file.</param> /// <param name="outputFilePath">The output css file.</param> /// <returns>The return code. 0 is success; otherwise, value is failure.</returns> private int CompileImpl(ILessEngine engine, string inputFilePath, string outputFilePath) { engine = new FixImportPathDecorator(engine); var currentDir = Directory.GetCurrentDirectory(); try { Log.LogMessage("Compiling less from \"{0}\" to \"{1}\".", inputFilePath, outputFilePath); var directoryPath = Path.GetDirectoryName(inputFilePath); var fileReader = new dotless.Core.Input.FileReader(); var source = fileReader.GetFileContents(inputFilePath); Directory.SetCurrentDirectory(directoryPath); var css = engine.TransformToCss(source, inputFilePath); File.WriteAllText(outputFilePath, css); if (!engine.LastTransformationSuccessful) { Log.LogError("Failed: Compiling less from \"{0}\" to \"{1}\".", inputFilePath, outputFilePath); return(-5); } else { Log.LogMessage("Success: Compiled less from \"{0}\" to \"{1}\".", inputFilePath, outputFilePath); } var files = new List <string>(); files.Add(inputFilePath); foreach (var file in engine.GetImports()) { files.Add(Path.Combine(directoryPath, Path.ChangeExtension(file, "less"))); } engine.ResetImports(); return(0); } catch (Exception ex) { Log.LogError("Failed: Compiling less from \"{0}\" to \"{1}\".", inputFilePath, outputFilePath); Log.LogError("Compilation failed: {0}", ex.ToString()); return(-3); } finally { Directory.SetCurrentDirectory(currentDir); } }
private static IEnumerable <string> CompileImpl(ILessEngine engine, string inputFilePath, string outputFilePath) { var currentDir = Directory.GetCurrentDirectory(); try { Console.WriteLine("{0} -> {1}", inputFilePath, outputFilePath); var directoryPath = Path.GetDirectoryName(inputFilePath); var source = new dotless.Core.Input.FileReader().GetFileContents(inputFilePath); Directory.SetCurrentDirectory(directoryPath); var css = engine.TransformToCss(source, inputFilePath); File.WriteAllText(outputFilePath, css); Console.WriteLine("[Done]"); var files = new List <string>(); files.Add(inputFilePath); foreach (var file in engine.GetImports()) { files.Add(Path.Combine(directoryPath, Path.ChangeExtension(file, "less"))); } engine.ResetImports(); return(files); } catch (IOException) { throw; } catch (Exception ex) { Console.WriteLine("[FAILED]"); Console.WriteLine("Compilation failed: {0}", ex.Message); Console.WriteLine(ex.StackTrace); return(null); } finally { Directory.SetCurrentDirectory(currentDir); } }
private static IEnumerable<string> CompileImpl(ILessEngine engine, string inputFilePath, string outputFilePath) { engine = new FixImportPathDecorator(engine); try { Console.WriteLine("{0} -> {1}", inputFilePath, outputFilePath); var directoryPath = Path.GetDirectoryName(inputFilePath); var fileReader = new dotless.Core.Input.FileReader(); var source = fileReader.GetFileContents(inputFilePath); engine.CurrentDirectory = directoryPath; var watch = new Stopwatch(); watch.Start(); var css = engine.TransformToCss(source, inputFilePath); watch.Stop(); File.WriteAllText(outputFilePath, css); if (!engine.LastTransformationSuccessful) { returnCode = -5; Console.WriteLine(); Console.WriteLine("[Done - Failed]"); } else { Console.WriteLine("[Done in {0}]", watch.Elapsed); } var files = new List<string>(); files.Add(inputFilePath); foreach (var file in engine.GetImports()) files.Add(Path.Combine(directoryPath, Path.GetExtension(file))); engine.ResetImports(); return files; } catch (IOException ex) { Console.WriteLine("[FAILED]"); Console.WriteLine("Compilation failed: {0}", ex.Message); Console.WriteLine(ex.StackTrace); returnCode = -2; return null; } catch (Exception ex) { Console.WriteLine("[FAILED]"); Console.WriteLine("Compilation failed: {0}", ex.Message); Console.WriteLine(ex.StackTrace); returnCode = -3; return null; } }
private static IEnumerable<string> CompileImpl(ILessEngine engine, string inputFilePath, string outputFilePath) { engine = new FixImportPathDecorator(engine); var currentDir = Directory.GetCurrentDirectory(); try { Console.WriteLine("{0} -> {1}", inputFilePath, outputFilePath); var directoryPath = Path.GetDirectoryName(inputFilePath); var source = new dotless.Core.Input.FileReader().GetFileContents(inputFilePath); Directory.SetCurrentDirectory(directoryPath); var css = engine.TransformToCss(source, inputFilePath); File.WriteAllText(outputFilePath, css); Console.WriteLine("[Done]"); var files = new List<string>(); files.Add(inputFilePath); foreach (var file in engine.GetImports()) files.Add(Path.Combine(directoryPath, Path.ChangeExtension(file, "less"))); engine.ResetImports(); return files; } catch (IOException) { throw; } catch (Exception ex) { Console.WriteLine("[FAILED]"); Console.WriteLine("Compilation failed: {0}", ex.Message); Console.WriteLine(ex.StackTrace); return null; } finally { Directory.SetCurrentDirectory(currentDir); } }
private static IEnumerable<string> CompileImpl(ILessEngine engine, string inputFilePath, string outputFilePath) { engine = new FixImportPathDecorator(engine); var currentDir = Directory.GetCurrentDirectory(); try { Console.WriteLine("{0} -> {1}", inputFilePath, outputFilePath); var directoryPath = Path.GetDirectoryName(inputFilePath); var fileReader = new dotless.Core.Input.FileReader(); var source = fileReader.GetFileContents(inputFilePath); Directory.SetCurrentDirectory(directoryPath); var css = engine.TransformToCss(source, inputFilePath); File.WriteAllText(outputFilePath, css); if (!engine.LastTransformationSuccessful) { returnCode = -5; Console.WriteLine(); Console.WriteLine("[Done - Failed]"); } else { Console.WriteLine("[Done]"); } var files = new List<string>(); files.Add(inputFilePath); foreach (var file in engine.GetImports()) files.Add(Path.Combine(directoryPath, Path.ChangeExtension(file, "less"))); engine.ResetImports(); return files; } <<<<<<< HEAD //catch (IOException) //{ // throw; //} //catch (Exception ex) //{ // Console.WriteLine("[FAILED]"); // Console.WriteLine("Compilation failed: {0}", ex.Message); // Console.WriteLine(ex.StackTrace); // return null; //} ======= catch (IOException) { returnCode = -2; throw; } catch (Exception ex) { Console.WriteLine("[FAILED]"); Console.WriteLine("Compilation failed: {0}", ex.Message); Console.WriteLine(ex.StackTrace); returnCode = -3; return null; } >>>>>>> 57986d4e1b45102058e055468254b85e34a41e98 finally { Directory.SetCurrentDirectory(currentDir); } }
private static IEnumerable<string> CompileImpl(ILessEngine engine, string inputFilePath, string outputFilePath, StringBuilder sb, bool silent) { try { if (!silent) { sb.AppendFormat("{0} -> {1}\n", inputFilePath, outputFilePath); } var directoryPath = Path.GetDirectoryName(inputFilePath); var source = new dotless.Core.Input.FileReader(directoryPath).GetFileContents(inputFilePath); var css = engine.TransformToCss(source, inputFilePath); File.WriteAllText(outputFilePath, css); if (!silent) { sb.AppendLine("[Done]"); } var files = new List<string>(); files.Add(inputFilePath); foreach (var file in engine.GetImports()) { files.Add(Path.Combine(directoryPath, Path.ChangeExtension(file, "less"))); } engine.ResetImports(); return files; } catch (IOException) { throw; } catch (Exception ex) { if (silent) { // Need to know the file now sb.AppendFormat("{0} -> {1}\n", inputFilePath, outputFilePath); } sb.AppendLine("[FAILED]"); sb.AppendFormat("Compilation failed: {0}\n", ex.Message); sb.AppendLine(ex.StackTrace); return null; } }
/// <summary> /// Attempts to compile a less file into css. /// </summary> /// <param name="engine">The dotless engine.</param> /// <param name="inputFilePath">The input less file.</param> /// <param name="outputFilePath">The output css file.</param> /// <returns>The return code. 0 is success; otherwise, value is failure.</returns> private int CompileImpl(ILessEngine engine, string inputFilePath, string outputFilePath) { engine = new FixImportPathDecorator(engine); var currentDir = Directory.GetCurrentDirectory(); try { Log.LogMessage("Compiling less from \"{0}\" to \"{1}\".", inputFilePath, outputFilePath); var directoryPath = Path.GetDirectoryName(inputFilePath); var fileReader = new dotless.Core.Input.FileReader(); var source = fileReader.GetFileContents(inputFilePath); Directory.SetCurrentDirectory(directoryPath); var css = engine.TransformToCss(source, inputFilePath); File.WriteAllText(outputFilePath, css); if (!engine.LastTransformationSuccessful) { Log.LogError("Failed: Compiling less from \"{0}\" to \"{1}\".", inputFilePath, outputFilePath); return -5; } else { Log.LogMessage("Success: Compiled less from \"{0}\" to \"{1}\".", inputFilePath, outputFilePath); } var files = new List<string>(); files.Add(inputFilePath); foreach (var file in engine.GetImports()) files.Add(Path.Combine(directoryPath, Path.ChangeExtension(file, "less"))); engine.ResetImports(); return 0; } catch (Exception ex) { Log.LogError("Failed: Compiling less from \"{0}\" to \"{1}\".", inputFilePath, outputFilePath); Log.LogError("Compilation failed: {0}", ex.ToString()); return -3; } finally { Directory.SetCurrentDirectory(currentDir); } }