Um visualizador de PDF compatível com SyncTeX for Gnome


12

Estou procurando um visualizador de PDF para trabalhar com o LaTeX e o SyncTeX (pesquisa direta e inversa) no Gnome. Sei das perguntas anteriores em vários fóruns que o Okular tem esse recurso, mas prefiro não arrastar as dependências do KDE apenas para isso.

Existe uma alternativa que funcione bem no Gnome, sem muitas dependências? Não me importo de usar PPAs, criar a partir do código-fonte, usar ferramentas antigas do estilo X ou escrever pequenos scripts - Mas preciso de algo que funcione e que não atrapalhe muito minha configuração.


Eu uso o Emacs. Sei o suficiente para me intrometer, mas não consigo descobrir o que tem no Gnome a funcionalidade básica de responder a um clique no PDF de acordo com os dados do SyncTeX.
Little Bobby Tables

Existem atualizações sobre isso? Estou usando o TexStudio no Debian com o Xfce e não quero instalar o Ocular com todas as suas dependências. Estou usando o Atril (que foi baseado no Evince) como meu visualizador de PDF padrão, mas parece que ele não suporta pesquisa direta e inversa.
Sebastian Widz 13/01/19

Respostas:


6

Como observei em um comentário, ajudaria saber se você tem um editor em mente que deseja usar junto com ele.

O plugin gedit-latex adiciona uma visualização em PDF incorporada ao gEdit, e suponho que ele suporta pesquisas forward / reverse do SyncTeX. Certamente é isso que me vem à cabeça quando penso em algo para os usuários do GNOME.

Existem outros editores do LaTeX com visualizadores embutidos que suportam os saltos do SyncTeX, como: TeXworks , Texmaker , TeXmakerX . Todos são baseados em Qt e não em GTK, mas ainda assim, nenhum deles requer o KDE ou suas bibliotecas, como o Kile / Okular. (o gummi é baseado em GTK e tem um visualizador embutido - um que atualiza ao vivo -, mas acho que não suporta synctex ...)

Como a outra resposta observa, o evince está supostamente recebendo esse recurso, e as pessoas estão trabalhando nos plugins necessários para interação no lado do editor. Acho que usa o DBus para interação - um grande erro, se você me perguntar - mas como se não pudesse imaginar como funciona. No entanto, existe uma versão mais antiga do evince no Arch Linux User Repository, que foi corrigida para fornecer suporte SyncTeX mais diretamente . Eu nunca tentei compilá-lo no Ubuntu, embora teoricamente seja possível. Eu o usei no Arch e funciona bem.

Pessoalmente, no entanto, uso MuPDF como meu visualizador para a composição do LaTeX, que eu escolho porque é o visualizador de PDF mais rápido que conheço e o único rápido o suficiente para o script de visualização de atualização ao vivo que uso com o Vim como meu editor.

Embora o MuPDF não suporte o SyncTeX diretamente, eu cortei alguns scripts xdotool que fornecem suporte parcial ao SyncTeX. Basicamente, para pesquisa direta, os scripts chamam synctex do vim para descobrir qual página corresponde ao local na fonte e, em seguida, envia as teclas apropriadas ao MuPDF para ir para a página. Eu faço isso com um script vim, mas com o bash, algo como isso pode fazer o truque:

#!/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

Se você possui a versão mais recente do xdotool (mais nova que a encontrada nos repositórios Maverick), pode criar um tipo semelhante de pesquisa inversa fazendo com que o xdotool leia o número da página que o MuPDF está mostrando na barra de título, chame synctex e em seguida, envie o comando apropriado ao editor para ir para onde o código dessa página é (- não tão preciso quanto seria com um visualizador de PDF real compatível com SyncTeX, mas não muito gasto para algo tão leve quanto o MuPDF) .

De qualquer forma, você pode ler e baixar os scripts que eu realmente uso para o vim nesta postagem do blog . Mas se você quiser usar um editor diferente, precisará adaptar a ideia conforme necessário.

Mas espero que a situação com evince se endireite em breve também.


Aqui está um PPA para MuPDF que encontrei.
JJD

+1 para Gummi. Acabei de instalar e está ótimo! Ele também suporta SyncTex agora.
JJD

3

Basta usar o Evince, o visualizador de documentos padrão para GNOME e Ubuntu. Desde o GNOME 2.32 (encontrado no Ubuntu 10.10 e no próximo Ubuntu 11.04), o Evince suporta o SyncTex. Para mais, consulte http://library.gnome.org/misc/release-notes/2.32/


Eu tenho essas versões (Ubuntu 11.04 e Gnome 2.32), mas não encontrei como configurar o Evince para realizar pesquisas para frente ou para trás. o que estou perdendo?
Little Bobby Tables

Ctrl + F traz a pesquisa .... e você pode selecionar a direção .... ou estou perdendo alguma coisa?
luri

4
"pesquisa direta", no contexto da sincronização do LaTeX, significa que você pode pular do editor para a página correta no visualizador de PDF. "Pesquisa inversa" significa pular do visualizador de PDF para o código fonte de um parágrafo selecionado.
Little Bobby Tables

Sinto muito pela minha ignorância (na verdade, é um mal-entendido na linguagem). Obrigado por deixar isso claro para mim.
Luri

Qual LaTeX ou editor de texto você está usando ou deseja usar?
precisa saber é
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.