public int?GetDesiredIndentation(ITextSnapshotLine line) { var offset = 0; var prevLine = line.GetPreviousMatchingLine(l => !string.IsNullOrWhiteSpace(l.GetText())); if (prevLine.RequiresOffset("{")) { offset += _tabSize; } if (prevLine.RequiresOffset("(")) { offset += _tabSize / 2; } var prevOffset = GetPreviousOffset(prevLine); return(CalculateOffset(prevOffset, offset)); }