使用 vim-latex 和 evince 进行正向搜索

使用 vim-latex 和 evince 进行正向搜索

操作系统:Ubuntu 18.04 LTS Bionic
texlive 版本:2019
Vim 版本:8.1,big
Vim 插件管理器:pathogen
Vim 插件:vim-latex(LatexSuite)

我已更改文件中的设置tex.vim,因此默认编译器将是pdflatex而不是latex。在 vim 中使用 编译 tex 文件后\ll,我尝试使用\lsvim 中的命令进行前向搜索。但是,这将打开一个evince窗口(evince 也称为“文档查看器”),其中包含输出 PDF 和另外两个带有错误消息的窗口。

我怎样才能解决这个问题?

答案1

我去了 evince 的“帮助”部分并发现了有关 Synctex 的信息。说明网上说你应该安装整个的gedit-plugins,但我的解决方案只涉及安装gedit-plugin-synctex。所以我运行了:

apt-get update && apt-get upgrade
sudo !!
apt-get install gedit-plugin-synctex

那么感谢此链接,我能够找到 Synctex 文件的位置。 gedit 插件文件通常位于

/usr/lib/x86_64-linux-gnu/gedit/plugins/

在那里,你应该找到 Synctex 文件夹,在里面你应该找到文件evince_dbus.py。你现在可以继续官方说明。我将文件复制到文件夹,~/texlive/2019/bin/x86_64-linux因为它在 中$PATH。要查找 中有哪些文件夹$PATH,您可以echo $PATH在终端上运行。

现在,您必须添加一些修复。Ubuntu 18 不包含该python命令,而是默认命令python3。此外,该evince_dbus.py文件是用 python3 编写的(您可以通过查看使用的代码行来验证这一点print。在 python3 中,print 是一个函数,因此参数放在括号中。),因此您可以使用 python3 来运行该文件。您需要先打开该文件,可以使用以下命令完成:

vim evince_dbus.py

然后,转到第一行,即 shebang 行,并3在末尾添加 a,因此python将变成python3。然后,在第 165 行,删除必要的字符以获得:

input_file  = sys.argv[3]
path_output  = output_file
path_input   = os.getcwd() + '/' + input_file

就是这样。您现在应该能够使用命令进行前向搜索\ls

相关内容