Предотвратить SyncTeX от открытия нового экземпляра Evince?

Я использую плагин SyncTeX в gedit, и кажется, что нажатие ctrl в gedit (поиск вперед) открывает новый экземпляр Evince, даже если уже был открытый экземпляр.

Есть ли способ предотвратить это? Прямой поиск SyncTeX явно вызывает evince не так, как, например, Наутилус будет.

Между прочим, я компилирую свои текстовые файлы с помощью скрипта, используя плагин «external tools». Строка, которая открывает PDF-файл, использует xdg-open.

2
задан 30 July 2012 в 15:00

1 ответ

Я понял, как решить эту проблему. Проблема заключалась в том, что экземпляр, запущенный Synctex, не был распознан командой в моем сценарии «Внешние инструменты».

Экземпляр Synctex был указан как /usr/bin/evince file:///path/to/my/file.pdf, тогда как экземпляр, вызванный xdg-open, был указан как evince file.pdf.

Итак, я просто изменил свой сценарий так, что он также будет указан как /usr/bin/evince file:///path/to/my/file.pdf. Мой скрипт внешних инструментов теперь читает:

#!/bin/bash

if [ "$GEDIT_CURRENT_DOCUMENT_TYPE" == "text/html" ]; then

    google-chrome $GEDIT_CURRENT_DOCUMENT_NAME

elif [ "$GEDIT_CURRENT_DOCUMENT_TYPE" == "text/x-tex" ]; then

    filename=$GEDIT_CURRENT_DOCUMENT_NAME
    shortname=`echo $filename | sed 's/\(.*\)\.tex$/\1/'`

    path=file://$GEDIT_CURRENT_DOCUMENT_PATH
    shortpath=`echo $path | sed 's/\(.*\)\.tex$/\1/'`


    latex -synctex=1 -interaction batchmode -src $filename
    dvips -t a4 $shortname.dvi
    ps2pdf -sPAPERSIZE=a4 -dOptimize=true -dEmbedAllFonts=true $shortname.ps
    rm --interactive=never $shortname.dvi $shortname.out $shortname.ps $shortname.blg $shortname.toc $shortname.log
    #xdg-open $shortname.pdf
    /usr/bin/evince $shortpath.pdf


else

    echo "I don't know how to compile files of the type:" "$GEDIT_CURRENT_DOCUMENT_TYPE"

fi
0
ответ дан 30 July 2012 в 15:00

Другие вопросы по тегам:

Похожие вопросы: