Emacs Auctex: Làm cách nào để mở pdf trong evince ở vị trí con trỏ hiện tại


9

Tôi sử dụng emacs auctex để viết các tập tin latex. Vì văn bản khá dài và tôi có xu hướng thay đổi mọi thứ ở những nơi khác nhau, tôi muốn emacs mở pdf để vị trí trong văn bản được hiển thị rằng con trỏ ở trong tệp nguồn.

Tôi đã thấy điều này trên một máy tính windows với MikTex / Texniccenter / Acroreader. Có thể làm điều này trên Ubuntu trong emacs / auctex / evince không?

Câu trả lời:


3

Để làm điều này, bạn cần thêm các dòng sau vào tệp .emacs của mình để khi bạn xem pdf bằng cách sử dụng evince, nó sẽ cho biết chứng minh số trang:

(setq TeX-view-program-list '(("Evince" "evince --page-index=%(outpage) %o")))
(setq TeX-view-program-selection '((output-pdf "Evince")))

Sau đó, khi bạn đã mở tệp tex của mình trong emacs, bạn cần bật tương quan nguồn bằng lệnh:

C-c C-t C-s

Hoặc nếu bạn không muốn khởi động thủ công mỗi lần thì hãy thêm dòng sau vào .emacs của bạn:

(add-hook 'LaTeX-mode-hook 'TeX-source-correlate-mode)

Ngoài ra, nếu bạn muốn ngăn emacs hứa với bạn nếu bạn muốn bắt đầu một máy chủ tương quan thì hãy thêm dòng sau:

(setq TeX-source-correlate-start-server t)

Và đó nên là nó.

Chỉnh sửa: thực tế, hóa ra bạn không nên sử dụng gói pdfsync, vì vậy tôi đã xóa tất cả các tham chiếu đến nó. Không cần thiết cho giải pháp này (dường như giờ đây nó được tích hợp vào tất cả các công cụ dựa trên TeX) và việc sử dụng nó thực sự có vẻ gây ra sự cố (đối với tôi dường như nó phá vỡ mã bằng cách sử dụng bảng).

Chỉnh sửa 2: Tôi gặp vấn đề với chế độ tự động kích hoạt chế độ tương quan nguồn TeX khi sử dụng .emacs, nhưng bây giờ chúng dường như đã biến mất. Không chắc chắn nếu đó là vì tôi đã cập nhật emacs hoặc vì tôi đã xóa pdfsync. Dù sao, nó hoạt động bây giờ :)


@dbddkmezz Làm cách nào để mở pdf từ Emacs? C-c C-vkhông làm điều đó
Dustin

@dustin C-c C-vlàm việc cho tôi. Có lẽ bạn cần phải thiết lập trình xem pdf của mình một chút?
xuhdev

Nó không hoạt động nếu tôi sử dụng latexmk để biên dịch tex thành pdf.
CodyChan

4

Tôi đã sử dụng mô tả được đưa ra tại http://www.emacswiki.org/emacs/AocateeX (phần cuối: Synctex và Evince), hoạt động như một bùa mê ... với điều này bạn có được đồng bộ hóa hai chiều (ví dụ: nhấn Cc Cv trong emacs để đi đến trang pdf hoặc nhấn C-mouse1 trong evince để đi đến vị trí chính xác trong emacs). Nhìn chung, nó tương tự như câu trả lời đầu tiên, nhưng bạn không cần đưa pdfsync bằng tay và emacs và chứng minh sử dụng dbus để giao tiếp. Bạn cũng phải làm Cc Ct Cs quá.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.