Is there a PDF viewer that I can control from a Python program, via dbus, a pipe, or something similar?
I have a program for presentations that displays my own notes while displaying a PDF on a projector. Right now, my program spawns mupdf and tells it to navigate forward or backward with things like
subprocess.call('xdotool search mupdf key Next'.split())
which does work, but seems brittle.
(Evince has some support for SyncTeX over dbus, but looking at the source, it seems like Evince doesn't expose any other functions via dbus.)
I don't want to reinvent the wheel and make my own PDF viewer. Is there some viewer that I can control from Python, using any kind of reasonable inter-process communication?