public RuntimeTextEditorLanguageSettings(string languageName, TextEditorLanguageSettings settings, TextEditorLanguageSettings baseSettings) { if (languageName == null) { throw new ArgumentNullException(nameof(languageName)); } if (settings == null) { throw new ArgumentNullException(nameof(settings)); } LanguageName = languageName; var ff = settings.FontFamily ?? baseSettings.FontFamily; FontFamily = string.IsNullOrWhiteSpace(ff) ? DefaultFontFamily : new FontFamily(ff); FontSize = settings.FontSize ?? baseSettings.FontSize ?? 9; }
private string GetTabsBefore(HtmlElement element, bool keepFirstOnBaseLine) { TextEditorLanguageSettings settings = CodeRush.VSSettings.TextEditor[CodeRush.Language.Active]; if (settings == null) { return(string.Empty); } int startOffset = element.StartOffset; string firstSpaces = GetFirstSpaces(element); short tabSize = settings.TabSize; if (Options.OverrideTabSettings) { tabSize = Options.TabSize; } if (keepFirstOnBaseLine) { int num3 = (element.NameRange.End.Offset - startOffset) + 1; int count = num3 / tabSize; string tabs = GetTabs(count); while ((tabs.Length * tabSize) < num3) { tabs = tabs + " "; } firstSpaces = firstSpaces + tabs; } else { firstSpaces = firstSpaces + "\t"; } if (!settings.InsertTabs) { firstSpaces = CodeRush.StrUtil.UntabifyLine(firstSpaces, tabSize); } return(firstSpaces); }