Документация
Уроки Открыть IDE
На главную
Урок 5

Улучшенный вывод текста

Как управлять форматом и внешним видом текста в консоли

Переход на новую строку: '\n'

Вы уже знаете символ '\n' — он заставляет текст «перейти» на следующую строку:

Кот хочет кушать

Упрощённый вывод строк: console.writeln()

Функция console.writeln() — это удобная обёртка над console.write(), которая автоматически добавляет символ перевода строки '\n' в конец. Не нужно каждый раз вручную писать '\n' — writeln сделает это за вас.

Первая строка Вторая строка Третья строка

Как видите, результат точно такой же, как если бы вы написали:

Функция writeln() особенно полезна, когда:

  • Вы выводите много строк подряд — код становится чище и короче;
  • Вы пишете программу для начинающих — не нужно объяснять, что такое '\n' с первого урока;
  • Вы формируете отладочный вывод — каждая запись автоматически начинается с новой строки.

При этом функция write() остаётся полезной, когда нужно вывести несколько значений в одну строку. Выбирайте ту функцию, которая лучше подходит для конкретной задачи.

Экранирование символов: \"

Если вы хотите вставить кавычки внутрь строки, их нужно «экранировать» обратным слешем \:

Игра "Minecraft" была создана в 2009 году

Без обратного слеша компилятор подумал бы, что строка заканчивается на первых кавычках — и выдал бы ошибку. Символ \ «обманывает» компилятор: он говорит: «эта кавычка — часть текста, не конец строки».

Табуляция: '\t'

Символ '\t' вставляет горизонтальный отступ, как если бы вы нажали клавишу Tab на клавиатуре:

До Tab После Tab

Слово «табуляция» происходит от латинского tabula — «доска, таблица». Именно так раньше выравнивали колонки в таблицах. Сегодня '\t' — удобный способ добавить отступ без кучи пробелов.

Цветной текст в консоли

Idyllium поддерживает ANSI-последовательности для цветного вывода. Чтобы изменить цвет текста, используйте управляющую последовательность вида "\e[31m":

Красный текст Зелёный текст Жёлтый текст Синий текст Малиновый текст Стандартный текст

Цвета задаются кодами от "\e[30m" до "\e[37m" (тёмные) и от "\e[90m" до "\e[97m" (светлые). А последовательность "\e[0m" сбрасывает все эффекты — и текст возвращается к обычному виду.

Цвет сохраняется до конца вывода

Один раз задав цвет, вы не обязаны его указывать каждый раз — он будет применяться ко всем последующим строкам:

Текст стал зелёным Текст всё ещё зелёный Пока цвет не поменять, он будет зелёным А теперь текст стал красным И он останется красным Пока не поменять на другой

Это поведение — не баг, а фича: оно позволяет легко выделять целые блоки текста одним цветом, не дублируя команды.

Сброс цвета и эффектов

Чтобы вернуть текст к стандартному виду, используйте команду "\e[0m":

Цвет изменён на циановый Цвет сброшен до обычного

Это особенно важно, если вы пишете большую программу: оставшийся цвет может «заразить» весь последующий вывод и запутать пользователя.