Итак, вы хотите, чтобы ваша программа командной строки выделялась. Что ж, вы попали в нужное место, при условии, что вы специально ищете, как это сделать в ruby, и используете ту же версию, что и я, потому что она менялась несколько раз.

Для начала напечатаем несколько дополнительных символов, символы Юникода. У всеми любимого консорциума есть тысячи персонажей на выбор, но на моей клавиатуре нет клавиши напуганная кошачья морда, так что мне делать.

Что ж, если вы используете более старую версию ruby, вам придется возиться с настройкой кодировки ruby ​​по умолчанию. Но я не использую старую версию, и оказалось, что в наши дни ruby ​​относительно хорош с Unicode, если вы просто пытаетесь их напечатать.

›| помещает "\u{1f640}"

=> 🙀

Сладко, теперь у нас есть доступ к большему количеству персонажей, чем нам когда-либо было нужно.

Какие мои любимые? Я притворяюсь, что слышу, как вы спрашиваете. Ну, я не хочу, чтобы кто-то из них чувствовал себя особенным, но я отвожу особое место в своей домашней папке для старых символов Box Drawing.

┗━┛

Вы можете распознать это как перевернутую таблицу, но это может быть нечто большее. Эти символы произошли от старого расширенного набора символов ASCII и предназначены для хорошо рисующих блоков; что звучит немного обыденно, но с ними можно делать много забавных вещей».

Итак, как еще мы можем усилить наши программы командной строки. Было бы неплохо, если бы мы могли печатать разные цвета, о, подождите, мы можем. Правильно, мы собираемся раскрасить этих плохих парней с помощью драгоценного камня colorize.

Этот изящный маленький драгоценный камень делает именно то, что вы ожидаете. Это позволяет вам установить цвета для * всех ваших строк.

›| помещает «Я черничный!».colorize(:blue)

=› Я Черника!

За исключением того, что это действительно сработает… Спасибо, медиум.

В любом случае, вы также можете выделить текст и добавить подчеркивание, что чертовски приятно.

Но могу ли я использовать юникод с раскраской? Вау, ты абсолютный сумасшедший, ты слабая пушка, не так ли. Что ж, думаю, сегодня твой счастливый день. Хотя поддерживаются не все символы Юникода (смайлики), некоторые «более простые» символы, такие как символы рисования блоков, поддерживаются.

>|u = “\u{2b51}”

›| помещает u.colorize (: зеленый)

=> ⭑

Wham bam alakazam, теперь у вас есть красивые струны. Так что идите и заполните мир немного более крутыми программами командной строки, мои чуваки!

Ссылки:

Таблица Unicode: http://www.unicode.org/charts/

Раскрасить: https://github.com/fazibear/colorize