static string StripHeader(string content) { var doc = new Mono.TextEditor.TextDocument(content); while (true) { string lineText = doc.GetLineText(1); if (lineText == null) { break; } if (lineText.StartsWith("//")) { doc.Remove(doc.GetLine(1).SegmentIncludingDelimiter); continue; } break; } return(doc.Text); }
static string StripHeader (string content) { var doc = new Mono.TextEditor.TextDocument (content); while (true) { string lineText = doc.GetLineText (1); if (lineText == null) break; if (lineText.StartsWith ("//")) { doc.Remove (doc.GetLine (1).SegmentIncludingDelimiter); continue; } break; } return doc.Text; }
internal static string FormatMessage (string msg) { StringBuilder sb = new StringBuilder (); bool wasWs = false; foreach (char ch in msg) { if (ch == ' ' || ch == '\t') { if (!wasWs) sb.Append (' '); wasWs = true; continue; } wasWs = false; sb.Append (ch); } var doc = new TextDocument (); doc.Text = sb.ToString (); for (int i = 1; i <= doc.LineCount; i++) { string text = doc.GetLineText (i).Trim (); int idx = text.IndexOf (':'); if (text.StartsWith ("*") && idx >= 0 && idx < text.Length - 1) { int offset = doc.GetLine (i).EndOffsetIncludingDelimiter; msg = text.Substring (idx + 1) + doc.GetTextAt (offset, doc.TextLength - offset); break; } } return msg.TrimStart (' ', '\t'); }