Платы Тетриса Unicode дисплея в Терминале — или как динамично уменьшить высоту строки

Я использую черные квадраты \xe2\x97\xbc◼ и белые квадраты \xe2\x97\xbb◻ отобразить платы Тетриса в моей оболочке. К сожалению, существует вполне видимый межстрочный интервал между строками, и это просто не выглядит хорошим.

Я нахожусь на Mac (zsh) и существует установка межстрочного интервала. Когда я уменьшаю его до минимума (0.5), это выглядит довольно хорошим. Но к сожалению остальная часть терминала выглядит плохо затем ;)

Так идеально мне нужен способ динамично установить высоту строки / межстрочный интервал или что-то. Или другая творческая идея отобразить симпатичные платы Тетриса.

Любая справка приветствуется.

1
задан 08.02.2011, 20:15

2 ответа

Они, как почти гарантируют, будут поддерживаться в терминале, даже в режимах не-Unicode:

  • U+2588 полный блок
  • U+2593 темный оттенок
  • Оттенок носителя U+2592
  • Оттенок света U+2591

Кроме того, цвета ANSI.

2
ответ дан 12.12.2019, 08:02

Mac OS X, кажется, не имеет большую поддержку тянущих поле символов, с точки зрения отображения их с соответствующим интервалом. У Вас может быть лучшая удача с альтернативным терминалом как xterm или iTerm.app. Если Вы хотите придерживаться Terminal.app, одна вещь, которую Вы могли бы попробовать, производит пробел с переменными цветами фона, которые очень еще, по крайней мере, дадут Вам блоки без промежуточного пространства (если не).

Например,

TERM=nsterm
for j in {0..25}; do
    for i in {0..15}; do
        tput setb $i
        echo -n '   '
    done
done; echo

урожаи

Terminal screenshot

2
ответ дан 12.12.2019, 08:02

Терминал имеет средства управления для пространства по горизонтали и пространства по вертикали в панели Font, которую можно открыть путем нажатия на Кнопку изменения настроек:

Терминал> Предпочтения> Настройки> [Ваша установка]> текст> Шрифт> Изменение

Кроме того, при использовании "графических" символов VT100 Терминал представит их путем проведения линий "вручную", чтобы гарантировать, чтобы они соединились, вместо того, чтобы использовать символьные глифы. К сожалению, это не содержит поля односимвольной ячейки. Необходимо было бы потянуть поля с помощью четырех символов для рисования углов. например:

tput smacs; echo 'lk'; echo 'mj'; tput rmacs

Используя пробел с цветом фона, как предложил Miles лучший способ заполнить точно одну символьную ячейку.

3
ответ дан 12.12.2019, 08:02

Теги

Похожие вопросы