Emacs đã bị đóng băng khi mở tệp pdf


10

Khi tôi mở pdf bằng emacs, nó bị đóng băng. Và tôi đã cài đặt các công cụ pdf, mở pdf, nó lại bị đóng băng.

Quá trình gạch chân khi emacs mở pdf là gì? Có rất nhiều công việc chuyển đổi? Tôi nên làm gì để tăng tốc nó?

  • Emacs 24.4
  • Ubuntu 14.04 LTS
  • Intel 2.4GHz x 2
  • RAM 4G.

Cập nhật :

Tôi chỉ tìm thấy trang này:

"đã học được một bài học. Không bao giờ mở pdf trong emacs. Thậm chí không bao giờ làm điều đó một cách vô tình."

https://twitter.com/ergoemacs/status/456088661059457024

Đó là một tin buồn với tôi! Không phải là một ý tưởng tuyệt vời để xem pdf bằng Emacs sao?

Cập nhật 2

Tôi nghĩ rằng đó là vì tập tin pdf của tôi quá lớn:

5.7M, 1313 pages

Vì vậy, tôi đã thử một tệp pdf nhỏ,

402K, 66 pages

nó lại bị đóng băng

Cập nhật 3

Tôi mở tệp pdf bằng cách sử dụng C-c C-xtừ helmvà nó mở tệp pdf trong trình xem bên ngoài: zathura . Vì không có quá trình chuyển đổi, tập tin sẽ mở ra ánh sáng nhanh chóng. (Nhanh như mupdf. Tôi đoán zathura sử dụng mupdf làm mặt sau của nó.)

