DamienCassou/auth-password-store@468bba2 -> DamienCassou/auth-password-store@fa8b964 Silex/docker.el@ed0cdf0 -> Silex/docker.el@bc2dc09 cjohansson/emacs-ssh-deploy@cc91b56 -> cjohansson/emacs-ssh-deploy@fce4ea3 editorconfig/editorconfig-emacs@9da2dab -> editorconfig/editorconfig-emacs@e10fa22 emacs-lsp/dap-mode@49af1b8 -> emacs-lsp/dap-mode@4347846 emacs-lsp/lsp-ivy@4dcb635 -> emacs-lsp/lsp-ivy@bccd860 emacs-lsp/lsp-mode@3dc87f6 -> emacs-lsp/lsp-mode@aec8968 emacs-lsp/lsp-ui@efae00e -> emacs-lsp/lsp-ui@cb02972 emacsorphanage/quickrun@57db985 -> emacsorphanage/quickrun@35e91f4 jacktasia/dumb-jump@8bc1950 -> jacktasia/dumb-jump@8f70acb joaotavora/eglot@b06589b -> joaotavora/eglot@a5b7b7d magit/forge@f4c95dd -> magit/forge@37aa4e4 magit/magit@577f16d -> magit/magit@e378827 millejoh/emacs-ipython-notebook@142ff50 -> millejoh/emacs-ipython-notebook@09af858 purcell/envrc@110a221 -> purcell/envrc@8a9a142 realgud/realgud@34557f8 -> realgud/realgud@7a70b27 spotify/dockerfile-mode@3b13745 -> spotify/dockerfile-mode@ad06a41 tkf/emacs-request@accd430 -> tkf/emacs-request@f3a5b43 tmalsburg/helm-bibtex@ca09076 -> tmalsburg/helm-bibtex@9f6ea92 vedang/pdf-tools@35e12b0 -> vedang/pdf-tools@d262cf9 yoshiki/yaml-mode@fc5e1c5 -> yoshiki/yaml-mode@3a57058 zx2c4/password-store@918992c -> zx2c4/password-store@4e73cdc
tools/pdf
Description
This module improves support for reading and interacting with PDF files in Emacs.
It uses pdf-tools
, which is a replacement for the built-in doc-view-mode
for
PDF files. The key difference being pages are not pre-rendered, but instead
rendered on-demand and stored in memory; a much faster approach, especially for
larger PDFs.
Displaying PDF files is just one function of pdf-tools
. See its project
website for details and videos.
Maintainers
This module has no dedicated maintainers.
Module Flags
This module provides no flags.
Plugins
Hacks
- Added out-of-the-box support for HiDPI or Retina displays.
Prerequisites
This module requires epdfinfo
, a program the the pdf-tools
plugin will build
automatically when you open your first pdf file, unless you're on Windows.
Windows users must build it themselves.
Building epdfinfo
on Windows
- Install MSYS2 and update the package database and core packages using the instructions provided.
-
Update and install dependencies, skipping any you already have
pacman -Syu pacman -S base-devel pacman -S mingw-w64-x86_64-toolchain pacman -S mingw-w64-x86_64-zlib pacman -S mingw-w64-x86_64-libpng pacman -S mingw-w64-x86_64-poppler pacman -S mingw-w64-x86_64-imagemagick
-
Install PDF tools in Emacs, but do not try to compile the server. Instead, get a separate copy of the source somewhere else.
git clone https://github.com/politza/pdf-tools
- Open mingw64 shell (Note: You must use mingw64.exe and not msys2.exe)
-
Compile pdf-tools:
# Cask requires python2 (important: not 3!) pacman -S python2 # Make the mingw-shell aware of your python installation. Adjust the path if # Emacs is installed elsewhere! export PATH="/c/Program Files (x86)/Emacs/bin/:$PATH" # Cask needs to know where git.exe is; change this path if git is installed # elsewhere! export PATH="/c/Program Files/Git/bin:$PATH" # Install cask. Certificate errors can be ignored with (unsafe) -k option. curl -fsSL https://raw.githubusercontent.com/cask/cask/master/go | python # Make sure the build process can see cask export PATH="$HOME/.cask/bin:$PATH" cd /path/to/pdf-tools make -s
- This should produce a file
server/epdfinfo.exe
. Copy this file into the~/.emacs.d/.local/straight/build/pdf-tools/
. - Start Emacs.
- Open a pdf file (or run
M-x pdf-tools-install
) - Test it out:
M-x pdf-info-check-epdfinfo