Example #1
0
        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;
        }
Example #2
0
        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);
        }