Có bốn điểm làm cho zathura nổi bật:

  1. Ánh sáng nhanh. (Cả mở và tìm kiếm)
  2. Màn hình chất lượng cao.
  3. Tab hiển thị menu chương / phần giống như Adobe Reader.
  4. Hỗ trợ phím tắt tốt. (Trên thực tế, nó sử dụng keybinding kiểu vim, điều này hợp lý vì không cần phải chuyển chế độ trong trình xem pdf.

Cập nhật 4

Ảnh chụp màn hình để so sánh chất lượng:

! Trái: Zathura; Phải: PDF trong Emacs

Tôi thực sự đã nhầm lẫn những gì Emacs sử dụng để mở PDF. (Tôi đã xóa công cụ pdf)


Bạn không muốn cho chúng tôi biết thêm về cấu hình Emacs của bạn liên quan đến các tệp pdf?
Nsukami _ 24/12/14

@Nsukami_ Cảm ơn bạn đã hỏi thăm. Trên thực tế tôi không có gì liên quan đến tập tin pdf trong cấu hình của tôi. 1. Tôi mở pdf với cài đặt mặc định. 2. Cài đặt công cụ pdf, mở pdf.
Nick

Bạn có thể sử dụng Emacs làm trình đọc PDF tốt. Bây giờ tôi sử dụng Emacs để đọc PDF độc quyền. Tôi cũng sử dụng Ubuntu. Nhưng tệp PDF của bạn lớn bao nhiêu?
Từ Đỗ

4
Rõ ràng, đây là thời gian cho emacs -Qmột lần nữa.
wasamasa

2
Để cài đặt pdf-tools, bạn phải sao chép repo, chạy ./autogen.shvà làm theo quy trình chuẩn: ./configure&& make&& sudo make install. Sau đó, nó sẽ tạo ra một pdf-tools.tar.gztrong thư mục công cụ pdf mà bạn nhân bản. Sau đó, đặt (pdf-tools-install)một nơi nào đó trong tập tin init của bạn. Từ giờ trở đi, Emacs sẽ sử dụng pdf-view-mdoecho chất lượng tốt hơn và tốc độ kết xuất tốt hơn.
Từ Đô

Câu trả lời:


12

Bạn nên tắt linum-modekhi mở tệp PDF. Nếu không nó sẽ treo Emacs của bạn. tức là chỉ thêm nó vào prog-modeđể chỉnh sửa văn bản:

(add-hook 'prog-mode-hook 'linum-on)

Để cài đặt pdf-tools:

  • Bạn phải sao chép kho lưu trữ :

    git clone https://github.com/politza/pdf-tools.git

  • cd pdf-tools

  • Chạy đi make.

  • Sau đó, nó sẽ tạo ra một pdf-tools-${VERSION}.tartrong pdf-toolsthư mục bạn nhân bản; trong Emacs,M-x package-install-file RET pdf-tools-${VERSION}.tar RET

  • Sau đó, đặt (pdf-tools-install)một nơi nào đó trong tập tin init của bạn. Từ giờ trở đi, Emacs sẽ sử dụng pdf-view-modecho chất lượng tốt hơn và tốc độ kết xuất tốt hơn.

Đây là một bản demo sử dụng các công cụ pdf . Tệp PDF là 28 MB và phải mất vài giây để mở. Lưu ý rằng chất lượng của hình ảnh trong gif có chất lượng thấp hơn một chút so với nguồn thực tế, nhưng như bạn có thể thấy văn bản rõ ràng. Tôi đã không ghi lại toàn bộ màn hình để giảm kích thước của gif, vì nó đã là 13MB.

Tôi sử dụng Isearch đơn giản bằng cách sử dụng C-snhư trong các bộ đệm khác để tìm kiếm. Đừng nhấn quá nhanh, để lại khoảng 1 giây giữa các lần tìm kiếm. Bạn nên sử dụng Isearch để tìm kiếm trang hiện tại hoặc các trang gần đó, về cơ bản là một cái gì đó nhỏ. Để tìm kiếm toàn bộ tài liệu, sử dụng pdf-occur; lệnh khá nhanh. Bạn có thể muốn giữ kết quả tìm kiếm để sử dụng sau này (trong cùng một phiên) bằng cách đổi tên *PDF-Occur*bộ đệm mặc định xảy ra thành một số tên khác để tránh bị ghi đè bởi các tìm kiếm trong tương lai.

Nếu bạn muốn mục lục, trong bộ đệm PDF nhấn ođể mở nó vào outline-mode.


Hat lời khuyên cho gói tuyệt vời này (và trả lời). Sự khác biệt là rất lớn nếu bạn so sánh nó với trình xem mặc định.
KookieMonster

(add-hook 'prog-mode-hook 'linum-on)nên (add-hook 'prog-mode-hook 'linum-mode)vào ngày 24.5.1.
Dương

4

Tôi đang sử dụng Emacs để đọc tài liệu, tài liệu khoa học và sách - tất cả những thứ đó không có vấn đề .

Chế độ xem doc của tôi sử dụng Mudraw (từ mupdf ) để hiển thị các tệp PDF như bạn có thể thấy bằng cách kiểm tra biến doc-view-pdfdraw-chương trình :

doc-view-pdfdraw-chương trình là một biến được định nghĩa trong `doc-view.el '. Giá trị của nó là "Mudraw" Tài liệu: Tên chương trình của MuPDF để chuyển đổi các tệp PDF thành PNG. Biến này đã được giới thiệu hoặc giá trị mặc định của nó đã được thay đổi, trong phiên bản 24.4 của Emacs.

Theo mặc định, chế độ xem tài liệu sử dụng gs của ghotscript để hiển thị có thể bị chậm so sánh. Bạn có thể đọc về chuyển đổi từ gs của ghostscript sang Mudraw của mupdf:

Kể từ đó, tôi đã thử nghiệm bản vá đó và không bao giờ nhìn lại kể từ khi công tắc tăng tốc độ chuyển đổi pdf-> png theo hệ số hai và mang lại khử răng cưa với nó.

Trong tình huống của bạn:

  1. cài đặt mupdf và mở PDF trong phiên emacs mà không cần cấu hình của bạn, vd:

    env HOME=/tmp emacs -Q
    

    và kiểm tra xem doc-view-pdfdraw-chương trình có được đặt chính xác thành Mudraw không .

  2. báo cáo lại nếu ở trên cải thiện tình hình của bạn.

PS Tôi không có kinh nghiệm với các công cụ pdf .


Tôi đã cài đặt mupdf, và nó nhanh đến mức đáng ngạc nhiên. Tôi chạy env HOME = / tmp emacs -Q, emacs sais "vẫn đang chuyển đổi" và mất một lúc để chuyển đổi. Tốc độ tốt nhưng chất lượng kém. Thật ngạc nhiên, không có biến có tên doc-view-pdfdraw-chương trình. Nếu Emacs có thể sử dụng mupdf, điều đó sẽ thực sự tuyệt vời!
Nick

Bạn có chắc chắn rằng bạn đang sử dụng 24.4? doc-view-pdfdraw-chương trình nên có sẵn trong trường hợp đó. Là mudraw sẵn trong shell của bạn?
kmicu

Có, tôi đang chạy Emacs 24.4. This is GNU Emacs 24.4.2 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.8) mudrawkhông có sẵn, vì vậy tôi đã cài đặt. (gói mupdf-tools), do đó tôi có thể chạy Mudraw trong shell. Tốc độ chuyển đổi thậm chí còn chậm hơn và chất lượng hiển thị pdf vẫn còn kém.
Nick

"Thật ngạc nhiên, không có biến có tên doc-view-pdfdraw-chương trình." mà không biết cái gì được đặt trong biến đó, chúng tôi không thể chắc chắn nếu bạn thực sự sử dụng Mudraw trong chế độ xem doc, có thể đây vẫn là gs . "Chất lượng hiển thị pdf vẫn còn kém" là một tuyên bố tương đối và chủ quan - bạn có thể cập nhật câu hỏi của mình bằng một số ảnh chụp màn hình không? Đối với tôi Zathura (với mupdf phụ trợ) có chính xác chất lượng và tốc độ kết xuất PDF giống như trong Emacs.
kmicu

1
Để có được biến đó, bạn phải tải nó : (require 'doc-view). Tôi nghĩ mudrawlà mặc định và vấn đề là doc-viewkhông thể vừa toàn bộ trang PDF vào toàn bộ bộ đệm. Và tôi không chắc về chất lượng.
Từ Đỗ
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.