//private void MinifySelection() //{ // var view = ProjectHelpers.GetCurentTextView(); // if (view != null) // { // _dte.UndoContext.Open("Minify"); // string content = view.Selection.SelectedSpans[0].GetText(); // string extension = Path.GetExtension(_dte.ActiveDocument.FullName).ToLowerInvariant(); // string result = MinifyString(extension, content); // view.TextBuffer.Replace(view.Selection.SelectedSpans[0].Span, result); // _dte.UndoContext.Close(); // } //} private void MinifyFile(string extension) { var selectedPaths = GetSelectedFilePaths(_dte); foreach (string path in selectedPaths.Where(p => p.EndsWith(extension, StringComparison.OrdinalIgnoreCase))) { string minPath = GetMinFileName(path, extension); if (!path.EndsWith(".min" + extension) && !File.Exists(minPath) && _dte.Solution.FindProjectItem(path) != null) { if (extension.Equals(".js", StringComparison.OrdinalIgnoreCase)) { JavaScriptSaveListener.Minify(path, minPath, false); } else { CssSaveListener.Minify(path, minPath); } MarginBase.AddFileToProject(path, minPath); } } EnableSync(extension); }
//private void BuildTypeScript() //{ // foreach (Project project in _dte.Solution.Projects) // { // new TypeScriptMargin().CompileProjectFiles(project); // } //} private void Minify() { _dte.StatusBar.Text = "Web Essentials: Minifying files..."; var files = GetFiles(); foreach (string path in files) { string extension = Path.GetExtension(path); string minPath = MinifyFileMenu.GetMinFileName(path, extension); if (!path.EndsWith(".min" + extension, StringComparison.Ordinal) && File.Exists(minPath) && _dte.Solution.FindProjectItem(path) != null) { if (extension.Equals(".js", StringComparison.OrdinalIgnoreCase)) { JavaScriptSaveListener.Minify(path, minPath, false); } else { CssSaveListener.Minify(path, minPath); } } } _dte.StatusBar.Text = "Web Essentials: Files minified"; }