private void UnifyLineEndingsInDocument(TextDocument textDocument, LineEndingsChanger.LineEndings lineEndings, ref int numberOfChanges, out int numberOfIndividualChanges, out int numberOfAllLineEndings) { var startPoint = textDocument.StartPoint.CreateEditPoint(); var endPoint = textDocument.EndPoint.CreateEditPoint(); var text = startPoint.GetText(endPoint.AbsoluteCharOffset); var changedText = LineEndingsChanger.ChangeLineEndings(text, lineEndings, ref numberOfChanges, out numberOfIndividualChanges, out numberOfAllLineEndings); startPoint.ReplaceText(text.Length, changedText, (int)vsEPReplaceTextOptions.vsEPReplaceTextKeepMarkers); }
private void UnifyLineEndingsInDocument(TextDocument textDocument, LineEndingsChanger.LineEndings lineEndings, ref int numberOfChanges, out int numberOfIndividualChanges, out int numberOfAllLineEndings) { var startPoint = textDocument.StartPoint.CreateEditPoint(); var endPoint = textDocument.EndPoint.CreateEditPoint(); var text = startPoint.GetText(endPoint.AbsoluteCharOffset); var originalLength = text.Length; if (this.OptionsPage.RemoveTrailingWhitespace) { text = TrailingWhitespaceRemover.RemoveTrailingWhitespace(text); } var changedText = LineEndingsChanger.ChangeLineEndings(text, lineEndings, ref numberOfChanges, out numberOfIndividualChanges, out numberOfAllLineEndings); if (this.OptionsPage.AddNewlineOnLastLine) { if (!changedText.EndsWith(Utilities.GetNewlineString(lineEndings))) { changedText += Utilities.GetNewlineString(lineEndings); } } startPoint.ReplaceText(originalLength, changedText, (int)vsEPReplaceTextOptions.vsEPReplaceTextKeepMarkers); }