> Although I don't think I would be able to implement that, I would
> warmly recommend against adopting unneeded complexity layers like
> dbus, which is deployed, e.g., for evince's syntex support.
> I'm sure that working with command line arguments, like the good old
> xkdvi does, would be just better.
In my original solution (see https://github.com/rschatz/zathura-synctex,
but that is based on an old version of zathura), I used just commandline
arguments and keyboard input.

I added two commandline options:
-s --synctex    Enable synctext support.
-x --editor-command <cmd>    Synctex editor (this flag is forwarded to
the synctex -x option)

Backwards synchronization is easy:
When you ctrl-click on the document, "synctex edit -o
<page>:<x>:<y>:<file> -x <editor>" is executed.

Forwards synchronization works with a new command:
The ":synctex <line> [<column>] <sourcefile>" command executes "synctex
view -i '<line>:<column>:<sourcefile>' -o '<pdffile>'", parses the
result and draws the resulting data.
This command is can then be used in conjunction with "xdotool", e.g. I
have a little vim script that sends the required keystrokes to the
zathura window when I press <F5>.

But the "xdotool" solution feels like a hack, especially since it
doesn't work when the state of zathura isn't right (e.g. someone typed
':' before, so the resulting command will be '::synctex ...'.

I'm open to any suggestions how to do this better. I'm sure there must
be some clean and easy solution without adding complex things like dbus ;)

At the moment, I'm really busy (paper deadline today), and then I'm on
holiday. After I come back, I'll look into porting synctex support to
the new version of zathura...
zathura mailing list

Reply via email to