Разное выравнивание текста в дзен2
Если у меня есть две строки "foo" и "bar", и я хочу, чтобы они отображались в dzen2 следующим образом:
[foo bar]
Возможно ли это сделать, не используя опцию -ta, а только команды позиционирования?
1 ответ
Да, но для этого требуется знание ширины 1 символа в этом шрифте и длины текста, который вы хотите выровнять. Чтобы всплывать что-то осталось, вам нужно использовать:
^pa(_LEFT)^p(-[n*k])sometext
Где n - количество символов в "sometext", а k - ширина пикселя одного символа.
Дзен приходит с программой, textwidth
для расчета размера немонокальных шрифтов в этом случае [n*k] будет заменено на это значение.
Я бы порекомендовал использовать нативную версию кода, если вы можете для эффективности, у меня есть версия для golang, но если это невозможно, вы можете просто запустить textwidth
команда.
SVN ревизия 255 из dzen, очевидно, содержит команду ^ba(width, align), см. Вики.