Files
doomemacs/modules/tools/pdf
Henrik Lissner 79a8abd85a bump: :tools
Silex/docker.el@813c00410b -> Silex/docker.el@46b597a711
editorconfig/editorconfig-emacs@24f5b2b1cd -> editorconfig/editorconfig-emacs@1a9942746c
emacs-ansible/emacs-ansible@03e285bb54 -> emacs-ansible/emacs-ansible@4601ff31f5
emacs-citar/citar@2826996799 -> emacs-citar/citar@ce5e9644ed
emacs-lsp/dap-mode@ffb7957612 -> emacs-lsp/dap-mode@09dc16bae1
emacs-lsp/lsp-mode@d28dd6b7e3 -> emacs-lsp/lsp-mode@b383e637dc
emacs-lsp/lsp-ui@f0edfac7b3 -> emacs-lsp/lsp-ui@00e69463b4
emacs-straight/eglot@d3e44d33b7 -> emacs-straight/eglot@2d5d494bfc
emacs-tree-sitter/elisp-tree-sitter@fe98d0cae7 -> emacs-tree-sitter/elisp-tree-sitter@f3b6e78cd4
emacs-tree-sitter/tree-sitter-langs@4f951dbb53 -> emacs-tree-sitter/tree-sitter-langs@2ff446b4b8
emacsorphanage/quickrun@d383929c50 -> emacsorphanage/quickrun@7345432cea
gagbo/consult-lsp@6858391316 -> gagbo/consult-lsp@aef321d039
hpdeifel/synosaurus@14d34fc92a -> hpdeifel/synosaurus@690755ce88
jacktasia/dumb-jump@cd65a74337 -> jacktasia/dumb-jump@93665381d9
joostkremers/parsebib@f0e57a3606 -> joostkremers/parsebib@a25621930e
magit/forge@0c90606262 -> magit/forge@33e240d360
magit/magit@7dfebba55b -> magit/magit@f52dfada8f
mohkale/consult-eglot@9b490eb384 -> mohkale/consult-eglot@b71499f4b9
nicolaisingh/saveplace-pdf-view@70e9ec4056 -> nicolaisingh/saveplace-pdf-view@79e76562bc
purcell/envrc@60f5091538 -> purcell/envrc@2b818ca6e4
rejeep/prodigy.el@c5a17c280d -> rejeep/prodigy.el@99908d13be
tkf/emacs-request@01e338c335 -> tkf/emacs-request@c22e3c23a6
tumashu/posframe@8165153682 -> tumashu/posframe@12f540c9ad
2025-02-21 15:17:42 -05:00
..
2024-09-14 20:47:39 -04:00
2025-02-21 15:17:42 -05:00

:tools pdf

Description   unfold

This module improves support for reading and interacting with PDF files in Emacs.

It uses doom-package: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 doom-package:pdf-tools. See its project website for details and videos.

Maintainers

This module has no dedicated maintainers. Become a maintainer?

Module flags

This module has no flags.

TODO Hacks

󱌣 This module's hacks haven't been documented yet. Document them?

TODO Changelog

This module does not have a changelog yet.

Installation

Enable this module in your doom! block.

This module requires the epdfinfo program. Unless you're on Windows, the doom-package:pdf-tools plugin will (re)build this program for you, if you issue the M-x pdf-tools-install command. See the next section for instructions on how to build the epdfinfo program on Windows.

Building epdfinfo on Windows

  1. Install MSYS2 and update the package database and core packages using the instructions provided.
  2. 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
  3. 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
  4. Open mingw64 shell (Note: You must use mingw64.exe and not msys2.exe)
  5. 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
  6. This should produce a file server/epdfinfo.exe. Copy this file into the $HOME/.emacs.d/.local/straight/build/pdf-tools/.
  7. Start Emacs.
  8. Open a pdf file (or run M-x pdf-tools-install)
  9. Test it out: M-x pdf-info-check-epdfinfo

TODO Usage

󱌣 This module has no usage documentation yet. Write some?

TODO Configuration

󱌣 This module has no configuration documentation yet. Write some?

Troubleshooting

There are no known problems with this module. Report one?

Frequently asked questions

This module has no FAQs yet. Ask one?

TODO Appendix

󱌣 This module has no appendix yet. Write one?