Are you using mozplugger
to embed a PDF reader into Firefox? In that case, you can change which PDF program gets embedded by creating a local mozpluggerrc in ~/.mozilla/
, e.g.:
cp /etc/mozplugger ~/.mozilla/
(Your "base" mozplugger may not be there. That's where it is for me on Arch.)
And then edit the part that has to do with PDFs so it only contains what you want.
application/pdf:pdf:PDF file
application/x-pdf:pdf:PDF file
text/pdf:pdf:PDF file
text/x-pdf:pdf:PDF file
repeat noisy swallow(okular) fill: okular "$file"
repeat noisy swallow(evince) fill: evince "$file"
repeat noisy swallow(Xpdf) fill: xpdf -g +9000+9000 "$file"
repeat swallow(acroread) fill: acroread7 -openInNewWindow "$file"
GV()
Delete the lines having to do with PDF viewers you don't want. (It's not Ubuntu that's making it default to Okular, it's the mozplugger devs.)
Try evince, okular, mupdf, epdfviewer and see if any of them work.
I can't replicate it, so I don't really know how to solve the problem with the keys, but suffice it to say, you're not the only one having the problem. Some bug reports to read:
http://bugreports.qt.nokia.com/browse/QTBUG-3814
https://www.mozdev.org/bugs/show_bug.cgi?id=22359
https://bugzilla.mozilla.org/show_bug.cgi?id=560501
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=519832
EDIT: After poking around a bit more, I found the following note on the Ubuntu manpage about mozplugger:
needs_xembed
Some applications when embedded requires the Xembed protocol,
other applications don’t want the Xembed protocol. Add or remove
this flag if you find that you cannot move keyboard focus to the
embedded window. Currently it appears QT4 based applications
require this flag.
So try, chaging the line in mozplugger:
repeat noisy swallow(evince) fill: evince "$file"
to
repeat noisy needs_xembed swallow(evince) fill: evince "$file"
As I noted in a comment, it would help to know if you have a particular editor in mind you want to use along with it.
The gedit-latex-plugin adds a built in PDF preview to gEdit, and I gather it supports SyncTeX forward/reverse searches. Certainly that's what jumps to mind to me when I think of something for GNOME users.
There are other LaTeX editors with built-in previewers that support SyncTeX jumps such as: TeXworks, Texmaker, TeXmakerX. These are all Qt-based rather than GTK-based, but still, none of them require KDE or its libraries like Kile/Okular do. (gummi is GTK based and has a built in previewer -- a live updating one at that -- but I don't think it supports synctex...)
As the other answer notes, evince is supposedly getting this feature, and people are working on the necessary plugins for interaction on the editor side. I gather it uses DBus for interaction--a big mistake if you ask me--but like you can't figure how it works. However, there is an older version of evince in the Arch Linux User Repository which has patched to provide SyncTeX support more directly. I've never tried compiling it on Ubuntu, though theoretically it should be possible. I have used it on Arch though, and it works fine.
I personally, however, use MuPDF as my viewer for LaTeX composition, which I choose because it's the fastest PDF viewer I know, and the only one fast enough for the live-updating-preview script I use with Vim as my editor.
While MuPDF doesn't support SyncTeX directly, I hacked together some xdotool scripts that provide partial SyncTeX support. Basically, for forward search, the scripts call synctex from vim to figure out what page matches the spot in the source, and then sends the appropriate keystrokes to MuPDF to jump to that page. I do this with a vim script, but with bash, something like this might do the trick:
#!/bin/bash
# mupdf-forward.sh
# usage mupdf-forward.sh <line number> <column number> <tex file> <pdf file>
SEARCHLINE="$1"
SEARCHCOL="$2"
TEXFILE="$3"
PDFFILE="$4"
PAGEFORWARD=0
PAGEFORWARD="$(synctex view -i $SEARCHLINE:$SEARCHCOL:"'"'"$TEXFILE"'"'" -o "'"'"$PDFFILE"'"'" | grep -m1 'Page:' | sed 's/Page://' | tr -d '\n'")"
if [ $PAGEFORWARD -gt 0 ] ; then
xdotool search --class MuPDF type --window %@ "${PAGEFORWARD}g"
fi
If you have the newest version of xdotool (newer even than the one in the Maverick repos), you can kludge up a similar kind of reverse search by having xdotool read the page number that MuPDF is showing from its title bar, call synctex, and then send the appropriate command to the editor to jump to where the code for that page is (--not nearly as precise as you'd get with a real SyncTeX-compliant PDF viewer, but not too shabby for something as lightweight as MuPDF).
Anyway, you can read about and download the scripts I actually use for vim in this blog post. But if you want to use a different editor, you'll have to adapt the idea as necessary.
But hopefully the situation with evince will straighten itself out sometime soon too.
Best Answer
You can have Evince zoom at higher levels by increasing the page cache size. For example,
gsettings set org.gnome.Evince page-cache-size 500
will increase the page-cache size from 50 MiB, the default, to 500 MiB, and thus increase the available zoom to 1600%. You can try with higher values. However, from certain zoom levels onwards, it won't work anymore.