using System; using System.Text; namespace RecrownedGTK.Tools.ConsoleInterface { internal class ConsoleUtilities { public static string WrapMessageToConsoleWidth(string message) { string[] words = message.Split(' '); StringBuilder stringBuilder = new StringBuilder(); int currentLineSize = 0; for (int i = 0; i < words.Length; i++) { if (currentLineSize + words[i].Length >= Console.BufferWidth - Console.CursorLeft -1) { currentLineSize = 0; stringBuilder.AppendLine(); } if (words[i].Contains("\n")) { currentLineSize = 0; } currentLineSize += words[i].Length + 1; if (words[i].Contains("\n")) { currentLineSize -= 2; } stringBuilder.Append(words[i]); if (i + 1 < words.Length) { stringBuilder.Append(' '); } } stringBuilder.AppendLine(); return stringBuilder.ToString(); } } }