Beispiel #1
0
        private string SyntaxHighlightContent(string inputText)
        {
            int offset = 0;

            //Console.WriteLine("Highlighting input text:\r\n" + inputText);

            string ret = "";

            foreach (LexerMatchInfo match in highlightLexer.GetMatches(inputText))
            {
                for (int i = offset; i < match.startIndex; i++)
                {
                    ret += inputText[i];
                }

                ret += $"{match.htmlColor}";

                for (int i = match.startIndex; i < match.endIndex; i++)
                {
                    ret += inputText[i];
                }

                ret += CLOSE_COLOR_TAG;

                offset = match.endIndex;
            }

            for (int i = offset; i < inputText.Length; i++)
            {
                ret += inputText[i];
            }

            return(ret);
        }
Beispiel #2
0
        private string SyntaxHighlightContent(string inputText)
        {
            int offset = 0;

            sbHighlight.Length = 0;

            foreach (LexerMatchInfo match in highlightLexer.GetMatches(inputText))
            {
                for (int i = offset; i < match.startIndex; i++)
                {
                    sbHighlight.Append(inputText[i]);
                }

                sbHighlight.Append($"{match.htmlColor}");

                for (int i = match.startIndex; i < match.endIndex; i++)
                {
                    sbHighlight.Append(inputText[i]);
                }

                sbHighlight.Append(CLOSE_COLOR_TAG);

                offset = match.endIndex;
            }

            for (int i = offset; i < inputText.Length; i++)
            {
                sbHighlight.Append(inputText[i]);
            }

            inputText = sbHighlight.ToString();

            return(inputText);
        }