summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-01-08docs(macos): expand FAQ for pkg-config/poppler build issuesHEADmasterVedang Manerikar
Add comprehensive troubleshooting steps for macOS users who encounter 'Package poppler not found' or 'gpgmepp not found' errors when building epdfinfo. The root cause is often a non-Homebrew pkg-config (e.g., from Anaconda) shadowing Homebrew's version. Includes: - Diagnostic step to identify which pkg-config is in use - Command-line fix using PKG_CONFIG environment variable - Emacs Lisp snippet for users building via M-x pdf-tools-install Closes #299
2026-01-02fix(macos): add poppler and pcre2 to PKG_CONFIG_PATH for Homebrew buildsVedang Manerikar
Some macOS users were experiencing build failures where pkg-config could not find poppler, even with Homebrew's poppler package installed. This occurs when Homebrew doesn't properly link the .pc files to the standard pkg-config search path. Fixes #299
2026-01-01chore: bump the version of pdf-tools to 1.3.0v1.3.0Vedang Manerikar
2026-01-01doc: add continuous scroll mode documentation to READMEVedang Manerikar
Document the new pdf-view-roll-minor-mode feature: - Explain it's experimental and off by default - How to enable it (M-x pdf-view-roll-minor-mode) - What it does (multiple pages, smooth scrolling) - How to enable by default via hook - Customization options (margin size and color) - Warning about experimental status
2025-12-31doc: add NEWS entry for v1.3.0 releaseVedang Manerikar
Document the major new feature in v1.3.0: - pdf-view-roll-minor-mode for continuous scrolling (Closes #18, #104) - pdf-annot-edit command for avy-style annotation editing - Multi-page isearch, link following, and annotation support - SyncTeX integration with roll mode - API changes for package developers
2025-12-31test: add pdf-roll tests and fix defcustom bugVedang Manerikar
Add automated tests for pdf-roll functionality: - pdf-roll-page-to-pos utility function - pdf-roll-page-at-current-pos with various positions - Customization defaults - Symbol properties - Minor mode keymap existence Fix bug in pdf-roll-margin-color defcustom where the :set function didn't actually set the variable value.
2025-12-31feat: integrate pdf-view-roll-minor-mode with existing featuresVedang Manerikar
Update all pdf-tools features to work correctly when pdf-view-roll-minor-mode is active: - pdf-isearch: Search across all displayed pages simultaneously - pdf-links: Link selection works with multiple visible pages - pdf-annot: Annotations work on correct page, add pdf-annot-edit command for avy-style annotation editing - pdf-sync: SyncTeX jumps work with continuous scroll mode - pdf-view: Display and navigation functions updated for multi-page - pdf-util: Coordinate transformation updates for visible pages - pdf-cache: Simplify prefetch (remove timer indirection) - pdf-occur: Minor compatibility updates The mode is experimental. Some features may not interact perfectly with roll mode. Enable with M-x pdf-view-roll-minor-mode. API changes: - pdf-view-active-region now includes page information - isearch results include page data for multi-page display Co-authored-by: Daniel Nicolai <dalanicolai@gmail.com> Co-authored-by: Rahguzar <aikrahguzar@zohomail.eu> Co-authored-by: Ihor Radchenko <yantar92@gmail.com> Co-authored-by: NightMachinery <feraidoonmehri@gmail.com>
2025-12-31feat: add pdf-roll.el for continuous scroll supportVedang Manerikar
Add core infrastructure for displaying multiple PDF pages simultaneously with continuous scrolling. This introduces pdf-view-roll-minor-mode which can be enabled in any PDF buffer. The implementation is based on image-roll.el by Daniel Nicolai, with significant enhancements by Rahguzar for pdf-tools integration. Key features: - Smooth pixel-level scrolling across page boundaries - Multiple pages visible simultaneously - Integration with pixel-scroll-precision-mode - Efficient page display/undisplay management Closes #18, #104 Co-authored-by: Daniel Nicolai <dalanicolai@gmail.com> Co-authored-by: Rahguzar <aikrahguzar@zohomail.eu> Co-authored-by: Ihor Radchenko <yantar92@gmail.com> Co-authored-by: NightMachinery <feraidoonmehri@gmail.com>
2025-12-31chore: bump the version of pdf-tools to 1.2.1v1.2.1Vedang Manerikar
2025-12-31doc: add NEWS entry for v1.2.1 releaseVedang Manerikar
Document changes since v1.2.0: - Replace obsolete registerv-make with cl-defstruct for Emacs 30 - Fix pdf-virtual page link filtering - Resolve native-comp warnings across multiple files - Add doas support in autobuild for Alpine/OpenBSD - Move CI to GitHub Actions
2025-12-31chore: replace circleci and appveyor badges with github actions badgeVedang Manerikar
2025-12-31chore: remove appveyor.yml since we've moved to github actionsVedang Manerikar
2025-12-31fix(pdf-view): replace obsolete registerv-make with cl-defstructVedang Manerikar
The registerv-make function was deprecated in Emacs 27.1. Replace it with a proper cl-defstruct (pdf-view-register) and cl-defmethod implementations for register-val-jump-to, register-val-describe, and register-val-insert. Add tests for the register API used by pdf-view: - pdf-view-registerv-make-creates-register: verifies register creation - pdf-view-register-val-insert: verifies insert method works - pdf-view-position-to-register-stores-position: verifies store/retrieve Fixes: #333
2025-12-30fix(pdf-view): fix docstring warnings for native-compVedang Manerikar
Reformat docstrings in pdf-view--bounding-box-to-slice, pdf-document-common-bounding-box, and pdf-view-set-slice-common-bounding-box to be under 80 characters wide and use proper quoting conventions. Ref #333
2025-12-30fix(pdf-util): add declare-function for native-comp warningsVedang Manerikar
Add declare-function statements for image-mode-window-get, image-set-window-vscroll, and image-set-window-hscroll to silence native compilation warnings about image-mode functions. Ref #333
2025-12-30fix(pdf-info): add declare-function for native-comp warningsVedang Manerikar
Add declare-function statements for pdf-util-frame-scale-factor, pdf-util-hexcolor, pdf-util-munch-file, pdf-util-highlight-regexp-in-string, and pdf-view-buffer-file-name to silence native compilation warnings. Ref #333
2025-12-30fix(pdf-cache): add declare-function for native-comp warningsVedang Manerikar
Add declare-function statements for pdf-view-desired-image-size, pdf-view-create-page, and image-mode-window-get to silence native compilation warnings about functions not known to be defined. Ref #333
2025-12-30fix(autobuild): add doas as privilege escalation fallbackVedang Manerikar
Alpine Linux deprecated sudo in favor of doas. Add doas support to exec_privileged() so autobuild works on Alpine without requiring users to install and configure sudo. Fixes #323
2025-12-30fix(pdf-virtual): use correct key function for filtering page linksVedang Manerikar
The pdf-virtual-pagelinks function was passing 'car as the key function to pdf-virtual--filter-edges, which caused a type error when processing links in cropped virtual PDF pages. The link structure is an alist, so the correct key function extracts edges via (cdr (assq 'edges link)). Fixes #327
2025-12-30doc: update README based on common queriesVedang Manerikar
2025-12-30feat: move from appveyor to github actions for testing pdf-toolsVedang Manerikar
2025-12-30fix: attempt 1 fixing the appveyor build fileVedang Manerikar
2025-12-30feat: move from circleci to github actions for testing pdf-toolsv1.2.0Vedang Manerikar
2025-12-30chore: release version 1.2.0Vedang Manerikar
Bump version to 1.2.0 and prepare 1.3.0 development cycle.
2025-12-30doc: update NEWS and prepare for the current releaseVedang Manerikar
2025-12-30fix: wrap next-line-or-page, previous-line-or-page boundary calls in ↵Vedang Manerikar
ignore-errors
2025-12-29feat: support pdf-buffer bookmarks in workspace managersRahguzar
Don't assume that there is a window displaying the buffer when `bookmark-jump` is called. Instead of `bookmark-after-jump-hook` use `window-buffer-change-functions` so that the buffer is actually displayed when the code assuming a window is run. If `window-buffer-change-functions` isn't bound fallback to `bookmark-after-jump-hook`. The window argument for the inserted hook is optional to accommodate both cases. Use `window-buffer-change-functions` only if buffer has not window. Save the same bookmark if it wasn't restored Closes: #188 Author: @aikrahguzar
2025-12-29Add support for Android Emacs using TermuxJohan Widén
Notes from the original PR: The dependencies for android in autobuild can not be installed in pdf-tools-install, they have to be installed manually in Termux. But the dependencies are checked when running autobuild. pdf-tools-install successfully installs epdfinfo in Android Emacs. One can then view pdf files. The shebang in autobuild does not work in Termux, I therefore had to create a separate script "autobuild.android" that in turn executes autobuild. The problem with the shebang is that "env" in Termux is not located at "/usr/bin/env". pdf-tools/Makefile does currently not work in Android Emacs, but it is not needed for running pdf-tools-install. Fixing this will have to be done in a separate pull request, if deemed necessary. Reason: There is yet no consensus for how to implement a command line emacs, to be run in batch mode, in Android Emacs. I have successfully run "make test" in Ubuntu, in the repo feature branch. Running "make server-test" in the master branch fails, so I have not tested this in the feature branch. Closes: #230 Author: @johanwiden
2025-12-29chore: ignore automated PR reviewsVedang Manerikar
2025-12-29feat(midnight-mode): add gamma correction and fix RGB bugsZiv Scully
Add gamma correction options for better contrast control in midnight mode: - pdf-view-midnight-gamma: nonlinearly scale lightness (default 1.0) - pdf-view-midnight-gamma-before-invert: control gamma application order Bug fixes: - Fix RGB normalization (255 not 256) - was causing incorrect background color - Add missing black→foreground fast path (comment existed but code was missing) Closes: #329 Author: @vizziv
2025-12-29feat(pdf-view): enable horizontal mouse wheel scrollingaikrahguzar
Add support for horizontal scrolling using mouse wheel by setting mwheel-scroll-left/right-function to image-mode's scroll functions. Includes boundp checks for compatibility with older Emacs versions. Closes: #234 Author: @aikrahguzar
2025-12-29fix(pdf-annot): refresh stale annotations before operationsbramadams
Fix "epdfinfo: No such annotation: annot-X-Y" error caused by annotations getting out-of-sync between buffer and epdfinfo cache. Add pdf-annot--ensure-fresh function that fetches fresh annotation data from the server before modifying, deleting, or interacting with annotations. Fixes: #246 Closes: #260 Author: @bramadams
2025-12-29feat(pdf-view): enable scroll-other-window supportKen Huang
Add remappings for scroll-up-command and scroll-down-command so that scroll-other-window and scroll-other-window-down work with pdf-view buffers. This addresses a commonly requested feature: - https://github.com/politza/pdf-tools/issues/55 - https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01416.html - https://www.reddit.com/r/emacs/comments/10pkhko/ Closes: #280 Author: @whatacold
2025-12-29feat(server): add Nobara Linux supportGabriel Santos
Add build support for Nobara Linux, a Fedora derivative. - Add os_nobara() detection function (checks /etc/nobara-release) - Uses same packages as Fedora (dnf package manager) - Add to --os argument handling and auto-detection chain Closes: #301 Author: @gs-101
2025-12-28feat: add option to display page labels in mode lineRafael Beirigo
Add two new customization options: - `pdf-view-mode-line-position-prefix`: customize the page prefix (default: "P") - `pdf-view-mode-line-position-use-labels`: show page labels instead of numbers When enabled, displays PDF page labels (Roman numerals, section numbers, etc.) in the mode line with safe fallback to numeric pages. Closes: #331 Author: @rafaelbeirigo
2025-12-28doc: mention cask in installation instructionsCalum Freeman
Update install instructions Include prerequisites instructions make path for pdf-tools cleaner (command can now be run without editing the path)
2025-12-28fix(server): replace tempnam with mkstemp/_tempnamJimmy Yuen Ho Wong
Use platform-appropriate temp file creation: - _tempnam() on Windows (Microsoft-recommended) - mkstemp() on Unix-like systems Fixes #110, addresses #316 Supersedes #235
2025-12-28feat(server): add MSYS2 UCRT64 environment supportSundaram Ramaswamy
Support the newer UCRT64 MSYS2 environment (recommended default per msys2.org). - Add UCRT64 detection to server/autobuild - Fix vasprintf implicit declaration error on Windows (synctex_parser.c) - Update configure.ac for Windows compatibility Fixes #282, #286 Supersedes #295 Tested by multiple users on Windows 10/11 with MSYS2. Co-authored-by: legends2k
2025-12-28feat: set slice to common bounding box (closes #325)Tamas K. Papp
Fixes #325.
2025-12-28fix: use absolute line number in pdf-syncPhilipp G. Haselwarter
`line-number-at-pos` should be called with second argument `absolute` set to `t` in order for `pdf-sync-forward-correlate` to work in buffers with active narrowing.
2025-12-28build: add make target for loaddefsBjörn Kettunen
Imported from magit and adjusted: https://github.com/magit/magit/blob/main/lisp/Makefile#L48 Signed-off-by: Björn Bidar <bjorn.bidar@thaodan.de>
2025-12-28feat: add pdf-metadata-buffer-modeAidan Hall
This makes the metadata buffer consistent with the annotations and outline buffer in having its own major mode, derived from special-mode. I mainly created this because it bugged me that I couldn't press q to close the metadata buffer.
2025-12-28docs: add GNU Guix installationFelix Dumbeck
2025-12-28fix: use kill-current-buffer (closes #287)Michael Hoffman
Fixes #287.
2024-04-29Fix: scroll by arg lines #249manu
2024-04-11Fix defcustom :type argumentsAaron L. Zeng
These variables' default values should match the :type given in their definitions, or else M-x customize will display a warning or may even fail to initialize properly.
2024-04-05Fix: Update PKG_CONFIG_PATH to add glib headersVedang Manerikar
Copying my comment from the Github issue: > The problem is that something seems to have changed in the way brew > installs glib, due to which pkg-config does not find the glib headers. > > To fix this, I have updated the autobuild script to manually modify > the PKG_CONFIG_PATH. This should fix the problem. > > I will test the change and close this issue via the commit once I push > it. You will need to update your version of pdf-tools and then restart > Emacs to trigger the re-build again. (It might take a few hours for > Melpa to pick up the latest version of the pdf-tools) > > I will create a linked issue to investigate a better long-term > solution to this problem. Closes: #269
2024-04-03[pdf-annot] Fix: remove obsolete annotation-properties variablesVedang Manerikar
Replace `pdf-annot-default-markup-annotation-properties` and `pdf-annot-default-text-annotation-properties` with the newer `pdf-annot-default-annotation-properties`, and remove their use in `pdf-annot-merge-alists`. As a side-effect, this fixes broken functionality when providing defaults for reading colors. Closes: #268
2024-03-17Fix: create alias for x-gtk-* variables for Emacs >28Vedang Manerikar
The x-gtk prefix has been dropped in Emacs 29.
2024-03-17Fix pdf-loader-install calling pdf-tools-install with wrong argsAaron L. Zeng