A Note on Terminals

Recently I’ve been trying to track down some sudden slowness in canto-curses. Things like scrolling and other routine operations seemed to take many times longer than they should.

Well. To make a long and ultimately fruitless debug session short, turns out that the problem wasn’t with canto-curses it was with the terminal I’ve been using. I’ve been distro-hopping again (sorry Arch, you broke my shit one too many goddam times) and lately I’ve been trying out LMDE with the Cinnamon desktop. I don’t feel as efficient as I do with a tiling WM like Qtile, but I’ve been mostly happy with it.

As part of the Cinnamon desktop, I’ve been routinely using gnome-terminal which, in turn, uses cairo to do its font rendering like a lot of the other DE terms. Apparently cairo doesn’t like having walls of text thrown at it as often as canto-curses does, and as such, scrolling the terminal (which pretty much means every character on the screen needs to be updated) chokes cairo and slows scrolling to a comparative crawl.

The solution? Well, I don’t have one in code yet. I’m wondering if I can workaround it or at least smooth it out. So, in the meantime, if canto-curses doesn’t scroll fast enough for you, use a non-cairo terminal like [u]xterm or [u]rxvt.

One thought on “A Note on Terminals

  1. Amazing how fast canto can be.
    I use as default roxterm and with that scrolling is also slaggish. But seeing how good it performs with urxvt.. Well.. I’m speechless ;)

Leave a Reply

Your email address will not be published. Required fields are marked *