LINUX.ORG.RU

Letter spacings in xterm

 , ,


0

2

Здравствуй, ЛОР!

Бей меня, насмехайся надо мной, но скажи мне, что мне вбить в ~/.Xresources, чтобы X шрифт в xterm не разлетался по ширине?

Поисковик пытаюсь терзать, но то ли сегодня магнитная бурька, то ли у меня приступ дебилизма - неасиливаю...

Прошу прощения, что беспокою элементарщиной.

И наброшу: urxvt тормозит)

Спасибо за внимание.

★★★★★

Последнее исправление: piyavking (всего исправлений: 2)
Ответ на: комментарий от piyavking

Я ничего не делал, внес в .Xresources базовые настройки, все отображается корректно:

XTerm*faceName: Hasklig Nerd Font
XTerm*faceSize: 18
XTerm.VT100.background:         #1f1f1f
XTerm.VT100.foreground:         #e7dfdf
XTerm.VT100.color0:             #1f1f1f
XTerm.VT100.color1:             #982525
XTerm.VT100.color2:             #126008
XTerm.VT100.color3:             #a96c0b
XTerm.VT100.color4:             #315a93
XTerm.VT100.color5:             #872a50
XTerm.VT100.color6:             #26605d
XTerm.VT100.color7:             #909090
XTerm.VT100.colorBD:            #ffffff
XTerm.VT100.colorBDMode:        true
XTerm.VT100.colorUL:            #457ecd
XTerm.VT100.colorULMode:        true
XTerm.VT100.cursorColor:        #f0544c
dmitry237 ★★★★★
()

Как вариант поменять xterm на urxvt, в нем есть letterSpace, у меня примерно так:

Xft.dpi:        96
Xft.antialias:  true
Xft.rgba:       rgb
Xft.hinting:    true
Xft.hintstyle:  hintslight
Xft.autohint:   false
Xft.lcdfilter:  lcddefault
URxvt.scrollBar: false
URxvt.scrollBar_right: false
URxvt.scrollBar_floating: false
URxvt.scrollstyle: rxvt
URxvt*saveLines: 16384
URxvt*geometry: 120x39
!URxvt.font:     xft:DejaVu Sans Mon:pixelsize=14
URxvt*font:     xft:mono:medium:size=11
URxvt.letterSpace: -1
masa ★★
()
XTerm.VT100.faceName: Iosevka Term:charwidth=18

charwidth придётся подбирать под каждый размер, но оно должно одинаково работать для всех шрифтов с одинаковыми метриками. Для подбора проще всего держать рядом эмулятор терминала с заведомо корректным рендерингом, например, что-нибудь на VTE. Если не ошибаюсь, оно в пикселях, поэтому для DPI 96 может быть смысл начать с меньших значений.

anonymous
()

Поставить другой шрифт, поуже.

Но лучше просто юзать другой эмулятор терминала. Зачем кому-то в 2025 году может понадобиться тормозной и тяжёлый xterm?

И Наброшу: urxvt тормозит)

Если уж urxvt тормозит, то xterm тем более будет тормозить.

CrX ★★★★★
()
Ответ на: комментарий от anonymous

аргументы от бога. дайте посмотреть ваши цифры.

У меня сейчас нет xterm, ставить ради бенчмарков лень, но по сравнению с urxvt и даже foot он тормозной. Более того, он даже более тормозной, чем st, да и вообще самый медленный из тех, что я сравнивал. Наверное разве что всякие монстры из состава DE медленнее, но их я не пробовал. Можешь попробовать сам, например выводом нескольких десятков мегабайт, как угодно — практически любой другой терминал шустрее.

Ну а по потребляемой памяти, равно как и по строкам кода например, мои цифры вообще вряд ли могут чем-то отличаться от любых других. Устанавливаем, запускаем, сравниваем. Качаем исходники, сравниваем.

P.S. И это были не аргументы, а утверждения. Ну может тезисы, но точно не аргументы ;)

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 2)
Ответ на: комментарий от piyavking

у меня наоборот - urxvt буквально букву за буквой «выкладывает»

Это странно… А если его запустить из другого терминала — он в тот другой не ругается ничем случайно?

CrX ★★★★★
()

Хм, я потестил xterm и urxvt с помощью https://github.com/alacritty/vtebench/

Результаты интересные - https://x0.at/HUc-.png

urxvt быстрее во всем, кроме рендеринга unicode, тут он проиграл в 25 раз, так что да, тормозит :)

Конфиг такой

Xft.dpi:        96
Xft.antialias:  true
Xft.rgba:       rgb
Xft.hinting:    true
Xft.hintstyle:  hintslight
Xft.autohint:   false
Xft.lcdfilter:  lcddefault

