doomemacs/modules/tools/pdf
Henrik Lissner 3a38fc633c
Change doom-{interactive,debug}-mode suffix to -p
Because these are not really modes.

Also makes `doom-debug-mode` an actual (global) minor mode.
2020-05-25 03:43:40 -04:00
..
autoload lang/pdf: fix wrong-num-of-args error for MacOS users 2019-09-21 14:19:56 -04:00
config.el Change doom-{interactive,debug}-mode suffix to -p 2020-05-25 03:43:40 -04:00
packages.el Bump :tools debugger lsp pdf 2020-05-14 00:12:10 -04:00
README.org Add :tools pdf readme #1166 2020-05-08 05:49:09 -04:00

tools/pdf

Description

This module improves Emacs' support for reading PDF files.

Maintainers

This module has no dedicated maintainers.

Module Flags

This module provides no flags.

Plugins

Hacks

  • Added basic support for HiDPI or Retina displays.

Prerequisites

This module will build the epdfinfo program when you first open a pdf file. Linux and macOS don't need to do anything special. Windows users, however, must build it themselves.

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 ~/.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 Features

TODO Configuration

TODO Troubleshooting