Ntreev.Library.Commands.CommandTextWriter.WriteMultilineCore C# (CSharp) Method

WriteMultilineCore() private method

private WriteMultilineCore ( string s ) : void
s string
return void
        private void WriteMultilineCore(string s)
        {
            var indent = this.Indent;
            var emptyCount = this.TabString.Length * this.Indent;
            var width = Console.WindowWidth - emptyCount;

            var i = emptyCount;
            this.Indent = 0;

            var x = 0;
            foreach (var item in s)
            {
                if (x == 0)
                {
                    this.Write(string.Empty.PadRight(emptyCount));
                    x += emptyCount;
                    if (item == ' ')
                        continue;
                }
                this.Write(item);
                x += CharWidth.mk_wcwidth_cjk(item);
                if (x == this.width || Console.CursorLeft == 0)
                {
                    x = 0;
                }

            }
            this.WriteLine();
            this.Indent = indent;
        }