Если моя программа печатает на консоль, я выполняю перенос слов определенным образом в соответствии с Console.WindowWidth, вставляя символы новой строки - и это прекрасно работает.
Однако, если выходные данные программы перенаправляются в файл или другую программу, я бы хотел, чтобы она пропускала перенос слов. Как я могу определить, когда это так?
Console.WindowWidth возвращает одинаковое число в обоих случаях.
Бонус очков, если решение может отличить перенаправленный Console.Out от перенаправленного Console.Error.