string ConvertToPangoMarkup (string str, bool replaceTabs = true)
{
if (str == null)
throw new ArgumentNullException ("str");
var result = new StringBuilder ();
foreach (char ch in str) {
switch (ch) {
case '&':
result.Append ("&");
break;
case '<':
result.Append ("<");
break;
case '>':
result.Append (">");
break;
case '\t':
if (replaceTabs) {
result.Append (new string (' ', options.TabSize));
} else {
result.Append ('\t');
}
break;
default:
result.Append (ch);
break;
}
}
return result.ToString ();
}