Hacker News new | ask | show | jobs
by delan 3917 days ago
In my limited experience, rendering vector fonts is among the slowest parts of rendering text in a terminal. The difference between an xterm with a TrueType or OpenType font and an xterm with a PCF is noticeable.
1 comments

This can make a huge difference. It can easily be worth the performance benefit to find a well-designed bitmap font[1].

I also highly recommend using urxvt[2], which not only has very fast rendering and support for a lot of modern features, it has a few settings you enable that specifically address the too-much-scrolling speed issue. From urxvt(1):

    jumpScroll: boolean
        [...] specify that jump scrolling should be used. When receiving
        lots of lines, urxvt will only scroll once a whole screen height
        of lines has been read, resulting in fewer updates while still
        displaying every received line [...]

    skipScroll: boolean
        [...] specify that skip scrolling should be used. When receiving
        lots of lines, urxvt will only scroll once in a while (around 60
        times per second), resulting in far fewer updates. This can result
        in urxvt not ever displaying some of the lines it receives [...]
These options can completely fix the scrolling lag problem.

[1] e.g. http://terminus-font.sourceforge.net/

[2] http://software.schmorp.de/pkg/rxvt-unicode.html

In case anyone is really interested in seeing some actual numbers. On my system, using the default system Monospace 11 font:

ls -lR / in urxvt terminal window - 16 s

vs

ls -lR / in gnome-terminal window - 3m17s

ls was run several times to make sure all information was cached. Same font, same window size, etc.

I prefer the standard IBM VGA font for its readability:

https://en.wikipedia.org/wiki/File:Codepage-437.png

The standard X terminal fonts ("fixed") are pretty good for other sizes, although I've fixed mine with a slashed zero:

https://en.wikipedia.org/wiki/Fixed_(typeface)

I use urxvt with Terminus. It's great.

...did you know that it supports rendering italics? Not particularly well, mind, especially with bitmap fonts, but it's there:

https://goo.gl/photos/pJtpccV8GX9QFkhn6