Example #1
0
        public static string NormalizeIndentation(string s)
        {
            var first = FirstNonEmptyLineOf(s);

            if (first.Length == 0)
            {
                return(s);
            }
            string indent = reg.Match(first).Value;

            if (indent.Length == 0)
            {
                return(s);
            }

            var result = new StringBuilder();

            foreach (string line in TextReaderEnumerator.lines(new StringReader(s)))
            {
                if (line.StartsWith(indent))
                {
                    result.AppendLine(line.Substring(RuntimeServices.NormalizeStringIndex(line, indent.Length)));
                }
                else
                {
                    result.AppendLine(line);
                }
            }
            return(result.ToString().Trim());
        }
Example #2
0
 public static string FirstNonEmptyLineOf(string s)
 {
     foreach (var line in TextReaderEnumerator.lines(new StringReader(s)))
     {
         if (line.Trim().Length > 0)
         {
             return(line);
         }
     }
     return(string.Empty);
 }