AuCTeX+pdf-tools 中的跳转与搜索问题请教

在 MacOS 上的Emacs(27.2)使用 AuCTeX+pdf-tools 作为 TeX 文档的编辑环境,遇到下面两个问题:

  1. 不能使用 C-c C-g 从 tex 文档中跳转到所生成的pdf文档中的相应位置。不过,可以从pdf文档中定位tex文件到位置;
  2. 关于tex 或者 pdf 文档中的搜索(isearch),如何能够在一个文件中搜索,实时在另一个文件中定位。

相关的配置如下:

(setq TeX-view-program-selection '((output-pdf "PDF Tools"))
      TeX-view-program-list '(("PDF Tools" TeX-pdf-tools-sync-view)))

(add-to-list 'TeX-command-list '("LaTeX" "%`pdflatex --synctex=1%(mode)%' %t" TeX-run-TeX nil t))
(setq TeX-command-default "LaTeX")

(pdf-tools-install)                  

(setq pdf-sync-backward-display-action t
      pdf-sync-forward-display-action t
      TeX-source-correlate-mode t
      TeX-source-correlate-method '(
                                    (dvi . source-specials)
                                    (pdf . synctex))
      TeX-source-correlate-start-server t  ;; [C-c C-g] to switch between source code and PDF
      reftex-plug-into-AUCTeX t)
(add-hook 'TeX-after-compilation-finished-functions
           #'TeX-revert-document-buffer) ; 
(add-hook 'pdf-view-mode-hook (lambda() (linum-mode -1)))

请大神分享下相关的使用经验,谢谢!:slight_smile:

想问一下你的C-c C-g 绑定的是哪个命令? 我这里TeX-view是可以跳到pdf对应的位置的

谢谢! Ldiwlty

我没有绑定 C-c C-g,运行的时候,显示 “C-c C-g is undefined”. 这个键应该如何绑定?

我在pdf-tools包中的pdf-sync.el文件中看到这一段:

(defcustom pdf-sync-forward-display-pdf-key "C-c C-g"
  "Key to jump from a TeX buffer to its PDF file.

This key is added to `TeX-source-correlate-method', when
command `pdf-sync-minor-mode' is activated and this map is defined."
  :type 'key-sequence)

这个键C-c C-g应该怎么再绑定下?谢谢 :slight_smile:

就用默认的C-c C-vC-c C-c 选 View 不好么?就是调用你设好的pdf reader 查看(并跳转到当前tex中所在行)

(with-eval-after-load 'latex 
  (define-key LaTeX-mode-map 
              (kbd "C-c C-g") #'pdf-sync-forward-search))
1 个赞

谢谢,Oracleyue 建议的解决方式。

这个键能够提示tex中的光标在pdf文档中的位置,正如在如下讨论中所提到的:

1 个赞

谢谢,wanglm

现在可以了。 :slight_smile: 跟 C-c C-v 效果一致。

附相应的定位讨论:

1 个赞