private void ReplaceRanges(object sender, MatchesWithReplacementEventArgs e) { Contract.Requires(e.Matches.All(m => m.Range.Start >= 0 && m.Range.End <= current.Document.Content.Length)); System.Diagnostics.Trace.WriteLine("ReplaceRanges: " + e.Matches); try { current.ReplaceRanges(e.Matches); } catch (Exception err) { System.Diagnostics.Trace.WriteLine(err); sidebar.InvalidateRanges(e.CheckId, e.Matches); } }