synctex 和脆弱的 beamer 框架

synctex 和脆弱的 beamer 框架

synctex我在演示中使用beamer,遇到了一些问题。不像这个问题,我可以接受synctex将我置于当前帧的末尾的事实。但是,对于fragile帧,我最终处于,它基本上包含演示文稿的slides.vrb最后一帧。fragile

fragile没有覆盖层的框架是可以的,因为该fragile=singleslide选项会synctex找到合适的线条,但我的一些fragile框架有多个覆盖层。有什么办法可以解决它们吗?

更新:事实上,这个问题似乎只发生在使用 时listings。这里有一种方法可以重现这个问题(请注意,它假设你已经配置了你的pdf查看器,okular在我的情况下,能够对你的编辑器执行反向搜索,emacs在我的情况下)。

考虑以下slide.tex文件:

\documentclass{beamer}
\usepackage{listings}
\begin{document}
\begin{frame}[fragile]{title}
\begin{lstlisting}
foo
\end{lstlisting}
bar

\lstinline|bla|
\end{frame}
\end{document}
  1. 启用后进行编译synctexpdflatex -synctex=1 slide.tex
  2. slide.pdf使用-aware 查看器打开synctexokular slide.pdf
  3. 执行反向搜索(shift+单击okularbar:它应该按预期将编辑器的光标移动到框架的末尾。
  4. foo对环境中的执行逆向搜索lstlisting:它应该在编辑器中打开辅助slide.vrb文件并将您指向那里而不是slide.tex
  5. 同样的问题也会出现\lstinline|bla|:如果你shift按住 并单击bla,它会打开slide.vrb

相关内容