public Suggestion Expand(string command, StringRange range) { if (range.Equals(Range)) { return(this); } var result = new StringBuilder(); if (range.Start < Range.Start) { result.Append(command.Substring(range.Start, Range.Start - range.Start)); } result.Append(Text); if (range.End > Range.End) { result.Append(command.Substring(Range.End, range.End - Range.End)); } return(new Suggestion(range, result.ToString(), Tooltip)); }