XTerm*faceName: mono
XTerm*faceSize: 11
XTerm*geometry: 120x39
Xterm*saveLines: 16384

URxvt.scrollBar: false
URxvt.scrollBar_right: false
URxvt.scrollBar_floating: false
URxvt.scrollstyle: rxvt
URxvt*saveLines: 16384
URxvt*geometry: 120x39
URxvt.letterSpace: -1
URxvt*font:     xft:mono:medium:size=11
masa ★★
()
Ответ на: комментарий от CrX

пишет, что «urxvt: perl extension 'font-size' not found in perl library search path»

выкинул font-size из ~/.Xresources - теперь ничего не пишет.

Но запустил в нём mc - и это просто слёзы, как он интерфейс отрисовал, две панели одна за другой вжжжь...вжжь... в отличие от мгновенного отклика xterm.

Как мне победить шрифт и успокоиться? Я хочу именно этот шрифт, в конце концов, именно в хтерм!...

piyavking ★★★★★
() автор топика
Последнее исправление: piyavking (всего исправлений: 2)
Ответ на: комментарий от piyavking

Для верности задай другой шрифт, чтобы точно понимать, что он применяется в принципе. Если нет, то попробуй заменить VT100 на *. Ну и на всякий случай напомню, что надо обновлять ресурсы через xrdb, перезапустить xterm недостаточно.

anonymous
()
12 мая 2025 г.

Зачем ты некропостишь? Впрочем, поржал с лоровских икспердов, которые xterm не пользуются, как его настраивать не знают, но мнение имеют. В каком месте он «жирный» и «тормозной», клоуны? Это лучший эмулятор по latency, быстрее просто нет. По жиру лучше только st, в котором просто нихера нет, и который косячит в самых простых сценариях, например ломает mc при ресайзе. Так что иногда лучше молчать, особенно это касается фанатов кривой тормозной поделки urxvt, которые всегда лезут со своим веским.

anonymous
()
Ответ на: комментарий от anonymous

Затем, что я некропостер, видимо. Да, st стремителен, и я его осваиваю. MC он у меня не ломает, но есть кое-что, что надо подрехтовать - в частности СНОВА пресловутое междустрочное расстояние...

piyavking ★★★★★
() автор топика
Ответ на: комментарий от piyavking

… надо подрехтовать - в частности СНОВА пресловутое междустрочное расстояние…

chscale менял?

https://git.suckless.org/st/file/config.def.h.html#l30

habamax ★★★
()
Последнее исправление: habamax (всего исправлений: 2)
Ответ на: комментарий от CrX

А либы, на которых оно основано, Пушкин считать будет?

Какие либы, клоун? Тебе может иксы и фритайп с харбузом посчитать? Покажи уже обезжиренный эмулятор, не томи.

anonymous
()
Ответ на: комментарий от anonymous

Попробую, спасибо.

принципиально не поддерживает табы и некоторые ещё вещи

Так это именно то, что я хочу, собственно, от терминала. Я табы и некоторые ещё вещи даже в браузере прибиваю)

Поставил, погонял. Мило. Но st быстрее запускается, буду продолжать его умучивать. Спасибо!

piyavking ★★★★★
() автор топика
Последнее исправление: piyavking (всего исправлений: 1)
Ответ на: комментарий от piyavking

Так это именно то, что я хочу, собственно, от терминала. Я табы и некоторые ещё вещи даже в браузере прибиваю)

Ну тогда тебе повезло. Мне лично табы не мешают, но не нравится, что они везде по-разному сделаны, поэтому когда-то освоил tmux, и теперь везде всё одинаково. Не нравится позиция авторов Alacritty по отношению к мигающему тексту, но в остальном у нас схожие взгляды, и мой конфиг получился очень компактным, настолько там удачные умолчания.

anonymous
()
Ответ на: комментарий от piyavking

Долго понимал логику «переконфигурить, потом перекомпилить», и понял. Успех. Спасибо!

Ага, их «suckless», подразумевает только изменения кода для конфигурации, да. Ну а так как написано на С, то…

Есть патч, который делает возможным использовать .Xresources https://st.suckless.org/patches/xresources/

Я, правда, ни один из патчей не использую, так что хз что там.

habamax ★★★
()
Последнее исправление: habamax (всего исправлений: 1)
Ответ на: комментарий от piyavking

Слушай, а у тебя функциональные клавиши, Ins и ещё что-то там справа сразу заработали, или над этим надо пошаманить?

Функциональные, ins у меня точно работают из коробки – про что-то еще не знаю :)

habamax ★★★
()