Thoughts on PDF viewers


I haven’t been paying much attention to the pdf viewer I use until recently, when I have to trawl through a number of lecture notes to study. I used Evince on my desktop, which was all right there, but I converted to epdfview on my laptop since I found Evince to be a burdensome application to run next to Firefox.

Lately, however, epdfview has started to show its warts. It started with it spitting out GTK error messages when launched from the terminal–not critical errors, but warnings that are quite scary nonetheless. I posted on the Arch Linux forums for an answer, but while I was waiting for that answer I began thinking of all the other small irritating details I found with epdfview–it has no vi-like keybindings; when you scroll down to the bottom of the page with your arrow keys, you have to use Page Down to get to the next page; lagginess during switching of pages; zoom keyboard shortcut not working sometimes where one has to press it a few times before the application seems to notice you want the document zoomed in.

I checked out the epdfview home page and was a bit dismayed to find the development on it had slowed to a trickle. The last few changes were to improve translations. I wanted to try another pdf viewer, so I tried compiling a PKGBUILD of evince from the AUR (evince-gtk) that apparently has less dependencies than the normal package. I had to download a large number of build dependencies, one of which was texlive-core which is rather large. After downloading them, I said to myself, stuff this, I’ll just get the binary. Compiling a package to avoid a binary version of it with more dependencies, only to download just as many dependencies to get it to build, is nonsensical.

And to my pleasant surprise Evince was no longer as laggy as it used to be — or was it even a bloated application to start with? The blame is better placed with Firefox, since I run Conkeror nowadays and am much better for it. Evince has vi-like keybindings (hjkl) which is one of those small pleasing details that give the app a little bit of a usability boost. Unlike epdfview, it has continuous scrolling, which means you can press the down button and have it go down, down, down, without having to press another pre-defined button for switching pages, and it doesn’t flip discretely between pages.

While browsing through the AUR, I came across a recent submission which piqued my curiosity: apvlv. The name is short for Alf’s PDF Viewer Like Vim. That pretty much tells you the reason why the app was written. Apvlv is even more vi/vim-like than Evince, as it has a command prompt at the bottom, just like the venerable text editor does.

Apvlv pdf viewer, showing its help documentation

Apvlv pdf viewer, showing its help documentation

An Evince screenshot for comparison with Apvlv

An Evince screenshot for comparison with Apvlv

Minor rant: still haven’t gotten the hang of adding images in WordPress. I’ll get it, someday. I know there isn’t much to see but I just wanted to show the visual differences between the two applications. Evince draws the edges of the page to emphasise the fact that you really are viewing something that is intended to be printed, while Apvlv does not. I rather like how flat and white everything looks with Apvlv… but that is just me and my unorthodox minimalist tendencies.

So why am I rambling on about an obscure PDF viewer? I find it to be a nice alternative to epdfview when you want to use vi-like keyboard shortcuts. Apvlv still has some rough edges to smooth and some features missing compared to Evince–its search function is a bit buggy (it finds the word successfully but I get strange colours appearing on the document), it can’t rotate the document, it has no printing support, and if you want to use arrow keys to scroll, you can’t.

As dismal as I makes it sound, I think Apvlv is quite a nice application. I wholeheartedly support the development of applications with vi/vim-like keyboard shortcuts, especially when the applications are not veering off into the dark side of bloatedness. 😉 I doubt (and I hope) the development on it is not finished.

Other PDF viewers I know of are the original Acrobat Reader and Xpdf. AA has lots of features, renders smoothly, and pretty much sets the standard for PDF viewers, but is terribly slow to start up and takes up a fair chunk of ram. It also is not open source, which is a criteria on which I have fluctuating opinions on. Xpdf is quite a light alternative that doesn’t lack in functionality, but it certainly lacks in looks. I think I would only resort to that if I were running 64-128 megabytes of ram on a very old machine. And yes, I have tried all of these.

So now, I have both Evince and Apvlv, since I can’t decide which to be rid of. 🙂


2 Responses to “Thoughts on PDF viewers”

  1. 1 Freduardo

    I’ve also been using epdfview for a while, because it was much “lighter” than evince or acroread. And I too found the lack of being able to scroll through a bit irritating. But since I don’t really use .pdf’s a lot, it was just a minor irritation.

    I’m not really proficient in vi(m), but I’ll give both Apvlv and Evince-gtk a try nonetheless.

    Thanks for the tip!

  2. 2 tzervo

    I find that apvlv does not render well Type 3 fonts (unfortunately many scientific papers contain such fonts) so I have sticked thus far with evince…

%d bloggers like this: